1. 程式人生 > >nginx自定義500,502,504錯誤頁面無法跳轉【轉】

nginx自定義500,502,504錯誤頁面無法跳轉【轉】

header cli targe head href 錯誤 error tom htm

1、自定一個頁面,這個頁面是一個鏈接地址可以直接訪問的。

以下是nginx的配置:

location / {
proxy_pass http://tomcat_app108;
#client_max_body_size 1000m;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
error_page 502 503 504 http://www.cbd.com;


index index.html;
}

註:當出現50x的錯誤的時候,域名會發生變化,會跳轉到這個 http://www.cbd.com域名上去

2、自定義一個頁面,當發生50x的錯誤的時候,域名不變

以下是nginx配置:

location / {
proxy_pass http://tomcat_app108;
#client_max_body_size 1000m;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
error_page 502 503 504 /tips;
index tips.html index.html;

location /tips {
root /opt/www/test/;
index tips.html;
}

註:當發生50x的錯誤的時候,會去尋找/tips的信息,然後匹配到下面location /tips這個location的內容,跟著會去到這個/opt/www/test/目錄下尋找相關頁面,這個目錄下面有tips這個目錄,tips目錄下面有tips.html這個文件,這樣一步一步就能找到自定義的錯誤頁面了

比如域名是www.cbd.com,訪問一下www.cbd.com/tips如果能訪問到錯誤頁面說明配置沒有問題;

驗證:當服務器端發生500,502,503錯誤時候,會自動跳轉到www.cbd.com/tips

註意:若發生錯誤沒有跳轉,需要詳細看一下一個參數:

proxy_intercept_errors on;

當上遊服務器響應頭回來後,可以根據響應狀態碼的值進行攔截錯誤處理,與error_page 指令相互結合。用在訪問上遊服務器出現錯誤的情況下。

以下是完整的配置:

location / {
proxy_pass http://tomcat_app108;
#client_max_body_size 1000m;
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_intercept_errors on;

error_page 502 503 504 /tips;
index tips.html index.html;

location /tips {
root /opt/www/test/;
index tips.html;
}

轉自:

nginx自定義500,502,504錯誤頁面無法跳轉-布布扣移動版-m.bubuko.com
http://m.bubuko.com/infodetail-1933746.html

nginx自定義500,502,504錯誤頁面無法跳轉【轉】