Nginx - 记一次Nginx端口转发失败案例

举报
小工匠 发表于 2021/09/10 23:11:40 2021/09/10
【摘要】 文章目录 项目场景:问题描述:原因分析:解决方案: 项目场景: 测试环境没有F5 ,直接配置的是Nginx的地址,且Nginx监听的默认端口80 。 但生产环境F5后面配置了4个Ng...

在这里插入图片描述

项目场景:

测试环境没有F5 ,直接配置的是Nginx的地址,且Nginx监听的默认端口80 。 但生产环境F5后面配置了4个Nginx , F5端口开放了 8585端口 ,用于将Http请求转发到Nginx上 .


问题描述:

使用了测试环境的Nginx的配置文件,结果通过F5的ip+port(8585)访问应用时,好多ajax请求错误


原因分析:

经排查端口都转发到了80上,可以推断是F5到Nginx这一层 是没有问题的,直接通过Nginx访问应用,好多应用也是跳转到了80上,因此怀疑是Nginx的配置不正确导致的。


解决方案:

如果使用的不是Nginx默认的80端口,比如我这里的8585 ,转发请求时有可能会丢失端口号,这里只要在$host后面加上:$server_port;即可

在HTTP请求的server节点中

 proxy_set_header   Host             $host

  
 
  • 1

调整为

 proxy_set_header   Host             $host:$server_port;

  
 
  • 1

reload 或者重启 nginx ,问题解决。

文章来源: artisan.blog.csdn.net,作者:小小工匠,版权归原作者所有,如需转载,请联系作者。

原文链接:artisan.blog.csdn.net/article/details/108427392

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。