Maison > Article > développement back-end > thinkPHP底层设立跳转404页面
thinkPHP底层设置跳转404页面
项目开发完之后要屏蔽报错,在底层目录写个404页面,入口文件APP_DEBUG改成false,代码方面使用以下方法
1.使用空操作,即_empty(),在进入某个控制器中,如果找不多这个方法,就直接调用 _empty,然后进入404。
2.在tp里面,初始化项目时,runtime下有个common~runtime.php,这个是缓存文件,里面有大部分的核心文件,加载空模块或者空控制器时,自动从这个文件里获取相关的信息,包括加载空模块和空控制器时,都是从这个文件里获取信息。
3.加载空模块的报错信息在Thinkphp/Think/Dispatcher.class.php的178行
代码:
E(L(‘MODULE_NOT_EXIST‘).’:’.MODULE_NAME);
在这前面加
header(“Location:/404.html”);die;即可
具体页面自己写个即可,404放入底层目录
4.加载空控制器(不存在的控制器)
Thinkphp/Library/Think/App.class.php102行
E(L(‘CONTROLLER_NOT_EXIST‘).’:’.CONTROLLER_NAME);
上面加行404代码即可。
最后删除runtime目录的所有文件(以防万一,其实只要删除common~runtime.php即可),然后重新加载页面即可。
这样在线上就不会再出现加载不了模块或者控制的信息了,全是调到404.
版权声明:本文为博主原创文章,未经博主允许不得转载。