node - nginx 當反向伺服器掛掉時的策略
黄舟
黄舟 2017-05-16 17:15:11
0
2
445

做 node 同構時,現在想實作讓伺服器掛調的時候,直接讓 nginx 回傳靜態資源,請問該如何設定 nginx 呢?

例如訪問 a.xx.com/test.html,
當 node 伺服器掛掉後,直接讓nginx回傳test.html的靜態文件,這個有辦法實現嗎?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回覆(2)
曾经蜡笔没有小新

使用proxy_intercept_errors + error_page 可以解決您的問題。
error_page 504 /$uri
504即proxy出現逾時的情況

phpcn_u1582

我們原來在做發布的時候遇到過你的這個問題,當我們在做發布的時候需要停掉服務
但是希望有個友好的頁面提示用戶我們正在服務請稍後再試。我們利用nginx的負載
均衡,啟兩個服務,10.0.0.2跑得是提示用戶我們正在發版本的提示用戶用的服務

upstream my_server {                                                         
    server 10.0.0.1:8080 weight=10;
    server 10.0.0.2:8080 backup;   //当其它服务器挂掉的时候才会负载到这台                                             
    keepalive 2000;
}
server {
    listen       80;                                                         
    server_name  www.test.com;                                               

    location / {
        proxy_pass http://my_server;
    }
}

不過我們現在已經在利用slb做G/B發不了,發布期間服務不會停。希望能幫到你,nginx我也不是很精通,希望有更巧妙的方法解決這個問題,其實如果自己寫Lua腳本的話就能做一些定制化的功能了,要考慮下你們的團隊和時間,覺得可以做的話其實是最好的。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板