背景:项目中需要对错误页面重定向,以免用户点到错误页面后,一个nginx的错误页面出现让用户不知道怎么继续而离开,导致流量丢失。
nginx配置错误页面重定向
一、要在nginx.conf 文件里开启错误访问相关的配置
fastcgi_intercept_errors on;
将代码添加到 http 大块里
二、在自己的虚拟站点配置里定义错误页面,
error_page 404 = http://www.aibaitou.com/error/404.html;
error_page 500 502 503 504=http://www.aibaitou.com/error/50x.html;
include /usr/local/nginx/conf/rewrite/aibaitou.conf;
将代码添加到 server 大块里
三、修改重定向url的配置文件 aibaitou.conf ,添加错误页面的转发请求解析rewrite ^/error/(.*).html/?$ /index.php?app=errpage&id=$1 last;
四、nginx测试下
/usr/local/nginx/sbin/nginx -t
五、测试如果报错,可以将错误贴到谷歌百度下(我的实践是正常的,但个人环境总有不同或者自定义了,所以...)
六、在项目里新建errpage.app.php 控制器,让控制器加载对应错误页面的模板就好,到此整个错误页面重定向就完成了。