利用nginx的反向代理来实现 服务器404 和500 等状态码的自定义页面

1.nginx配置文件 nginx.conf 配置开启代理错误拦截 和配置页面  下划线部分 

http {

        ......

    proxy_intercept_errors on;

    fastcgi_intercept_errors on;

    server {

         ......

    error_page  404   /notfind.html;

    error_page   500 /error.html;

    error_page   502 503 504 /error502.html;
}
}

2.编写自定义页面,将页面放置在nginx路径下的html 文件夹下 页面中用到的图片什么的都放置与此文件夹下

3.重启nginx 配置生效 OK

404页面代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta charset="UTF-8" http-equiv="Content-Type" content="text/html; charset=utf-8" />

<link rel="icon" type="image/x-icon" href="http://zhaixt.info/icon.ico" />

<title>404-对不起!您访问的页面不存在</title>

<style type="text/css">

.head404{ width:580px; height:234px; margin:50px auto 0 auto; background:url(http://zhaixt.info/head404.png) no-repeat; }

.txtbg404{ width:499px; height:169px; margin:10px auto 0 auto; background:url(http://zhaixt.info/txtbg404.png) no-repeat;}

.txtbg404 .txtbox{ width:390px; position:relative; top:30px; left:60px;color:#eee; font-size:13px;}

.txtbg404 .txtbox p {margin:5px 0; line-height:18px;}

.txtbg404 .txtbox .paddingbox { padding-top:15px;}

.txtbg404 .txtbox p a { color:#eee; text-decoration:none;}

.txtbg404 .txtbox p a:hover { color:#FC9D1D; text-decoration:underline;}

</style>

</head>

<body bgcolor="#494949">

       <div class="head404"></div>

       <div class="txtbg404">

  <div class="txtbox">

      <p>对不起,您请求的页面不存在、或已被删除、或暂时不可用</p>

      <p class="paddingbox">请点击以下链接继续浏览网页</p>

      <p>》<a style="cursor:pointer" onclick="history.back()">返回上一页面</a></p>

      <p>》<a href="http://zhaixt.info/screenShot/index"> 文字识别 </a></p>

      <p>》<a href="http://zhaixt.info/excelchange/index"> 图表转换 </a></p>

    </div>

  </div>

</body>

</html>

500页面代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>We're sorry, but something went wrong (500)</title>
<meta charset="UTF-8" http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="icon" type="image/x-icon" href="http://zhaixt.info/icon.ico" />
<style type="text/css"> .head500{ width:580px; height:234px; margin:50px auto 0 auto; background:url(http://zhaixt.info/head500.png) no-repeat; } .txtbg500{ width:499px; height:169px; margin:10px auto 0 auto; background:url(http://zhaixt.info/txtbg404.png) no-repeat;} .txtbg500 .txtbox{ width:390px; position:relative; top:30px; left:60px;color:#eee; font-size:13px;} .txtbg500 .txtbox p {margin:5px 0; line-height:18px;} .txtbg500 .txtbox .paddingbox { padding-top:15px;} .txtbg500 .txtbox p a { color:#eee; text-decoration:none;} .txtbg500 .txtbox p a:hover { color:#FC9D1D; text-decoration:underline;} </style>
</head> <body bgcolor="#494949"> <div class="head500"></div> <div class="txtbg500"> <div class="txtbox"> <p class="paddingbox">请点击以下链接继续浏览网页</p> <p>》<a style="cursor:pointer" onclick="history.back()">返回上一页面</a></p> <p>》<a href="http://zhaixt.info/screenShot/index"> 文字识别 </a></p> <p>》<a href="http://zhaixt.info/excelchange/index"> 图表转换 </a></p> </div> </div> </body>
</html>

502页面代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>We're sorry, but something went wrong (502)</title>
<meta charset="UTF-8" http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="icon" type="image/x-icon" href="http://zhaixt.info/icon.ico" />
<style type="text/css"> .head500{ width:580px; height:234px; margin:50px auto 0 auto; background:url(http://zhaixt.info/502.png) no-repeat; } .txtbg500{ width:499px; height:169px; margin:10px auto 0 auto; background:url(http://zhaixt.info/txtbg404.png) no-repeat;} .txtbg500 .txtbox{ width:390px; position:relative; top:30px; left:60px;color:#eee; font-size:13px;} .txtbg500 .txtbox p {margin:5px 0; line-height:18px;} .txtbg500 .txtbox .paddingbox { padding-top:15px;} .txtbg500 .txtbox h1,h2{ color:#FC9D1D;} </style>
</head> <body bgcolor="#494949"> <div class="head500"></div> <div class="txtbg500"> <div class="txtbox"> <h1> SORRY </h1> <h2>服务升级中...如等待时间过长,请联系宅小涛</h2> </div> </div> </body>
</html>

欢迎大家参考 !

Nginx 自定义404、500、502 页面的更多相关文章

  1. nginx自定义404、403页面

    1.在nginx的http模块加入: fastcgi_intercept_errors on; 2.在server模块加入 location / { root /data; index index.h ...

  2. apache 网页301重定向、自定义400/403/404/500错误页面

    首先简单介绍一下,.htaccess文件是Apache服务器中的一个配置文件(Nginx服务器没有),它负责相关目录下的网页配置.通过对.htaccess文件进行设置,可以帮我们实现:网页301重定向 ...

  3. Nginx 自定义404、500错误页面跳转

    自定义Nginx错误界面跳转 1.开启Nginx.conf配置文件下的自定义接口参数. http { fastcgi_intercept_errors on; } 2.在Server区域添加自定义的错 ...

  4. Nginx自定义404页面并返回404状态码

    Nginx定义404页面并返回404状态码, WebServer是nginx,直接告诉我应该他们配置了nginx的404错误页面,虽然请求不存在的资源可以成功返回404页面,但返回状态码确是200. ...

  5. .net core 自定义404 500页面

    常用处理方式 自己定制网站的404.500页面的方式有很多,比如修改nginx配置文件,指定请求返回码对应的页面, .netframework项目中修改webconfig文件,指定customerro ...

  6. Nginx自定义404页面

    指定一个错误页面: error_page 404 /404.html; location = /404.html { root /usr/share/nginx/html; } 指定一个url地址: ...

  7. asp.net mvc输出自定义404等错误页面,非302跳转。

    朋友问到一个问题,如何输出自定义错误页面,不使用302跳转.当前页面地址不能改变. 还要执行一些代码等,生成一些错误信息,方便用户提交反馈. 500错误,mvc框架已经有现成解决方法: filters ...

  8. asp.net mvc输出自定义404等错误页面,非302跳转

      朋友问到一个问题,如何输出自定义错误页面,不使用302跳转.当前页面地址不能改变. 还要执行一些代码等,生成一些错误信息,方便用户提交反馈. 500错误,mvc框架已经有现成解决方法: filte ...

  9. http协议的状态码——400,401,403,404,500,502,503,301,302等常见网页错误代码

    http协议的状态码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101( ...

随机推荐

  1. hinernate-实体对象的3种状态

    瞬时状态---持久化状态---游离态 瞬时状态:实体对象中没有id,没有与session关联 持久化状态:实体对象中有id,与session有关联 游离态:实体对象中有id,没有与session关联 ...

  2. vueRouter lazyLoad

    import Vue from 'vue' import Router from 'vue-router' import HelloWorld from '@/components/hello/ind ...

  3. 让iframe自适应高度-真正解决

    需求:实现 iframe 的自适应高度,能够随着页面的长度自动的适应以免除页面和 iframe 同时出现滚动条的现象. (需要只有iframe出现滚动条) 本人一开始这么写:会造成只有主页面加载是设定 ...

  4. 如何让vue项目兼容IE浏览器

    一般来说项目开发到后期都需要做各种兼容性处理例如:360.IE9以上.QQ浏览器....等等 那么现在来介绍一个工具 babel-cli 跟 babel-preset-es2015 babel-cli ...

  5. uap

    1.UAP 从前端到后端 详细教程 (一) 博主友好几篇相关的文章

  6. eclipse工程的jdk从1.7升到1.8后报错解决办法

    报的错误信息: org.apache.jasper.JasperException: Unable to compile class for JSP 讲Tomcat从7.0升到apache-tomca ...

  7. c++基础学习

    1.输入输出函数(cout,cin) #include<iostream> int main() { using namespace std; cout<<"Come ...

  8. IIS命令行静默安装脚本-python

    #coding=utf8 import platform from subprocess import Popen,PIPE,STDOUT import sys,os def run_cmd(cmd, ...

  9. Vue父子组件之间的相互通信

    组件是Vue知识体系中最重要的一部分之一,父子组件由于作用域的不同,无法直接对对方的数据进行操作.它们之间的数据传递都是通过中间介质进行的,父组件给子组件传值是通过props属性,而子组件给父组件传值 ...

  10. C++面试

    C++ Primer.STL源码剖析.设计模式 C++ 析构函数可以是虚函数吗?为什么 构造函数可以是虚函数吗?为什么 如何防止类被继承 手写String类(实现类里面常用函) 什么是野指针如何避免这 ...