404页面即系统在找不到请求的操做方法和找不到请求的控制器名称时的一种报错行为的优化。php
第一步:在thinkphp框架中的Home/Comtroller中建一个EmptyController.class.php,其代码以下:html
<?php
namespace Home\Controller;
use Think\Controller;
class EmptyController extends Controller{
//空操做_empty()方法
function _empty(){
header("HTTP/1.0 404 Not Found");
$this -> display("Public:404");
}
function index(){
header("HTTP/1.0 404 Not Found");
$this -> dislay("Public:404");
}
}
?>
注意:其中 header("HTTP/1.0 404 Not Found")是定义此状态码未404。thinkphp
第二步:在thinkphp框架中的Home/Comtroller中建一个公共的类PublicController.class.php,其代码以下:php框架
<?php namespace Home\Controller; use Think\Controller; class PublicController extends Controller{ function _empty(){ header("Location:/bbs/thinkphp/404.html"); } } ?>
注意:其中 header("Location:/bbs/thinkphp/404.html")中的/bbs/thinkphp/404.html是你出现404后页面跳转的地址,需和本身的404.html页面放置位对应。框架
第三步:让其余控制器所有继承 第二步中的PublicController.class.php,好比:优化
<?php namespace Home\Controller; // use Think\Controller; class IndexController extends PublicController { public function index(){ * * * } } ?>
注意:将use Think\Controller;注释掉this
(完成)spa