今天有个需求,服务器只开放一个端口8080;但是服务器上有三个站点分别对应三个端口8081,8082,8083;客户端通过8080能访问三个不同的站点,决定通过nginx代理映射来完成,具体配置块如下:
server {
listen 8080;
server_name 127.0.0.1;
location /test1 {
proxy_pass http://127.0.0.1:8081;
}
location /test2 {
proxy_pass http://127.0.0.1:8082;
}
location /test3 {
proxy_pass http://127.0.0.1:8083;
}
}
这样在客户端访问127.0.0.1:8080/test3就是对应站点三了;但是这种方案有个问题,就是必须带标识符(test1/2/3);遇见只映射到端口这一级的情况就不好使了,这种情况,除了开放服务器端口,还有啥其他方案不?