现象:nginx在使用非80端口做反向代理时,浏览器访问发现返回302错误

详细现象如下:

浏览器请求登录页:

输入账号密码点击登录:

很明显登录后跳转的地址少了端口号。

原因:proxy.conf文件中定义的proxy_set_header Host $host;

意思是nginx接收到浏览器请求后修改请求头中的host信息,然后再把请求转发给后端真实服务节点,服务节点响应后把返回信息传送给nginx,而由于nginx是使用的非80端口做代理,后端服务节点却依然以为nginx是80端口,所以响应信息没有正确的返回给nginx的非80端口

解决:修改为proxy_set_header Host $host:$server_port;即可。

这样就把请求头中的host修改为nginx的非80端口了,后端服务节点就知道响应应该返回的正确nginx代理端口

原文出处:

https://www.cnblogs.com/sandyyeh/p/10736342.html

最新文章

  1. 好好了解一下Cookie
  2. NodeJs并发异步的回调处理
  3. JavaWeb学习笔记——javabean
  4. 获取dll中根目录
  5. C#线程间同步无法关闭
  6. PHP isset()与empty()的区别
  7. margin collapse 之父子关系的DIV
  8. Servlet小示例:jsp页面提交信息Servlet接收并打印输出
  9. 局部更新listview的问题(只更新某个item)
  10. jQuery的map()与jQuery.map()总结
  11. J2EE基础总结(1)——J2EE入门
  12. 学DSP(一):开始
  13. C++默认参数与函数重载 注意事项
  14. Android它SDK Manager无法更新终极解决方案
  15. IntelliJ IDEA如何设置新建类时,自动注释作者信息和日期时间
  16. 初学c# -- 开始学directx
  17. error launching installer-最新版Win 10 解决方案
  18. activiti主要组件解析
  19. [OpenGL] 斯坦福兔子与显示列表
  20. 20145322何志威 Exp8 Web基础

热门文章

  1. clearfix:after 的用法
  2. 第四周总结 and 实验二
  3. fidder抓包工具使用方法,完整流程
  4. The Frog's Games
  5. 分布式均匀算法--hash性一致算法--hash slot(转)
  6. read、readline 和 readlines 的区别?
  7. 细说C#的ReferenceEquals,Equals和==比较运算符
  8. java中遍历实体类属性和类型,属性值
  9. input 限制 中文输入
  10. 在XCode中使用XCTest