Thinkphp设置仅在调试模式关闭时显示404页面
2016-04-04 23:20
706 查看
404页面是网站必备的一个页面,它承载着用户体验与SEO优化的重任。404页面通常为用户访问了网站上不存在或已删除的页面,服务器返回的404错误。如果站长没有设置404页面,会出现死链接,蜘蛛爬行这类网址时,不利于搜索引擎收录。
综上百科来的一堆啰嗦为一句话就是404页面是必要的;
接下来的内容就是讲述使用thinkphp时如何设置404页面;
本来奔着减少脑细胞损耗的原则;直接谷歌了下;结果发现市面上那些thinkphp设置404页面的文章都是千篇一律的建一个控制器;里面然后通过_empty()再$this->display跳转到404页面;各种麻烦;而且还不好用;得;索性还是自己捉摸个办法吧;
thinkphp的配置项里面是有设置错误页面模板的;
这个模板页面其实就是我们在开发过程中的报错页面;通常是某某行出错;或者就某某模块、控制器、方法等不存在;
是不是把这个模板文件改成自己写的404就完事了呢?
也对;也不对;因为如果直接把这个模板改掉的话;那开发过程中全都给跳转到404页面就没法调试了;所以正确的做法是做个判断;
如果是开发过程中那调试模式开启着那就显示调试用的报错页面;如果是已上线调试模式关闭;就调用404页面;
好了;废话这么多;上代码;在自己的配置文件中添加如下内容;
./Template/default/Home/Public/404.html这个文件是自己的404页面的目录位置;替换为自己的即可;
综上百科来的一堆啰嗦为一句话就是404页面是必要的;
接下来的内容就是讲述使用thinkphp时如何设置404页面;
本来奔着减少脑细胞损耗的原则;直接谷歌了下;结果发现市面上那些thinkphp设置404页面的文章都是千篇一律的建一个控制器;里面然后通过_empty()再$this->display跳转到404页面;各种麻烦;而且还不好用;得;索性还是自己捉摸个办法吧;
thinkphp的配置项里面是有设置错误页面模板的;
'TMPL_EXCEPTION_FILE' => THINK_PATH.'Tpl/think_exception.tpl',// 异常页面的模板文件
这个模板页面其实就是我们在开发过程中的报错页面;通常是某某行出错;或者就某某模块、控制器、方法等不存在;
是不是把这个模板文件改成自己写的404就完事了呢?
也对;也不对;因为如果直接把这个模板改掉的话;那开发过程中全都给跳转到404页面就没法调试了;所以正确的做法是做个判断;
如果是开发过程中那调试模式开启着那就显示调试用的报错页面;如果是已上线调试模式关闭;就调用404页面;
好了;废话这么多;上代码;在自己的配置文件中添加如下内容;
'TMPL_EXCEPTION_FILE' => APP_DEBUG ? THINK_PATH.'Tpl/think_exception.tpl' : './Template/default/Home/Public/404.html',
./Template/default/Home/Public/404.html这个文件是自己的404页面的目录位置;替换为自己的即可;
相关文章推荐
- Thinkphp设置仅在调试模式关闭时显示404页面
- php多维数组自定义排序 uasort()
- php多维数组自定义排序 uasort()
- php多维数组自定义排序 uasort()
- PHP之目录
- PHP语言 -- 面向对象
- [经验]你想不到的PhpExcel导不出文件的原因
- php页面静态化
- ecshop:Warning: strpos(): Empty delimiter in E:\WebRoot\...\includes\lib_main.php on line1995
- php核心知识纲要总结以及学习路线
- PHP数据库操作:使用ORM
- FastDFS环境配置及php FastDFS扩展安装
- php小问题
- php简介
- phpstorm 10注释的双斜线位置不在缩进的位置:
- php返回两个时间点的差距,以非常人性化的显示出来
- PHP设计模式 外观设计模式
- php实现冒泡排序,选择排序,插入排序和快速排序
- PHP内核的存储机制(分离/改变)
- 一、ThinkPHP的介绍