thinkphp框架下404页面设置

404页面即系统在找不到请求的操作方法和找不到请求的控制器名称时的一种报错行为的优化。

第一步:在thinkphp框架中的Home/Comtroller中建一个EmptyController.class.php,其代码如下:

<?phpnamespace 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框架中的Home/Comtroller中建一个公共的类PublicController.class.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;注释掉

(完成)

时间: 2024-07-28 22:17:56

thinkphp框架下404页面设置的相关文章

thinkphp框架下session 存入mongo

最近做系统的时候处理到session入数据库问题 , 由于是在thinkphp框架下, 查看了下框架session相关代码, 发现原框架默认支持mysql数据库 , 于是对原Session驱动做了相应修改 , 使其支持mongo数据库存储session 修改的相关文件是\Think\Session\Driver\Db\Db.class.php , 本人使用的是TP3.2,2版本 , 修改后的Db.class.php代码如下: <?php namespace Think\Session\Drive

Thinkphp框架下(同服务器下)不同二级域名之间session互通共享设置

在Thinkphp框架下根目录打开index.php 在头部加入如下代码即可: //入口文件 define('DOMAIN','abc.com');//abc.com换成自己的跟域名 //以下两行是为了子域名共享SESSION 注意 DOMAIN 需要改为实际的域名 ini_set('session.cookie_path', '/'); ini_set('session.cookie_domain', DOMAIN);

Thinkphp框架下连接两个及以上的数据库方法

在我们的实际开发者,我们经常需要链接两个以上的数据库,方法跟简单 Thinkphp文档中也有介绍:点击查看 方法如下: 第一步:配置文件config.php <?php //默认数据库1 return array( //'配置项'=>'配置值' 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => '10.10.10.10', // 服务器地址 'DB_NAME' => 'user', // 数据库名 'DB_USER' => 'roo

asp.net中mvc4.0下404页面设置

当我们的页面不存在或者出现错误的时候需要展示404页面,以保证有较好的用户体验效果以及更好的SEO. 那么再MVC中怎样展示404页面的呢? 当然这里不是我们访问一个错误地址或者页面出错后链接跳转到www.xxx.com/404.html页面,而是在错误的页面或者链接不变的前提下,页面内容展示404,并且要求页面状态也是404. 首先我们先创建一个MVC项目,既然是404,我们首先需要一个404.html的页面放在根目录下即可. 环境:VS2010,.NET Framework 4.0,MCV4

ThinkPHP框架下,jq实现在div中添加标签并且div的大小会随之变化

php初学者,有什么不对的还请指正. 首先是在html页面中用jq实现添加标签:divAchivePersonnal是select所在的div的外层div,divselectAchivePersonnal是select的最近一层div,info内是字符串拼接,jq标签插入用append方法.接下来是调整css样式,使div会随着标签增加而加大,这里要用一个css属性overflow(亲自查),这里直接在divselectAchivePersonnal使用时不会达到你想要的效果,所以至少要有两个嵌

Thinkphp框架下PHPExcel实现excel数据的批量化导入

第一步:下载官方的PHPExcel文件,下载地址https://github.com/PHPOffice/PHPExcel 第二步:解压打开,将PHPExcel\Classes\全部文件拷贝到thinkhp项目的根目录\ThinkPHP\Library\Vendor\,如下图所示 第三步: HTML代码如下: <form action="{:U('Index/impUser')}" method="post" enctype="multipart/f

ThinkPHP框架下自定义控制器方法

每个模块是一个Action文件,因此应用开发中的一个重要过程就是给不同的模块定义具体的操作.一个应用如果不需要和数据库交互的时候可以不需要定义模型类,但是必须定义Action控制器,一般位于项目的Lib/Action目录下面. Action控制器的定义非常简单,只要继承Action基础类就可以了,例如: Class UserAction extends Action{} 控制器文件的名称是UserAction.class.php. 如果我们要执行下面的URL http://localhost/A

涨知识,涨知识 :ThinkPHP框架下Where条件查询Mysql数据库某字段是否为空

代码虐我千百遍,我对代码如初恋~ 问题: 查询某字段app_date数据是否为NULL,正常我们实现的办法是: $map['app_data'] = array('eq','null'); $data = M("Info") -> field("*") -> where($map) -> select() 利用echo  M("Info")->getLastSql();  打印sql语句如下: SELECT `id`,`n

Thinkphp框架下设置session的过期时间

打开项目中的配置文件,添加session的过期配置,如下: 'SESSION_OPTIONS' => array( 'name' => 'BJYSESSION', //设置session名 'expire' => 3600, //SESSION过期时间,单位秒 'use_trans_sid' => 1, //跨页传递 'use_only_cookies' => 0, //是否只开启基于cookies的session的会话方式 ),