404 page is The system cannot find the requested action method and cannot find the requested controller nameThe optimization of an error behavior.
The first step: Build a EmptyController.class.php in the Home/comtroller in the thinkphp framework with the following code:
namespace Home\controller;
Use Think\controller;
Class Emptycontroller extends controller{
Empty Operation _empty () method
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");
}
}
?>
Note: where header ("http/1.0 404 Not Found") is defined this status code is not 404.
Step Two: Build a common class PublicController.class.php in Home/comtroller in the thinkphp framework, withthe following code:
Phpnamespace Home\controller; Use Think\controller; class extends controller{ function _empty () { header("location:/bbs/thinkphp/ 404.html ");} }? >
Note: the /bbs/thinkphp/404.html in the header ("location:/bbs/thinkphp/404.html") Is the address that you appear after 404 page jump, need to correspond with own 404.html page place bit.
Step three: Let all other controllers inherit the PublicController.class.php in the second step , such as:
Phpnamespace Home\controller; // Use Think\controller; class extends Publiccontroller { publicfunction index () { * * * * }}? >
Note: Use think\controller; Comment out
Complete
The above describes the thinkphp framework under the 404 page setup, including the content of the thinkphp,php framework, I hope that the PHP tutorial interested in a friend helpful.