2014-12-23 237 views
0

這是我的配置:nginx反向代理到https?

server { 
     listen 80; 
     server_name prettylogs.com; 
     return 301 https://$server_name$request_uri; 
} 

server { 
     listen 443 ssl; 

     server_name prettylogs.com; 
     location/{ 
       proxy_pass https://localhost:9200/; 
     } 
} 

當我訪問prettylogs.com,我得到重定向到https://prettylogs.com,但該請求不會到達從nginx的我的節點服務器。如果我直接進入端口,節點服務器正在運行並顯示。

任何想法?

+0

順便說一句,是否有任何理由在本地主機連接有SSL開銷? –

+0

不是我能想到的。我的問題是,我使用nginx替換一個簡單的節點代理和我的代理,然後將ssl的東西交給我的主要快遞應用程序。由於nginx正在處理ssl本身,所以我應該將我的快速應用程序切換爲不使用ssl,是嗎? – Joren

+0

這取決於。可能是ssl開銷不值得努力去除它。 –

回答

1

您的nginx conf文件可能有問題。

proxy_set_header Host    $proxy_host; 

它應該有

proxy_set_header Host    $host; 

嘗試使用此更新的配置,您的問題將得到解決。

+0

試過了。不用找了。這是我的nginx.conf文件:https://gist.github.com/Jorenm/7b918c303ff2f71952c2 – Joren

1

原來,ssl_certificate和ssl_certificate_key都需要這個爲我工作。我沒有在任何地方看到這個,所以可能會有一些否定這一點的設置,但是這固定了它。