萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> nginx自定義404錯誤頁面設置方法

nginx自定義404錯誤頁面設置方法

   今天突然發現一個問題,網站設置了自定義的 404 頁面, 顯示的是沒有問題, 只是返回的狀態碼是 200, 而不是404!!

  去看我的 nginx 配置:

  nginx.conf

  代碼如下

  server {

  ...

  error_page 404 = /404.php;

  ...

  }

  乍一看是沒啥,網上搜了一下才知道多了個等號!!! 改為這樣:

  nginx.conf

  代碼如下

  server {

  ...

  error_page 404 /404.php;

  ...

  }

  補充一下其它狀態代碼定義方法

  更改nginx.conf在http定義區域加入: fastcgi_intercept_errors on;

  為指定位置設定一個404頁面

  代碼如下

  location /my_blog {

  error_page 404 = /article_not_found.html;

  }

  你可以用單個錯誤頁面一起來處理多個錯誤代碼

  代碼如下

  location /my_blog {

  error_page 500 502 503 504 = /server_error.html

  }

  重定向到一個完全不同的服務器,假設你在http區域定義有一個上游服務器server2:

  代碼如下

  upstream server2 {

  server 10.0.0.1:80;

  }

  server {

  location /my_blog {

  error_page 404 = @try_server2;

  }

  location @try_server2 {

  proxy_pass http://server2;

  }

  這個功能可以用在Nginx前端+Apache後端的服務器架構中。

  測試配置

  /usr/local/nginx/sbin/nginx -t

  沒錯誤就重啟nginx

  /etc/init.d/nginx restart

copyright © 萬盛學電腦網 all rights reserved