nginx负载均衡器和OAuth
作者:互联网
我正在尝试为两台服务器设置一个nginx loadbalancer / proxy,并在两台服务器上运行OAuth身份验证的应用程序.
当nginx在端口80上运行时,一切运行正常,但是当我将它放在任何其他端口上时,OAuth身份验证失败并显示“无效签名”错误消息.
这是我在nginx.conf中的服务器配置:
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://webservice;
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-Port $server_port;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-FORWARDED-PROTO https;
}
有没有人遇到过类似的问题?
PS:我注意到OAuth领域属性中省略了端口80,但正常添加了其他端口.
解决方法:
这可能与nginx没有任何关系. OAuth(1,而不是2)需要一个签名URL,如果您将其移动到端口81,则为http:// webservice:81.确保您的OAuth代码知道该网站实际上位于端口80而不是81.
更新您的客户端以说明它的端口81或告诉服务器它是80.
用您喜欢的端口替换81
标签:nginx,proxy,oauth,load-balancing 来源: https://codeday.me/bug/20190902/1790367.html