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页面的目录位置;
替换为自己的即可;
本文为白俊遥原创文章,转载无需和我联系,但请注明来自白俊遥博客https://baijunyao.com 欢迎捐赠赞赏加入组织创建QQ群及捐赠渠道
爱拼才会赢 :加油
2018-06-14 14:19:08 回复
神真的存在 :发现了一个方法,直接修改ThinkPHP/Tpl/think_exception.tpl文件
2017-12-22 22:03:53 回复
云淡风晴 :避免直接修改框架的文件;
2017-12-24 18:24:05 回复
人情味。 :为什么不好用啊难道是我的路径错了吗
2017-09-18 17:17:29 回复
云淡风晴 :下载我的项目看看;
2017-12-24 18:24:18 回复
One :哈哈 很尴尬
2016-10-21 19:56:36 回复
追梦的人 :你好,我刚好用了你的一些方法,但是还是不理解,TMPL_EXCEPTION_FILE' => APP_DEBUG ? THINK_PATH.'Tpl/think_exception.tpl' : './Template/default/Home/Public/404.html',这个是啥文件呢,我QQ1255671970,能加一下我吗
2016-10-15 12:37:52 回复
hiwangqi :我记得之前看网上的某篇博文,因为返回状态码,每个错误返回的不一样,如果是修改错误模版的话, 不管什么状态码 返回的都是400页面不太好. 当然我还是很愿意这样做的 省事 哈哈
2016-08-25 00:30:13 回复
Joy :貌似还有这个原因redirect uri is illegal(100010)
2015-10-19 15:36:49 回复
云淡风晴 :回调地址不合法;我的回调地址填写的是:http://www.baijunyao.com/index.php/Api/Index/oauth/type/qq 你可以参考这个链接来改;
2015-10-25 15:05:50 回复
Joy :博主你好,我应用了你的博客模板,在申请QQ登录的接口时遇到了一些问题。。您的网站审核未通过原因是点击QQ登录按钮提示登录失败或出现错误信息(无跳转、提示失败、出现错误信息),请确认申请符合审核标准后,再提交审核这个我不知该怎么解决,申请了无数次无果,最终只有来求助于你了
2015-10-19 14:53:37 回复
云淡风晴 :因为回调地址填写的不正确;没有通过审核;所以调用QQ接口报错;
2015-10-25 15:07:18 回复
﹎ゞ很√想迩 :请先登录后回复评论
2017-12-25 20:28:00 回复
最新评论