tp5访问不存在的tp5 模块不存在怎么跳转到404页面

thinkPHP5.0以后,访问不到模块跳转到404页面如何设置?求大神指教
服务器是nginx?
TP3.2中action找不到的时候会找_empty方法,你在_empty里面设置就好了。TP5.0还没用过就不清楚了,应该是差不多。
把错误提示模板替换成404的页面就好了。反正上线之后是不可以让用户看到报错的 索性就都404
tp5手册关于空控制器空方法:
/manua…
如果对原理感兴趣可以去底层看看如何实现的。
本文出自操他妈,转载时请注明出处及相应链接。
本文永久链接: /93653.html
Ɣ回顶部在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
thinkPHP5.0以后,访问不到模块跳转到404页面如何设置?求大神指教
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
服务器是nginx?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
TP3.2中action找不到的时候会找_empty方法,你在_empty里面设置就好了。TP5.0还没用过就不清楚了,应该是差不多。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
把错误提示模板替换成404的页面就好了。反正上线之后是不可以让用户看到报错的 索性就都404
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
tp5手册关于空控制器空方法:
如果对原理感兴趣可以去底层看看如何实现的。
同步到新浪微博
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:404错误页面模板还可以这样做
编辑:冯耀宗 -
错误页面一个看似不重要又似乎不可忽略的细节,看重的人会把404做的非常与用户友好,不不看重的人可能会把404做成一个跳转甚至没有404错误页面。但是对于SEOER来说,404是比较重要的,因为网站没有404页面,当出现的时候,蜘蛛爬行这类网址时,不利于搜索引擎。下面我来介绍几个错误页面的模板,非常利于的404页面模板。
一、腾讯的404
腾讯推出公益404得到了许多大小网站的肯定,由此腾讯推出了公益寻人的404错误页面,整个页面是动态的,每刷新一次更换一次寻人的信息,同时显示寻找人的信息和照片等,在做到公益的同时,也完成了404的页面,何乐而不为呢?
模板下载地址:
二、门户跳转404
相信大家都看到过这样的情况,出现一个404页面的时候,会出现5秒跳转,这是通常情况下大型网站都会这样做的。一般的情况下建议使用5秒左右,因为5秒钟可以让用户知道自己进入了一个错误页面,从而跳转到首页,在搜索引擎的角度,搜索引擎也会知道进入死链接然后跳转的,不建议你的设置低于5秒,以免让搜索引擎误以为页面不存在,却返回重复内容。
模板下载地址:
三、最简单的404
A5论坛可谓是最简单的,这样很容易让用户非常明白自己来到什么网站了,其中返回首页的按钮非常显目,在方面是一个非常不错的404页面。
模板下载地址:
四、什么内容都有的404
还有些404页面非常复杂,复杂到和首页类似,这样让不会让用户感觉到你页面出现错误了,而是这是正常的页面,还可以在这里继续寻找自己需要的答案。从而减少网站的跳出率。其中国际网站雅虎就是这样设计的。
五、娱乐性404页面
或许你网站的内容无法留住用户,或许你网站能够帮助用户的内容成了死链接,那么你的404页面是一个娱乐性的小游戏可能更利于用户体验了。一般这种404模板出现小游戏网站或者博客网站。而我的博客也就是使用这个404页面模板了。
模板下载地址:
设置404的方法
1、虚拟空间:一般的情况下你上传你的404文件到你的根目录可以联系空间客服帮你设置,或者空间商给你ftp后台可以设置404的目录文件。
2、IIS下设置:在IIS管理器中右键单击要管理的网站,打开&属性&中的&自定义错误信息&页,为&404&设定相应的错误信息页即可。不过,此处在&消息类型&中一定要选择&文件&或&默认值&,而不要选择&URL&,不然,将导致返回&200&状态码。
3、Apache设置:可以在文件里面设置,在文件内加入代码:ErrorDocument 404 /notfound.php。切记不要使用绝对URL,如果使用绝对URL返回的状态码是&302&+&200&。
设置完毕建议你在从新检查一遍,建议使用站长工具检测:如果检测返回状态码:404那么你的设置就成功了。
来源:(QQ/微信号:),欢迎分享本文,转载请保留出处!
你会喜欢下面的文章? You'll like the following article.
冯耀宗博客
关注搜索引擎和站长的那点事儿!THINKPHP 解决模块不存在时出现空页面的问题
时间: 13:22:44
&&&& 阅读:728
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&遇到的问题:
最近使用THINKCMF开发了一个企业网站,因为之前客户的域名变更过,然后就发现当某个模块不存在的时候就出现了空页面
上有人说在项目里添加一个EmptyAction.class.php,然后再写业务逻辑,结果搞了好长时间我一直都没有找到Action目录
最后才发现ThinkCmf使用的是Thinkphp3.2而作者写的是3.1
在网上逛了半天也没有解决问题,不得已还是要自己出马
解决方案:
在 \application\Common\Controller\目前添加&EmptyBaseController.class.php&文件 & & & && & &&
*@Author:HTL
*@DateTime:1:22:18
*@Description:空模板控制器
*@use:其他项目添加EmptyController文件并继承该类即可
*/namespace Common\CuseThink\Cclass EmptyBaseController extendsController{function_initialize(){//项目配置文件中的配置项
$emptyPath=C("EMPTY_PATH");//如果未配置默认的地址
if(!$emptyPath || empty($emptyPath))$emptyPath="/";header("Location:".$emptyPath);exit();
& & &2.在所有项目的Controller目前里添加EmptyController.class.php并继承&\Common\Controller\EmptyBaseController& & && & && & &&
*@Author:HTL
*@DateTime:1:22:18
*@Description:空模板控制器,直接继承\Common\Controller\EmptyBaseController即可
*/namespace Portal\Cclass EmptyControllerextends \Common\Controller\EmptyBaseController{
function _initialize(){
parent::_initialize();
& & & 3.在\data\conf\config.php里添加" EMPTY_PATH "项自定义当访问不存在的模块时需要跳转的页面 & && & &&
&?php return array(‘EMPTY_PATH‘=&‘/index.php‘,/*访问不存在的模块时跳转的地址*/
//其他配置项
&标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:/huangtailang/p/4645097.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!Ecshop程序如何让不存在的商品链接自动跳转到404错误页 | 无忧主机
自始至终,以提供稳定、高性能的美国、香港免备案php虚拟主机产品为己任,以用户极高满意为生存价值,以产品的可靠性为生命线,以网络零中断为终身奋斗目标
很多网站为了提高用户体验和网站的优化都会设计一个404错误页面,当访问不存在或者是一个错误的链接就会自动跳转到404页面去。今天一位客户朋友着急的来联系小编说做的404页面不能全部实现,小编开始不是很明白。当测试之后才明白其中的原因。这位客户朋友使用的是程序在无忧主机中搭建的B2B商城,本来已经在根目录传了404错误页和404规则了,当访问一个该站点的不存在的链接也会跳转到404页面去。可是当访问该商城上的一个不存在的商品的时候却是直接跳转到网站的首页的。按道理说这个不存在的商品也是该站点的一个错误的链接地址。为什么就不能跳转到404页面呢?再说了如果当会员们访问的时候直接跳转到首页也会大吃一惊的,但是如果跳转到一个404页面,是不是就明白了该商品是不存在的呢。这样不仅有利于优化还可以提高客户的用户体验呢。小面小编细细研究下找到了实现的方法吧。具体的步骤如下:
首先连接FTP工具。找到根目录下的goods.php文件。使用高级编辑器打开。
找到158行代码:
if ($goods === false)
/* 如果没有找到任何记录则跳回到首页 */
ecs_header(&Location: ./\n&);
修改为以下代码:
if ($goods === false)
/* 如果没有找到任何记录则跳回到首页 */
ecs_header('HTTP/1.1 404 Not Found');
ecs_header(&status: 404 Not Found&);
header(&refresh:5;url=.cn/404.html&);
print('&div style=&margin-top:50 text-align: font-size:22font-family:Microsoft yahei, 微软雅黑;color:#999;&&出错了!此页面不存在,即将返回首页...&br&&br&五秒后自动跳转~~~&/div&');
这里就是做出了一个合理的判断,当商品不存在的时候会提示找不到,然后跳转到上面小编指定的URL链接地址。这里的链接地址就是一个404页面了。修改后上传到对应的目录下,登陆后台更新下缓存,当再回到网站的首页去测试一个不存在的商品时就不会直接返回首页了。
无忧主机相关文章推荐阅读:
本文地址:/ecshop/18169.html
喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^
无忧主机资质:(十三年旗舰品牌)
相关技术帮助文档
技术帮助文档分类}

我要回帖

更多关于 tp跨模块跳转 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信