nginx redirect ignore port 两层nginx跳转忽略了端口


问题:

    两层nginx做代理,第一层:nginx:将9087->代理到80端口,第二层:将80端口->流量打到我们的代码上,结果在代码中拿到的链接不带9087端口,则代码中发生跳转的时候,会不带端口,导致跳转出错?

原因:

    因为第一层将9087打到80端口上,第二层拿到的请求链接的80端口是nginx默认端口,被nginx忽略了,如果不发生跳转,没有问题,一般发生跳转,不论是相对还是绝对路径,都不会带9087端口号,这就导致跳转出错

 

解决:

    既然已知是被nginx忽略了端口号,那改代码就无济于事,那就改nginx配置,让他过来的时候把端口号带上,一句简单的配置即可解决

    proxy_set_header Host $http_host;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM