nginx自定义500,502,504错误页面无法跳转【转】

1、自定一个页面,这个页面是一个链接地址可以直接访问的。

以下是nginx的配置:

location / {
            proxy_pass http://tomcat_app108;
            #client_max_body_size 1000m;
            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  502 503 504  http://www.cbd.com;
            index   index.html;
        }

注:当出现50x的错误的时候,域名会发生变化,会跳转到这个 

2、自定义一个页面,当发生50x的错误的时候,域名不变

以下是nginx配置:

location / {
            proxy_pass http://tomcat_app108;
            #client_max_body_size 1000m;
            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  502 503 504  /tips;
            index   tips.html index.html;

       location  /tips {
               root  /opt/www/test/;
                index   tips.html;
        }

注:当发生50x的错误的时候,会去寻找/tips的信息,然后匹配到下面location  /tips这个location的内容,跟着会去到这个/opt/www/test/目录下寻找相关页面,这个目录下面有tips这个目录,tips目录下面有tips.html这个文件,这样一步一步就能找到自定义的错误页面了

比如域名是www.cbd.com,访问一下www.cbd.com/tips如果能访问到错误页面说明配置没有问题;

验证:当服务器端发生500,502,503错误时候,会自动跳转到www.cbd.com/tips

注意:若发生错误没有跳转,需要详细看一下一个参数:

proxy_intercept_errors on;

当上游服务器响应头回来后,可以根据响应状态码的值进行拦截错误处理,与error_page 指令相互结合。用在访问上游服务器出现错误的情况下。

以下是完整的配置:

location / {
            proxy_pass http://tomcat_app108;
            #client_max_body_size 1000m;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_intercept_errors on;

error_page  502 503 504  /tips;
            index   tips.html index.html;

       location  /tips {
               root  /opt/www/test/;
                index   tips.html;
        }

转自:

nginx自定义500,502,504错误页面无法跳转-布布扣移动版-m.bubuko.com
http://m.bubuko.com/infodetail-1933746.html

时间: 2024-10-09 04:39:38

nginx自定义500,502,504错误页面无法跳转【转】的相关文章

nginx自定义500、404错误页面

1,首先在http添加以下内容 http{ fastcgi_intercept_errors on; } 2,server中添加以下内容: 注意路径 error_page 500 502 503 504  = /500.html; location /500.html { internal; } error_page 404   /404.html; location /404.html { internal; }

nginx自定义500,502,504错误页面无法跳转

1.自定一个页面,这个页面是一个链接地址可以直接访问的. 以下是nginx的配置: location / {            proxy_pass http://tomcat_app108;            #client_max_body_size 1000m;            proxy_set_header Host $host;            proxy_set_header X-Real-IP $remote_addr;            proxy_se

http的500,502,504错误

500 500的错误通常是由于服务器上代码出错或者是抛出了异常 解决方法:查看一下对应的代码是不是有问题. 502 502即 Bad Gateway网关(这里的网关是指CGI,即通用网关接口,从名字就能看出来是php的cgi的问题)错误,nginx发生这种错误通常是nginx与php(通常是php-fpm)的通信出现了问题. 解决方法:查看一下php-fpm是不是正常运转,之前刚安装好nginx然后配置好了访问一下结果502,弄了好大一会才发现原来是php-fpm忘记开启了... 504 504

lnmp 在nginx中配置相应的错误页面error_page

1. 创建自己的404.html页面 2.更改nginx.conf在http定义区域加入: fastcgi_intercept_errors on; 3.更改nginx.conf(或单独网站配置文件,例如在nginx -> sites-enabled下的站点配置文件 ) 中在server 区域加入: error_page 404 = /404.html 或者 error_page 404 = http://www.xxx.com/404.html 4.更改后重启nginx,,测试nginx.co

nginx 404 500 502

1.nginx 配置完后 出现404. 遇到这种情况,第一个想到是nginx 与 php 没有配置 pathinfo 的问题. 解决方法: nginx.conf加上这段 location ~ .+\.php($|/) { set $script $uri; set $path_info ""; if ($uri ~ "^(.+\.php)(/.+)") { set $script $1; set $path_info $2; } fastcgi_pass unix:

nginx下配置404错误页面

1.创建自己的404.html页面,并放于网站根目录. 2.更改nginx.conf在http定义区域加入: fastcgi_intercept_errors on; 3.更改nginx.conf(或单独的网站配置文件) 在server 区域加入: error_page 404 /404.html 或者 error_page 404 http://www.xxx.com/404.html(不建议用这个绝对路径,有人反映会返回200,但是我测试是可以的,两边不要=) 4.测试nginx.conf正

Nginx指定404错误页面方法

Nginx指定404页面的方法: 404页面分为三种(小编认为目前知道三种,有(ma)待(la)考(ge)察(bi)) 第一种:Nginx自己的错误页面 nginx访问一个静态的html 页面,当这个页面没有的时候,nginx抛出404,那么如何返回给客户端404呢?看下面的代码 这种情况下不需要修改任何参数,就能实现这个功能. server {     listen      80;     server_name  a.b.com;         root   /var/www/error

Nginx配置error_page 404错误页面

问题由来 昨天一网友在segmentfault.com上提问,无法做404重定向 打开对方的网站随便输入一个错误的地址发现给出了404代码,但是页面完全空白,并没有显示404页面的设定内容 当时就明白啥情况了,只要在nginx.conf配置文件上加上一句 fastcgi_intercept_errors on,就可以了 如果没这句的不管是error_page 还是nginx自带的404跳转都不能正常显示(访问不存在的php页面时可能会显示“No input file specified.”) 什

Nginx+php-fpm 502 504问题

常出现502,504错误 思路: 增大nginx与php-fpm通信时的缓存文件大小与个数 静态绑定5个php-fpm进程,减少频率启动进程的开销 利用sock文件代替tcp端口通信 解决办法: 调整Nginx 和 php-fpm的参数如下 # nginx.conf location段 unix:/usr/local/php/var/run/php-fpm.sock # fastcgi.conf 修改内容 fastcgi_buffers 32 128k; fastcgi_buffer_size