我有一臺Ubuntu Node.js服務器與我的http://www.example.com網站一起工作。 我用httpx:// localhost:3000來做我的測試,然後當我將它部署到Ubuntu, 我仍然必須輸入端口(www.example.com:3000)。我被告知實施一個 反向代理來刪除端口3000的要求。我安裝了nginx並添加了以下內容: sudo nano/etc/nginx/sites-available/default ----------刪除全部複製/粘貼----------- ---------------如何從http配置nginx到https
server {
listen 80;
server_name example.com;
location/{
proxy_pass http://67.205.128.21:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
這個工作,並刪除了要求進港3000 後來我發現我需要運行我用SSL /證書應用。 我能夠使nginx更改爲https://www.example.com:3000。 但現在我需要擺脫3000端口的要求。 我嘗試了與http :,使用相同的反向代理服務器設置,但沒有奏效。 如何配置nginx刪除端口3000的要求。 下面就是目前發生的事情,當我在瀏覽器中輸入:
http://67.205.128.21 - Works
http://example.com - Redirects to https://example ; Error: Redirects too many times
http://www.example.com - Redirects to https://example ; Error: Redirects too many times
http://example.com:3000 - Works
http://www.example.com:3000 - Works
當前nginx的configureation:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name example.com www.example.com;
return 301 https://$server_name$request_uri;
location ~ /.well-known {
allow all;
}
# SSL configuration
#
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
include snippets/ssl-example.com.conf;
include snippets/ssl-params.conf;
server_name example.com;
location/{
proxy_pass http://67.205.128.21:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
我現在得到一個「502錯誤的網關」。我對nginx一無所知,只是試圖按照引用的說明操作。我認爲我們正在接近解決方案。我該如何解決這個問題?謝謝,Pat –
好的,那是進步。您的Node.js應用程序是否在端口3000上運行?檢查它正在運行。有可能不是。看看你的NGINX錯誤日誌文件(通常位於'/ var/log/nginx/error.log') –
2016/11/10 12:41:30 [error] 7449#7449:* 42上游提前關閉連接來自上游的響應頭,客戶端:162.200.129.120,服務器:mysite10.com,請求:「GET/HTTP/1.1」,上游:「http://67.205.128.21:3000/」,主機:「mysite10.com」 2016/11/10 12:41:30 [error] 7449#7449:* 42上游過早關閉連接,同時從上游讀取響應頭,客戶端:162.200.129.120,服務器:mysite10.com,請求:「GET /favicon.ico HTTP/1.1「,上游:」http://67.205.128.21:3000/favicon.ico「,主機:」mysite10.com「,引用來源:」https://mysite10.com/「 –