Nginx作为代理服务器如何响应后端服务器的status code

描述

  Nginx经常被人用作代理服务器。在工作中碰到了这么一种情况,Nginx作为后端Apache服务的代理当Apache服务器发生处理错误时,也就是说在response statsu code 是40x和50x系的时候,希望服务器能检测到,并且执行一个PHP代码,发送邮件给管理者。结果由于对Nginx的配置不是很熟悉只是在Nginx的配置文件上error_page 400 401 402 403 501 502 503 504 /50x.php;

想当然的认为没有问题,也没用仔细的测试,结果运行了一段时间发现,即使Apache返回40x和50x,Nginx也不执行50x.php文件

后来我调查了一下发现,少配置了一项proxy_intercept_errors这个选项。这个选项默认是off的。这个选项的意思是,当Nginx作为代理服务器时,也会处理后端服务器返回的400以上的status code



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值