nginx反向代理监听非80端口造成的端口丢失解决方案-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

nginx反向代理监听非80端口造成的端口丢失解决方案

简介:

今天,配置nginx反向代理时遇到一个问题,当设置nginx监听80端口时转发请求没有问题。但若设置为监听其他端口,就一直跳转不正常;如,访问欢迎页面时应该是重定向到登录页面,在这个重定向的过程中端口丢失了。

这里给出一个简短的解决方案,修改nginx的配置文件。

一、配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
  # the 8111 port
   server {
       listen       8111;
       server_name  wetest.cn;
        
       location /honetest {
         proxy_pass http://11.42.30.30:8080/honetest;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header Host $host:$server_port; #这里是重点,这样配置才不会丢失端口 
       }
       location = /50x.html {
           root   html;
       }
   }


二、产生原因:

nginx没有正确的把端口信息传送到后端,没能正确的配置nginx,下面这行是关键

proxy_set_header Host $host:$server_port; 这一行是关键。


      本文转自ling118 51CTO博客,原文链接:http://blog.51cto.com/meiling/1978395,如需转载请自行联系原作者




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: