工作中遇到的自定义502页面问题解决

背景描述: 用nginx自定义后端节点502页面,web项目是用java开发的+tomcat中间件。即: 前端nginx,代理后端tomcat。

              需求: 当后端tomcat节点出现宕机不能访问时候,显示自定义页面。而不是光秃秃的默认502页面显示。

中间折腾了许久,还是未能彻底解决。问铭哥寻求解决方法,参考铭哥给出的方法:http://blog.lishiming.net/?p=37下提供了思路

今天重新整理了下,完成配置如下:

server {

listen *:80;

server_name www.hmh.com;

root /usr/share/nginx/html;

access_log /var/opt/nginxlog/default/access_log main;

error_log /var/opt/nginxlog/default/error_log error;

proxy_intercept_errors on; //这行关键配置

recursive_error_pages on; //这行是关键配置

location ~ /* {

error_page 502 @502;

proxy_pass http://syt;

}

location @502 {

root html/502;

error_page 502 /index.html;

}

}

解决后端tomcat节点异常,显示自定义502页面(放在nginx上)问题。

说明: proxy_intercept_errors on; 当上游服务器响应头回来后,可以根据响应状态码的值进行拦截错误处理,与error_page 指令相互结合。用在访问上游服务器出现错误的情况下。recursive_error_pages on; 可以让下面的location @502生效

转载于:https://blog.51cto.com/goldstar52/2136279

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值