腾讯 CLB下多级 Nginx 服务直接出现302无限跳转的问题
问题
问题是因为第一次上 CLB 服务进行代理,在多级 Nginx 代理中因协议不一致导致的 HTTPS 显示不正常,导致服务无法判断协议头出现异常重复请求。
原因分析
通常的架构是内部的 nginx 之间采用的是 http 进行通讯,clb 入口配置 https,二级以及以上的 nginx 则是配置 http。
因为 CLB 这边只是简单配置了 https,因此只能通过下一个 NGINX 配置与日志进行排查。
首先查看配置与这边生产配置一致。
location /cas { proxy_pass http://172.25.8.2:56781; proxy_redirect off; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Scheme $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } |
但通过访问后,异常出现很多302跳转请求,如下图: