加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

ruby-on-rails – Nginx代理https到非标准端口的http?

发布时间:2020-12-13 21:24:36 所属栏目:Nginx 来源:网络整理
导读:我将nginx配置为将HTTPS流量代理到在同一台机器上运行的http服务器. 当我配置nginx从https端口443监听/代理时,一切都可以正常工作.但我真的想在非标准端口上侦听.当配置非标准端口时,nginx会收到该请求并将其发送到我的http服务器,应该是这样,但服务器正在使

我将nginx配置为将HTTPS流量代理到在同一台机器上运行的http服务器.

当我配置nginx从https端口443监听/代理时,一切都可以正常工作.但我真的想在非标准端口上侦听.当配置非标准端口时,nginx会收到该请求并将其发送到我的http服务器,应该是这样,但服务器正在使用HTTP重定向回到浏览器,该浏览器会将其重定向到“https://服务器”. com / someurl“我的意思是重定向网址看起来不错,除了它缺少正确的端口.我错过了一个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;
}
最佳答案
这个问题源自于这一行 –

proxy_set_header Host $host;

您的Web服务器(WEBrick)在发出重定向响应时依次包括此.

您可以将其更改为包括非标准端口 –

proxy_set_header Host $host:$server_port;

这应该解决这个问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读