發(fā)布時間:2022-12-5 分類: 行業(yè)資訊
一個網(wǎng)站絕對無法避免404頁面。使用Nginx作為Web服務(wù)器時,有以下集中配置方法。讓我們來看看。
第一種:Nginx自己的錯誤頁面
Nginx訪問靜態(tài)html頁面。當(dāng)此頁面不可用時,Nginx會拋出404,那么如何將其返回給客戶端404?
看下面的配置,在這種情況下你不需要修改任何參數(shù),就可以實(shí)現(xiàn)這個功能。
服務(wù)器{
聽80;
Server_name www.test.com;
Root/var/www/test;
Index index.html index.htm;
位置/{
}
定義錯誤頁碼,如果有相應(yīng)的錯誤頁碼,則轉(zhuǎn)發(fā)它。
錯誤頁面404 403 500 502 503 504 /404.html;
承接上述地點(diǎn)。
位置=/404.html {
放置錯誤頁面的目錄路徑。
Root/usr/share/nginx/html;
}
}
第二種:反向代理的錯誤頁面
如果后臺Tomcat處理錯誤并拋出404,并希望將此狀態(tài)調(diào)用Nginx返回客戶端或重定向到連接,則配置如下:
上游www {
服務(wù)器192.168.1.201: 7777權(quán)重=20 max_fails=2 fail_timeout=30s;
Ip_hash;
}
服務(wù)器{
聽80;
Server_name www.test.com;
Root/var/www/test;
Index index.html index.htm;
位置/{
如果($ request_uri~ *'^/$'){
重寫。*http://www.test.com/index.html重定向;
}
關(guān)鍵參數(shù):打開此變量后,我們可以自定義錯誤頁面。當(dāng)后端返回404時,nginx攔截錯誤定義錯誤頁面
Proxy_intercept_errors on;
Proxy_passhttp://www;
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 404 /404.html;
位置=/404.html {
Root/usr/share/nginx/html;
}
}
第三種:Nginx解析php代碼的錯誤頁面
如果后端是php解析的,你需要添加一個變量
在http部分中添加變量fastcgi_intercept_errors。
指定錯誤頁面:
Error_page 404 /404.html;
位置=/404.html {
Root/usr/share/nginx/html;
}
指定網(wǎng)址:
Error_page 404 /404.html;
Error_page 404=http://www.test.com/error.html;
« 不要害怕更改標(biāo)題導(dǎo)致網(wǎng)站丟失。 | 羅永浩先生退休嗎?網(wǎng)傳被鯊魚紋的科學(xué)技術(shù)解約了 »
周一周五 8:30 - 18:00