nginx自定義404頁面


主要是記錄踩過的一個坑。。。

nginx要自定義404和500的頁面,但是error_page 配置沒有生效,沒有正常跳轉。

error_page  404  /404.html;
error_page  500 503 502  /500.html;
location = /500.html {    
            root html;
        }
location = /404.html {
            root html;
        }

這是因為我們的靜態資源在上游服務器上,而不是當前nginx直接提供。

 

nginx proxy 啟用自定義錯誤頁面:

語法:proxy_intercept_errors on | off;

默認值:

proxy_intercept_errors off;

上下文:http, server, location

當被代理的后端服務器的響應狀態碼大於等於300時,決定是否直接將響應發送給客戶端,亦或將響應轉發給nginx由error_page指令來處理。

 proxy_intercept_errors 為on 表示 nginx按照原response code 輸出,后端是404就是404。這個變量開啟后,我們才能自定義錯誤頁面。

proxy_intercept_errors on;

修改后測試通過


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM