1. 程式人生 > >Nginx錯誤頁面優雅顯示

Nginx錯誤頁面優雅顯示

生產環境中常見的http狀態碼列表:

200 服務成功返回頁面,這是成功的http請求

301 永久跳轉permanent

302 臨時跳轉 redirect

403 禁止訪問,這個請求是合法的,但是伺服器端因為事先根據規則而拒絕了請求,一般是伺服器許可權設定不正確。

404 伺服器找不到客戶端所請求的頁面

500 伺服器內部錯誤

502 壞的閘道器,一般為代理伺服器出現問題

503 伺服器當前不可用,可能因為伺服器超載或者是維護所致

504 閘道器超時

優雅顯示

我們可以將403.404頁面重定向到網站首頁或者指定的頁面中,優化使用者體驗

示範:

server {

listen 80;

server_name www.titi.com;

location / {

root html/www;

index index.html index.htm;

}

error_page 404 /404.html; <<當出現403頁面時,會跳轉到403.html 頁面中

access_log /app/logs/bbs_access.log main ;

}

上面的 /403,html 頁面位於 html/www下的403.html頁面

然後客戶端進行測試

[[email protected] ~]# curl www.etiantian.org/fjh.html

this is 404 page

記住:程式碼中的 /404.html 是相當於你設定的虛擬主機制定的目錄下

示範2:將50x.html單獨防到指定的網站資源中

server {

listen 80;

server_name www.etiantian.org;

location / {

root /www/html;

index index.html index.php index.htm ;

# auth_basic "pless put passwd";

# auth_basic_user_file htpasswd;

access_log logs/fangwen.log main; }

error_page 404 /404.html;

error_page 502 501 504 503 /50x.html;

location = /50x.html { <<制定到/error 目錄下

root /error;

}

示範3:改變狀態碼為新的狀態碼,並顯示指定頁面

error_page 404 = 200 /empty.gif;

server {

listen 80;

server_name www.banna.com;

location / {

root /data/www/html ;

index index.html index.htm;

fastcgi_intercept_errors on ;

error_page 404 = 200 /ta.jpg ;

access_log /app/llogs/bbs_access.log main;

}

}

示範4:錯誤狀態碼URL重定向

server {

listen 80;

server_name www.banna.com;

location / {

root /data/www/html ;

index index.html index.htm;

fastcgi_intercept_errors on ;

error_page 404 http://www.tianmao.com/error/404.html;

access_log /app/llogs/bbs_access.log main;

}

}

示範5:將狀態碼轉換為另一個location中

location / {

error_page 404 = @fallback;

}

location @fallback {

proxy_pass hhttp://backend;

阿里天貓的優雅顯示參考:

error_page 500 501 502 503 504 http://err.tmall.com/error1.html;

error_page 400 403 404 405 411 412 413 http://err.tmall.com/error2.html

相關推薦

Nginx錯誤頁面優雅顯示

生產環境中常見的http狀態碼列表: 200 服務成功返回頁面,這是成功的http請求 301 永久跳轉permanent 302 臨時跳轉 redirect 403 禁止訪問,這個請求是合法的,但是伺服器端因為事先根據規則而拒絕了請求,一般是伺服器許可權設定不正確。

Nginx錯誤頁面重定向入門(yum安裝的Nginx

1、環境:yum安裝的Nginx。 2、場景:重定向Nginx自帶的錯誤提示頁面。 3、配置檔案:/etc/nginx/conf.d/default.conf tip:為什麼是這個配置檔案呢,因為在nginx.conf檔案中載入了include /etc/ngi

nginx自定義500,502,504錯誤頁面無法跳轉【轉】

header cli targe head href 錯誤 error tom htm 1、自定一個頁面,這個頁面是一個鏈接地址可以直接訪問的。 以下是nginx的配置: location / { proxy_pass http://tomcat_

Nginx指定404錯誤頁面方法

tomcat nginx erroNginx指定404頁面的方法:404頁面分為三種(小編認為目前知道三種,有(ma)待(la)考(ge)察(bi))第一種:Nginx自己的錯誤頁面 nginx訪問一個靜態的html 頁面,當這個頁面沒有的時候,nginx拋出404,那麽如何返回給客戶端404呢

TP框架裏面當訪問不存在的操作方法時讓其不顯示錯誤頁面

操作 pub 不顯示 public 錯誤 ech function 用戶 額外 當訪問空操作方法或者不存在的錯誤的操作方法的時候: 在該控制器頁面裏面寫一個   public function _empty(){     echo "您訪問的頁面有誤";   } 的

IIS前端頁面顯示詳細錯誤解決方法

詳細 命令 服務器 lex post layer item read 信息服務 要想解決這個問題,有三種方法可以考慮: 1.Internet信息服務(IIS)管理器 2.Web.config文件 3. 命令行 在IIS的“錯誤頁”右邊的“編輯功能設置”選擇“

網站配置錯誤頁面,當使nginx伺服器,如何配置錯誤頁面

為了避免長時間更新而停掉服務時或者找不到頁面時,產生的502、404頁面的,通常在Nginx作為Web伺服器時,可以配置一些錯誤的提示頁面,讓人很容易理解和安撫。 第一種:Nginx自己的錯誤頁面 Nginx訪問一個靜態的html 頁面,當這個頁面沒有的時候,Nginx丟

nginx 配置 404 錯誤 頁面

什麼是404頁面 如果碰巧網站出了問題,或者使用者試圖訪問一個並不存在的頁面時,此時伺服器會返回程式碼為404的錯誤資訊,此時對應頁面就是404頁面。404頁面的預設內容和具體的伺服器有關。如果後臺用的是NGINX伺服器,那麼404頁面的內容則為:404 Not Found

img標籤src引用網路圖片,頁面顯示,返回403錯誤,網路圖片地址在瀏覽器能載入,放html卻不能顯示

在html頁面加入<meta name="referrer" content="no-referrer">標籤,就可以解決頁面載入網路圖片的問題,原因大概是網路安全的問題,別人的頁面做了安全防護的問題。<head> <meta chars

網站出錯之後顯示錯誤頁面

前言        經常上網的童靴可以發現,網站出錯之後,會出現一個出錯介面,並且這個頁面等待幾秒過後會跳轉到另一個介面。   為什麼要有這個頁面呢,個人認為有三點 提示使用者頁面出錯了,當然這著

nginx反向代理設定自定義錯誤頁面

如果我們的nginx配置了反向代理,如下: location ^~ /wyq/ { proxy_pass https://127.0.0.1:$wyq_port; proxy_re

Nginx自定義404錯誤頁面,返回200狀態碼,非404狀態碼解決!

開始配置如下,結果發現返回狀態碼是200,搜尋了一下解決方法,做個記錄http{......fastcgi_intercept_errors on;......}#----------------------------------------server{#只是轉跳而已error_page 404 = /

asp.net中當伺服器出錯時顯示指定的錯誤頁面

此篇文章描述了當異常再ASP.NET中發生時怎樣使用C#.NET程式碼去攔截和相應異常。ASP.NET在異常處理方面比傳統的ASP更優越。在ASP.NET中,允許在應用程式的各個層面中處理異常。ASP.NET的新特性ASP.NET為捕獲並處理異常提供了更多的便利。在傳統的AS

nginx自定義錯誤頁面

首先開啟nginx.conf檔案,在fastcgi_temp_file_write_size 128k; 下面新增 fastcgi_intercept_errors on;注意,包括;號 然後在需要定義的站點的裡面新增 error_page 404 = /404.ht

Nginx 網站定義自己的錯誤頁面

場景:為了給使用者較好的互動和感官,我們通常需要對錯誤頁面進行友好提示。環境介紹:LNMP(linux(centos7.4)Nginx Mysql5.6 php7.0)實現:這裡,我直接對nginx的子配置檔案進行了相應配置,給出程式碼server { listen

筆記-返回到前一個頁面顯示前一個頁面中ajax獲取的數據

最終 logs ajax請求 嘗試 但是 repl 拼接 新聞 筆記 筆記第一部分:http://www.cnblogs.com/zczhangcui/p/6869219.html 在第一部分遇到的問題是,用ajax獲取了一系列列表信息後,拼接好html後插入到了原有頁面中

Servlet 異常處理( 配置錯誤頁面

使用 程序 頁面 sco class exception clas type load 當一個 Servlet 拋出一個異常時,Web 容器在使用了 exception-type 元素的 web.xml 中搜索與拋出異常類型相匹配的配置。 您必須在 web.xml 中使用

【JSP】配置錯誤頁面

panel jsp頁面 version cati 調試 view nal dex -type 1,使用JSP方式 如果配置是Jsp時,需要把isErrorPage設置為true, 以及設置 <%@ page language="Java" contentType

定制錯誤頁面

otf status not customer nbsp http web redirect html 在web.config的<system.web>下加上以下配置 <customErrors mode="On" defaultRedirect="MyE

Laravel5.4中自定義404等錯誤頁面

dtd app top exc auto get 1.0 存在 href 1.在resources/views/下簡歷文件夾error,在error文件中建立"404.blade.php文件"。    1 <!DOCTYPE html PUBLIC "-//W3C