nginx – 代理时如何转发HTTP端口的值?
|
所以,我有一个nginx反向代理到rails服务器. rails服务器具有oauth登录,并且执行它的lib使用“X-Forwarded-Host”构建回调URL.问题是,当nginx正在侦听80以外的端口时,回调URL未正确格式化.查看配置我意识到这是因为它从’X-Forwarded-Host’构建了URL,而我使用的配置中没有包含端口.我已将配置修改为以下内容以使其工作:
我的问题是,’X-Forwarded-Host’实际定义为什么? Nginx将’Http-Host’视为主机端口,但我发现网络周围有时X-Forwarded-Host仅被视为主机,并且似乎有一个名为’X-Forwarded-Port’的变量有时使用但我在nginx文档中找不到任何关于它的东西,除了在日志中有一个可用于打印的变量称为’proxy-port’,但这是转发到的端口,而不是它接受的端口连接(对我来说没什么,因为我使用的是unix套接字).什么是正确的解决方案? Nginx不允许我手动使用X-Forwarded-Port标头,我甚至不确定是否应该这样做.看看网络,似乎其他http服务器以不同的方式处理这种情况,例如: > https://github.com/nodejitsu/node-http-proxy/issues/341 一些相关链接: >有人断言Http-Host的定义: 这会将所有请求映射到http:// app:80,并将响应标题“Location”从http:// app:80更改为http:// app:8081. (编辑:长春站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ruby-on-rails-使用Nginx和Puma在Ruby on Rails应用程序上启
- Nginx在子文件夹中有多个站点
- apache-2.2 – 验证返回码:21(无法验证第一个证书)使用cro
- 插件 – 我的nginx模块可以在主进程中建立连接吗?
- nginx条件Accept头
- 在Heroku上部署Django/Static文件的正确方法
- ruby-on-rails-避免对服务器配置进行硬编码
- PHP-访问控制器时,nginx上Codeigniter出现404错误
- /etc/nginx/nginx.conf:76中的未知指令“ rtmp”
- Cookies-fastcgi缓存登录用户的方法缓存,并为每个用户自定义
