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.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章