2014-03-24 73 views
0

我花了很多時間試圖完成這項工作,因爲它正在切入實際的開發時間。我正在嘗試在我的網站example.comexample2.com上設置兩個域名,但在瀏覽器中導航到域名時最多會生成502個域名。節點+ Nginx反向代理從不運行

etc/nginx/nginx.conf,我從朋友那裏得到了:

user root; 
worker_processes 4; 


events { 
     worker_connections 768; 
} 

http { 

     sendfile on; 
     tcp_nopush on; 
     tcp_nodelay on; 
     keepalive_timeout 65; 
     types_hash_max_size 2048; 

     server_names_hash_bucket_size 64; 

     include /etc/nginx/mime.types; 
     default_type application/octet-stream; 

     access_log /var/log/nginx/access.log; 
     error_log /var/log/nginx/error.log; 


     gzip on; 
     gzip_disable "msie6"; 

     include /etc/nginx/sites-enabled/*; 
} 

etc/nginx/sites-available/sites,我也從一個朋友得到:

server { 
    server_name example.com; 
    # proxy pass to nodejs 
    location/{ 
     proxy_pass http://127.0.0.1:9001/; 
    } 
} 
server { 
    server_name example2.com; 
    # proxy pass to nodejs 
    location/{ 
     proxy_pass http://127.0.0.1:8000/; 
    } 
} 

我在圈子裏已經工作,並嘗試了許多不同所有配置都失敗,這個特定的配置會導致兩個站點出現網關錯誤502。

我從來沒有能夠得到這個工作,我不知道爲什麼,第二套眼睛會非常有幫助。

回答

1

在你的nginx配置中沒有任何看起來錯誤的東西。如果nginx嘗試轉發連接的節點服務器實際上並未在您的配置中指定的端口上偵聽,您將獲得502狀態碼。

要驗證它是否正確偵聽,可以使用任何可以連接到端口的工具來執行HTTP GET。因此,例如:

$ curl http://127.0.0.1:9001/ 

wget也可用於此目的。如果連接被拒絕,您的節點服務器可能根本沒有運行,或者配置爲偵聽不同的端口。

+0

哦,就是這樣!節點服務器錯誤,並且沒有我注意就關閉了。謝謝! –

+0

太棒了!我正在做你的問題刪除我的意見,因爲他們不再有用。 – Louis