NGINX服務(wù)器配置404錯(cuò)誤頁面轉(zhuǎn)向的方法
什么是404頁面
如果碰巧網(wǎng)站出了問題,或者用戶試圖訪問一個(gè)并不存在的頁面時(shí),此時(shí)服務(wù)器會(huì)返回代碼為404的錯(cuò)誤信息,此時(shí)對(duì)應(yīng)頁面就是404頁面。404頁面的默認(rèn)內(nèi)容和具體的服務(wù)器有關(guān)。如果后臺(tái)用的是NGINX服務(wù)器,那么404頁面的內(nèi)容則為:404 Not Found
為什么要自定義404頁面
在訪問時(shí)遇到上面這樣的404錯(cuò)誤頁面,我想99%(未經(jīng)調(diào)查,估計(jì)數(shù)據(jù))的用戶會(huì)把頁面關(guān)掉,用戶就這樣悄悄的流失了。如果此時(shí)能有一個(gè)漂亮的頁面能夠引導(dǎo)用戶去他想去的地方必然可以留住用戶。因此,每一個(gè)網(wǎng)站都應(yīng)該自定義自己的404頁面。
NGINX下如何自定義404頁面
IIS和APACHE下自定義404頁面的經(jīng)驗(yàn)介紹文章已經(jīng)非常多了,NGINX的目前還比較少,為了解決自家的問題特地對(duì)此作了深入的研究。研究結(jié)果表明,NGINX下配置自定義的404頁面是可行的,而且很簡單,只需如下幾步:
1.創(chuàng)建自己的404.html頁面
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,,測試nginx.conf正確性: /opt/nginx/sbin/nginx –t
#502 等錯(cuò)誤可以用同樣的方法來配置。
error_page 500 502 503 504 = /50x.html;
注意事項(xiàng):
1.必須要添加:fastcgi_intercept_errors on; 如果這個(gè)選項(xiàng)沒有設(shè)置,即使創(chuàng)建了404.html和配置了error_page也沒有效果。fastcgi_intercept_errors 語法: fastcgi_intercept_errors on|off 默認(rèn): fastcgi_intercept_errors off 添加位置: http, server, location 默認(rèn)情況下,nginx不支持自定義404錯(cuò)誤頁面,只有這個(gè)指令被設(shè)置為on,nginx才支持將404錯(cuò)誤重定向。這里需要注意的是,并不是說設(shè)置了fastcgi_intercept_errors on,nginx就會(huì)將404錯(cuò)誤重定向。在nginx中404錯(cuò)誤重定向生效的前提是設(shè)置了fastcgi_intercept_errors on,并且正確的設(shè)置了error_page這個(gè)選項(xiàng)(包括語法和對(duì)應(yīng)的404頁面)
2.不要出于省事或者提高首頁權(quán)重的目的將首頁指定為404錯(cuò)誤頁面,也不要用其它方法跳轉(zhuǎn)到首頁。
3.自定義的404頁面必須大于512字節(jié),否則可能會(huì)出現(xiàn)IE默認(rèn)的404頁面。例如,假設(shè)自定義了404.html,大小只有11個(gè)字節(jié)(內(nèi)容為:404錯(cuò)誤)。
自定義nginx 404錯(cuò)誤頁面是提高用戶體驗(yàn)的一個(gè)細(xì)節(jié),如果是正規(guī)站,我們就必須做好它。你可以對(duì)每個(gè)網(wǎng)站的錯(cuò)誤頁面分別設(shè)置,也可以設(shè)置一個(gè)全局的404頁面。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
配置nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)請(qǐng)求到外網(wǎng)的實(shí)現(xiàn)示例
本文主要介紹了配置nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)請(qǐng)求到外網(wǎng)的實(shí)現(xiàn)示例,通過nginx配置代理實(shí)現(xiàn)內(nèi)網(wǎng)對(duì)外網(wǎng)接口數(shù)據(jù)的獲取,涉及nginx安裝、配置SSL、日志設(shè)置和錯(cuò)誤排查,感興趣的可以了解一下2024-10-10
使用Nginx+Tomcat實(shí)現(xiàn)負(fù)載均衡的全過程
很多用到nginx的地方都是作為靜態(tài)伺服器,這樣可以方便緩存那些靜態(tài)文件,比如CSS,JS,html,htm等文件,下面這篇文章主要給大家介紹了關(guān)于使用Nginx+Tomcat實(shí)現(xiàn)負(fù)載均衡的相關(guān)資料,需要的朋友可以參考下2022-05-05
使用nginx+tomcat+keepalived實(shí)現(xiàn)高可用的詳細(xì)步驟
這篇文章主要介紹了nginx+tomcat+keepalived實(shí)現(xiàn)高可用,包括安裝nginx服務(wù)的步驟,詳細(xì)介紹了安裝keepalived的方法,對(duì)nginx+tomcat+keepalived高可用相關(guān)知識(shí)感興趣的朋友一起看看吧2022-03-03
關(guān)于nginx報(bào)錯(cuò)405?not?allowed解決方法總結(jié)
這篇文章主要給大家介紹了關(guān)于nginx報(bào)錯(cuò)405?not?allowed解決方法的相關(guān)資料,nginx遇到post請(qǐng)求靜態(tài)文件會(huì)得到405錯(cuò)誤,文中通過代碼介紹的非常詳細(xì),也給出了推薦方法,需要的朋友可以參考下2023-10-10
linux安裝nginx和前端部署vue項(xiàng)目全過程(實(shí)測react項(xiàng)目也可)
這篇文章主要介紹了如何將前端項(xiàng)目打包并部署到服務(wù)器上,包括使用nginx進(jìn)行配置和啟動(dòng)等步驟,文中通過代碼以及圖文介紹的非常詳細(xì),需要的朋友可以參考下2024-11-11
升級(jí)nginx支持HTTP/2服務(wù)端推送的方法
這篇文章主要介紹了升級(jí)nginx支持HTTP/2服務(wù)端推送的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-05-05
前端將項(xiàng)目部署到服務(wù)器(Nginx)的完整步驟
最近寫了一個(gè)項(xiàng)目,需要進(jìn)行手機(jī)上測試,下面就需要前端自己將項(xiàng)目進(jìn)行部署,這篇文章主要給大家介紹了關(guān)于前端將項(xiàng)目部署到服務(wù)器(Nginx)的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01

