首页 > 网站 > WEB服务 > 正文

nginx自定义404错误页面设置方法

2020-05-27 13:29:10
字体:
来源:转载
供稿:网友

   今天突然发现一个问题,网站设置了自定义的 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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表