nginx 配置 非80 的其他 端口
如果nginx的监听端口不是默认的80端口,改为其他非80端口后,后端服务tomcat中的request.getServerPort()方法无法获得正确的端口号,仍然返回到80端口。在response.sendRedirect()时,客户端可能无法获得正确的重定向URL。
所以正确的配置:
1 server { 2 3 listen 8080; 4 5 server_name localhost; 6 7 location / { 8 9 proxy_pass http://192.168.1.100:8081; 10 11 proxy_set_header Host $host:8080; 12 13 proxy_set_header X-Real-IP $remote_addr; 14 15 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 16 17 } 18 19 }
这里主要注意 配置文件的第三行
3 listen 8080;
第9行是你服务的地址
还要注意第11行
11 proxy_set_header Host $host:8080;
这两个地方要保持一致