琯琯博客 纸上得来终觉浅,绝知此事要躬行。

ThinkPHP 设置仅在调试模式关闭时显示404页面

琯琯
2016-07-09

404页面是网站必备的一个页面;

它承载着用户体验与SEO优化的重任。404页面通常为用户访问了网站上不存在或已删除的页面;

服务器返回的404错误;

如果站长没有设置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页面的目录位置;

替换为自己的即可;

(完)

原文链接


相关文章

下一篇 awesome-css-cn

评论

内容导航