前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >3招解决Nginx实现404页面的实现!

3招解决Nginx实现404页面的实现!

作者头像
拓荒者
发布2019-08-16 16:29:32
3.6K0
发布2019-08-16 16:29:32
举报
文章被收录于专栏:运维经验分享

3招解决Nginx实现404页面的实现!

听语音

  • 原创
  • |
  • 浏览:1724
  • |
  • 更新:2017-09-21 13:21

Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的。而一个网站项目,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有以下集中配置方式,一起来看看,更多内容请参考《Linux就该这么学》。

工具/原料

  • ngxin
  • linux

第一种:Nginx自己的错误页面

  1. 1 Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢? 看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。
  2. 2 server { listen      80; server_name  www.test.com; root   /var/www/test; index  index.html index.htm; location / { } # 定义错误页面码,如果出现相应的错误页面码,转发到那里。 error_page  404 403 500 502 503 504  /404.html; # 承接上面的location。 location = /404.html { # 放错误页面的目录路径。 root   /usr/share/nginx/html; } } END

第二种:反向代理的错误页面

  1. 1 如果后台Tomcat处理报错抛出404,想把这个状态叫Nginx反馈给客户端或者重定向到某个连接,配置如下:
  2. 2 upstream www { server 192.168.1.201:7777  weight=20 max_fails=2 fail_timeout=30s; ip_hash; } server { listen       80; server_name 域名; root   /var/www/test; index  index.html index.htm; location / { if ($request_uri ~* ‘^/$’) { rewrite .*   http://域名/index.html redirect; } # 关键参数:这个变量开启后,我们才能自定义错误页面,当后端返回404,nginx拦截错误定义错误页面 proxy_intercept_errors on; proxy_pass      http://www; proxy_set_header HOST   $host; proxy_set_header X-Real-IP      $remote_addr; proxy_set_header X-Forwarded-FOR $proxy_add_x_forwarded_for; } error_page    404  /404.html; location = /404.html { root   /usr/share/nginx/html; } } END

第三种:Nginx解析php代码的错误页面

  1. 如果后端是php解析的,需要加一个变量 在http段中加一个变量 fastcgi_intercept_errors on 就可以了。
  2. 指定一个错误页面: error_page    404  /404.html; location = /404.html { root   /usr/share/nginx/html; }
  3. 3 指定一个url地址: error_page 404  /404.html; error_page 404 = http://www.test.com/error.html; END

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

举报作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 3招解决Nginx实现404页面的实现!
    • 工具/原料
      • 第一种:Nginx自己的错误页面
        • 第二种:反向代理的错误页面
          • 第三种:Nginx解析php代码的错误页面
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档