2
我正在嘗試爲兩臺服務器設置一個nginx負載平衡器/代理,同時在這兩臺服務器上運行OAuth身份驗證應用。 當端口80上運行nginx時,一切運行良好,但是當我將其放在任何其他端口上時,OAuth身份驗證失敗並顯示「無效簽名」錯誤消息。nginx負載均衡器和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:我注意到端口80從OAuth領域屬性中省略,但其他端口正常添加。
應用是在8180個端口上運行,而直接的OAuth請求,這些端口通過精細更換81。我試圖在第三臺服務器端口8000上創建一個LB. 這對Apache LB起作用,但另一個問題迫使我嘗試使用nginx。 – ddario 2012-03-14 20:44:41
問題出在'主機'頭部。爲了使OAuth正常工作,它還需要包含端口。 這個技巧: proxy_set_header Host $ host:$ server_port; – ddario 2012-03-14 21:02:12
還沒有嘗試過,但這是一個goooood領導:) Thx ddario。 – nolazybits 2013-06-07 04:23:39