納悶著主題一直都有404.php的文件,可就為什么不會(huì)跳404頁(yè)面呢?有可能是寶塔的nginx配置問(wèn)題,可以參考。
步驟一
選擇要修改的網(wǎng)站–設(shè)置–配置文件

注意修改的位置上面有注釋?zhuān)?ERROR-PAGE-START 錯(cuò)誤頁(yè)配置,可以注釋、刪除或修改
#ERROR-PAGE-START //錯(cuò)誤頁(yè)配置,可以注釋、刪除或修改 #error_page 404 /404.html; //這段代碼要注釋掉 前面加# #error_page 502 /502.html; //這段代碼要注釋掉 前面加# #ERROR-PAGE-ENDru
如圖

步驟二:
采用寶塔面板部署wordpress時(shí)。會(huì)在網(wǎng)站根目錄下添加兩個(gè)文件,分別時(shí)index.html和404.html,將上述文件刪掉即可。
補(bǔ)充
- 原文來(lái)源:詳情
NGINX 配置404錯(cuò)誤頁(yè)面轉(zhuǎn)向
什么是404頁(yè)面
如果碰巧網(wǎng)站出了問(wèn)題,或者用戶(hù)試圖訪問(wèn)一個(gè)并不存在的頁(yè)面時(shí),此時(shí)服務(wù)器會(huì)返回代碼為404的錯(cuò)誤信息,此時(shí)對(duì)應(yīng)頁(yè)面就是404頁(yè)面。404頁(yè)面的默認(rèn)內(nèi)容和具體的服務(wù)器有關(guān)。如果后臺(tái)用的是NGINX服務(wù)器,那么404頁(yè)面的內(nèi)容則為:404 Not Found?
為什么要自定義404頁(yè)面
在訪問(wèn)時(shí)遇到上面這樣的404錯(cuò)誤頁(yè)面,我想99%(未經(jīng)調(diào)查,估計(jì)數(shù)據(jù))的用戶(hù)會(huì)把頁(yè)面關(guān)掉,用戶(hù)就這樣悄悄的流失了。如果此時(shí)能有一個(gè)漂亮的頁(yè)面能夠引導(dǎo)用戶(hù)去他想去的地方必然可以留住用戶(hù)。因此,每一個(gè)網(wǎng)站都應(yīng)該自定義自己的404頁(yè)面。
NGINX下如何自定義404頁(yè)面
IIS和APACHE下自定義404頁(yè)面的經(jīng)驗(yàn)介紹文章已經(jīng)非常多了,NGINX的目前還比較少,為了解決自家的問(wèn)題特地對(duì)此作了深入的研究。研究結(jié)果表明,NGINX下配置自定義的404頁(yè)面是可行的,而且很簡(jiǎn)單,只需如下幾步:
1.創(chuàng)建自己的404.html頁(yè)面?
2.更改nginx.conf在http定義區(qū)域加入:?fastcgi_intercept_errors on;?
3.更改nginx.conf(或單獨(dú)網(wǎng)站配置文件,例如在nginx ->?sites-enabled下的站點(diǎn)配置文件 )
中在server 區(qū)域加入:?error_page 404?/404.html?或者?error_page 404 =http://www.xxx.com/404.html
4.更改后重啟nginx,,測(cè)試nginx.conf正確性: /opt/nginx/sbin/nginx –t?
#502 等錯(cuò)誤可以用同樣的方法來(lái)配置。??
error_page?500 502 503 504?/50x.html;?
注意事項(xiàng):
1.必須要添加:fastcgi_intercept_errors on; 如果這個(gè)選項(xiàng)沒(méi)有設(shè)置,即使創(chuàng)建了404.html和配置了error_page也沒(méi)有效果。fastcgi_intercept_errors 語(yǔ)法: fastcgi_intercept_errors on|off 默認(rèn): fastcgi_intercept_errors off 添加位置: http, server, location 默認(rèn)情況下,nginx不支持自定義404錯(cuò)誤頁(yè)面,只有這個(gè)指令被設(shè)置為on,nginx才支持將404錯(cuò)誤重定向。這里需要注意的是,并不是說(shuō)設(shè)置了fastcgi_intercept_errors on,nginx就會(huì)將404錯(cuò)誤重定向。在nginx中404錯(cuò)誤重定向生效的前提是設(shè)置了fastcgi_intercept_errors on,并且正確的設(shè)置了error_page這個(gè)選項(xiàng)(包括語(yǔ)法和對(duì)應(yīng)的404頁(yè)面)?
2.不要出于省事或者提高首頁(yè)權(quán)重的目的將首頁(yè)指定為404錯(cuò)誤頁(yè)面,也不要用其它方法跳轉(zhuǎn)到首頁(yè)。?
3.自定義的404頁(yè)面必須大于512字節(jié),否則可能會(huì)出現(xiàn)IE默認(rèn)的404頁(yè)面。例如,假設(shè)自定義了404.html,大小只有11個(gè)字節(jié)(內(nèi)容為:404錯(cuò)誤)。