一个网站项目,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有以下集中配置方式,一起来看看。

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

Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢?

看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。

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;}}

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

如果后台Tomcat处理报错抛出404,想把这个状态叫Nginx反馈给客户端或者重定向到某个连接,配置如下:

upstream www {server 192.168.1.201:7777  weight=20 max_fails=2 fail_timeout=30s;ip_hash;}server {listen       80;server_name www.test.com;root   /var/www/test;index  index.html index.htm;location / {if ($request_uri ~* ‘^/$’) {rewrite .*   http://www.test.com/index.html redirect;}# 关键参数:这个变量开启后,我们才能自定义错误页面,当后端返回404,nginx拦截错误定义错误页面proxy_intercept_errors on;#这个参数很关键。能把后台的404转换后去找404页面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;}}

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

如果后端是php解析的,需要加一个变量

在http段中加一个变量 fastcgi_intercept_errors on 就可以了。

指定一个错误页面:

error_page    404  /404.html;location = /404.html {root   /usr/share/nginx/html;}

指定一个url地址:

error_page 404  /404.html;error_page 404 = http://www.test.com/error.html;

转载于:https://blog.51cto.com/sgk2011/2086109

Nginx实现404页面的几种方法相关推荐

  1. php nginx配置404页面,Nginx实现404页面的几种方法

    upstream www { server 192.168.1.201:7777  weight=20 max_fails=2 fail_timeout=30s; ip_hash; } server ...

  2. springmvc跳转到自定义404页面的三种方法

    有时候我们并不想跳转到系统自定义的错误页面中,那么我们需要自定义页面并且实现它的跳转 有三种方法可以实现 方法一:最简单的实现,也是最快的 在<web-app>节点下配置 代码如下: 1 ...

  3. nginx 硬重启_nginx重启几种方法

    http://blog.csdn.net/zqinghai/article/details/71125045 ps -ef|grep nginx 平滑重启命令: kill -HUP 住进称号或进程号文 ...

  4. Linux配置nginx打开报404,Linux下Nginx配置404页面的方法

    Linux下Nginx配置404页面很多设置后返回状态码是200,而不是404状态码,所以那样的404页面设置是不正确的,今天分享下Linux下Nginx配置404页面设置方法. 1.创建自己的404 ...

  5. asp.net服务器端跳转页面的三种方法

    asp.net服务器端跳转页面的三种方法 1.Response.Redirect这个跳转页面的方法跳转速度不快,因为它要走2次回发(postback). 它可以跳转到任何页面,没有站点页面限制(可以由 ...

  6. SpringBoot 之 跳转页面的几种方法

    ** SpringBoot 之 跳转页面的几种方法 ** 1. a 标签的通用跳转方法 <a href="toPage?url=/vue/vue">链接 1</a ...

  7. html给页面整体添加左右边距_HTML嵌入页面的几种方法

    HTML嵌入页面的几种方法 作者:wsir 发布时间:2019/12/17 21:07:10 分数:0 跟帖:0 一.应用框架技术 在页面中嵌入外部页面的方法是,在页面中包含外部页面的位置插入&quo ...

  8. vue 跳转页面带对象_vue跳转页面的几种方法(推荐)

    vue跳转不同页面的多种方法 1:router-link跳转 点击跳转2 点击跳转1 点击跳转3 2:this.$router.push() 点击跳转4 export default{ name:'t ...

  9. vue 路由跳转页面打开新页面_vue-router跳转时打开新页面的两种方法

    vue-router跳转时打开新页面的两种方法 最近还是在痛苦的挣扎中 挣扎吧 记录一下在vue项目中如何实现跳转到一个新页面(一个比较简单又比较基础的问题了),有两个方法: 1.标签实现新窗口打开 ...

最新文章

  1. Python中的注释
  2. linux cmake编译源码,linux安装mysql(源码)以及cmake编译
  3. 如何在FBL5N中增加所需字段
  4. AAAI 2021 | 幻灯片中文字的重要性预测赛亚军DeepBlueAI团队技术分享
  5. VTK:Rendering之StringToImageDemo
  6. 打开高效文本编辑之门_调用Linux的sed命令
  7. OJ1073: 级数求和(C语言)
  8. C语言强化——学生管理系统
  9. mysql8 高可用_mysql系列之8.mysql高可用 (mha4mysql)
  10. 数据库__配置ODBC及附加数据库的方法
  11. unity序列帧优化—Addressables
  12. GitHub Windows 客户端使用教程
  13. Java实现 LeetCode 299 猜数字游戏
  14. C#装箱(Boxing)和拆箱(Unboxing)
  15. CSDN博文周刊第一期 | 2018年总结:向死而生,为爱而活——忆编程青椒的戎马岁月
  16. 字符串插入字符串函数
  17. 设计模式总结篇(为什么要学习设计模式,学习设计模式的好处)
  18. [机缘参悟-29]:鬼谷子-内揵篇-与上司交往的五种层次
  19. 阅读笔记-软件工程的大泥球
  20. 问题 K: oop实习-11.运算符重载

热门文章

  1. 初一七年级计算机信息全册教案,新川教版七年级信息技术全册教案(全册)
  2. js 封装经纬度成json_R实现地理位置与经纬度相互转换
  3. 非专业计算机考试基础内容,全国高等教育自学考试指定教材:计算机应用基础·非计算机专业公共基础科·代码00018...
  4. jpa原生query_JPA执行原生SQL语句
  5. react 动态修改路由_reactjs – 如何动态添加重定向到反应路由器?
  6. 广东工业大学专项设计_2020年广东工业大学本科招生计划发布!
  7. 网络编程+Python
  8. bzoj 刷题计划~_~
  9. VS2017中的附加到进程
  10. Oracle数据库的测试用户Scott的密码为什么是Tiger?