我已将 nginx 配置为将 https 流量代理到在同一台机器上运行的 http 服务器。
当我将 nginx 配置为从 https 端口 443 侦听/代理时,一切正常。但我真的想在非标准端口上侦听。当我配置一个非标准端口时,nginx 收到请求并将其发送到我的 http 服务器,正如它应该的那样,但服务器正在响应一个 HTTP 重定向回浏览器,告诉它重定向到'https://server. com/someurl”。我的意思是重定向 url 看起来不错,只是它缺少正确的端口。我是否缺少需要在代理中设置的 HTTP 标头?
具体来说,我正在运行 Tracks 的 http 实例;http://getontracks.org。如果重要的话。
我的(在标准端口上工作)nginx 服务器配置:
location /{
proxy_pass http://localhost:50000;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
}