大家好,欢迎来到IT知识分享网。
出现404的可能性有很多,比如无法在所请求的端口上访问Web站点、Web服务扩展锁定策略阻止本请求、MIME映射策略阻止本请求等。使用Discuz的站长们有没有遇到404页面的情况?比如因各种原因需要删除掉一篇已经被收录的文章时,返回原来页面的时候就会显示404错误。而时删掉已经收录的帖子时,原来的页面状态并不是404,而是200。这种情况会对网站的判定造成非常不好的影响,网站整体的SEO效果也会大打折扣。
为什么会出现200状态码?
这种情况下出现200状态,就是一种”软404″状态,意思是表面上看起来是一个类似404的状态,但是却没能产生和404相同的效果,起码没有返回状态码404。
也就是说,尽管你已经在后台将该模块删除,这个页面实际上却是没有内容的,可是搜索引擎仍然将该页面作为一个正常页面来索引,所以对于搜索引擎返回的状态码依然还是200。
这个问题就是Discuz的一个bug,而且官方暂时并没有对此进行修复,所以如果不想让这种状态影响到对页面的优化,就需要我们制作一个404页面,这对于搜索引擎来说才算是相对友好的设置。
那么这个问题应该怎么解决?
解决办法其实很简单:
找到如下代码,修改程序路径:
source\module\forum\forum_viewthread.php
如果是文章就是
source\module\portal\portal_view.php
然后需要将
showmessage(‘thread_nonexistence’)
替换成这一段代码
header(‘HTTP/1.1 404 Not Found’);
header(‘status: 404 Not Found’);
include(‘404.html’);
exit();
}
这里所讲的”404/index.html”就是自己设置的404页面的路径。
通过先荐上面所讲的办法,就能够成功解决在Discuz删除了文章返回404出现错误的问题了。
更多精彩内容
欢迎关注头条号@先荐
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/47082.html