多个服务使用一个端口

来源:3-14 Nginx作为代理服务_配置语法及反向代理场景

慕妹5495383

2017-08-11

有elasticsearch和django分别完成的两个服务,一个开在本机9200一个开在本机8001,但对公网只有80一个端口接受http请求。在公网用客户端时访问都是通过同一个域名服务转发到本机80端口的,servername相同,应该如何配置nginx判断在80端口监听到的请求哪一个转发到localhost:8001哪一个转发到localhost:9200呢?

写回答

1回答

Jeson

2017-08-11

后端两个服务(9200、8001)对外需要共用一个域名和端口,这个时候就常见的、也是简单的实现方式就是基于不同的location 对访问路径作匹配,然后跳转到不同的后端服务。

    location /elasticsearch {

        proxy_pass http://127.0.0.1:9200/;

         include proxy_params;

    }


    location /django {

        proxy_pass http://127.0.0.1:8001/;

         include proxy_params;

    }

供参考

0
6
Jeson
回复
慕妹5495383
那发我url forwarding这个配置我看下,最好截图出来
2017-08-12
共6条回复

Nginx入门到实践-Nginx中间件应用+搭建Webserver架构

中间件、负载均衡、应用层安全防护、动静分离、Nginx+LUA开发等

4183 学习 · 908 问题

查看课程