Nginx設定404錯誤頁面跳轉

2021-10-25 07:04:02 字數 2759 閱讀 3170

linux版本:centos 7.4

nginx版本:nginx-1.14.0.tar.gz

nginx安裝目錄參考: /usr/local/nginx則是我的安裝目錄

說明:我linux伺服器上已經在tomcat上部署了乙個專案,使用nginx進行的**,

訪問專案不存在的頁面時,出現的是nginx預設的404頁面,現在我配置我自己寫的404頁面進行提示

注意:網上大多數部落格寫的都只有一種情況,要麼就是使用 proxy_intercept_errors on;, 要麼就是使用fastcgi_intercept_errors on; 沒有說明這兩種的區別, 還有也沒有說明404.html檔案應該放在伺服器的什麼位置,我在此處優先進行說明, 如果你本地有部署專案,優先使用proxy_intercept_errors on;這個配置進行嘗試, 如果沒有部署專案,則使用fastcgi_intercept_errors on; 這個進行嘗試,也可以兩個全加上, 其次404.html檔案放在nginx安裝目錄的html資料夾下
error_page配置的是http這種的網路位址
在http下配置 proxy_intercept_errors on;

}

error_page配置的是本地伺服器的頁面位址。

- 說明:我的404.html頁面檔案放在nginx安裝目錄下的html資料夾內

在http下配置 proxy_intercept_errors on;

# 這種方式和上面的方式均可起作用,只需要選擇一種即可,本文中沒有進行進一步注釋

error_page 404 /404.html;

location = /404.html

# 以下這幾種網上比較多的方式,均試過,無法跳轉正確頁面或不起跳轉作用

#error_page 404 404.html;

#error_page 404 /404.html;

#error_page 404 html/404.html;

#error_page 404 /html/404.html;

#error_page 404 /usr/local/nginx/html/404.html;

#error_page 404 usr/local/nginx/html/404.html;

}可以配置多種返回碼的多個錯誤頁面,也可以同時配置多個錯誤碼跳轉乙個頁面,可以同時存在 如下所示

server 

location /upload

#error_page 404 /404.html;

# 錯誤頁面的種類也可以是多個

# 這裡的錯誤碼可以是多個

error_page 500 502 503 504 /50x.html;

location = /50x.html

# 這裡是錯誤嗎也可以是乙個

error_page 404 /404.html;

location = /404.html

}

當我把我的tomcat伺服器關掉時,我伺服器就沒有執行專案了,這時在訪問頁面,則上述配置沒有產生效果,此時則需要新增乙個配置

fastcgi_intercept_errors on;

在http下配置 fastcgi_intercept_errors on;

}

proxy_intercept_errors on;這個配置不一定需要放在http下面,也可以是server下,也可以是server的location下
server 

location /upload

error_page 500 502 503 504 /404.html;

error_page 404 /404.html;

location = /404.html

}

配置proxy_intercept_errors on; 時配置的錯誤頁面表示的是當伺服器返回的狀態碼為我們配置的狀態碼時,我們才進行的頁面跳轉。如:伺服器中沒有***x.do介面時,我們訪問了這個介面,配置了

proxy_intercept_errors on;則也會進行頁面跳轉

如果伺服器中沒有開啟服務,則配置proxy_intercept_errors on; 無用,則需要再新增fastcgi_intercept_errors on; 配置, 這樣的話,出現頁面錯誤時也會進行跳轉
參考1

Nginx 配置 404 錯誤頁面

1 找到 nginx 配置檔案 由於我的 自定義了網域名稱,我的配置檔案在 usr local nginx conf vhost 下 的 www.com.conf 將 server 區域中的 error page 404 404.html 前的 去掉 沒有的話則加上 error page 404 4...

NGINX 配置404錯誤頁面轉向

什麼是404頁面 如果碰巧 出了問題,或者使用者試圖訪問乙個並不存在的頁面時,此時伺服器會返回 為404的錯誤資訊,此時對應頁面就是404頁面。404頁面的預設內容和具體的伺服器有關。如果後台用的是nginx伺服器,那麼404頁面的內容則為 404 not found 為什麼要自定義404頁面 在訪...

NGINX 配置404錯誤頁面轉向

什麼是404頁面 如果碰巧 出了問題,或者使用者試圖訪問乙個並不存在的頁面時,此時伺服器會返回 為404的錯誤資訊,此時對應頁面就是404頁面。404頁面的預設內容和具體的伺服器有關。如果後台用的是nginx伺服器,那麼404頁面的內容則為 404 not found nginx 0.8.6 為什麼...