Nginx loadbalancer 捕获并重定义后端返回的错误
Friday, February 2nd, 2018 Posted in Linux | No Comments »最近被要求用Nginx做一个前端,要求把所有的请求发送给后端。 而后端框架做的又比较傻,错误页面做的非常不友好。但是开发人员又不知道怎么直接(或者不愿意)修改后端的错误页面,要求在前端进行处理。 以下就是处理方法了。 首先,我们要添加下面这条语句,用来捕获后端返回的错误代码: proxy_intercept_errors on; 这句语句开启后,Nginx就会捕获后端一切300或者大于300的返回代码,当然也就包括404,500等等。 返回之后,就是要重新定义错误代码页面: error_page 404 =301 https://www.tangjianwei.com/localcontent/index404.html; error_page 500 502 503 504 =301 https://www.tangjianwei.com/localcontent/index500.html; 由于默认所有的请求都会发给后面,我们还要把上面的链接地址给排除出来: location ~ /localcontent { }