jzpu 发表于 2019-11-4 16:53:19

Discuz删除文章返回404状态错误页解决方案

使用discuz论坛程序搭建网站的朋友应该有遇到这样的问题,当删除掉已经收录的论坛帖子文章时,原来的页面返回状态码并不是404错误,还是200状态码。这对于SEO来讲非常影响,通过建站铺的研究及摸索找到了解决方案。Discuz删除文章时返回404状态并跳转到错误页,如下图所示:
处理后:
原因解释站长SEO们应该有发现,虽然这个板块被删除了,但是对于搜索引擎返回的状态码竟然还是200,也就是搜索引擎会把这个页面当作正常页面一样索引,但是这个页面却是没有内容的,这种类似现象应该叫做软404,也就是看似是一个404样式,却完全没有产生404的效果,起码没有返回状态码404。其实这是discuz程序seo方面的一个盲区,我们需要做的是,将一个已经被删除的帖子或者文章给予搜索引擎返回码404,然后制作一个404页面,这样才是一个对于搜索引擎友好的设计。解决办法
需要修改的程序路径,找到如下程序代码。source\module\forum\forum_viewthread.php
如果是文章的话则是:source\module\portal\portal_view.php以此类推。showmessage('thread_nonexistence');
win主机修改替换为这段代码:header('HTTP/1.1 404 Not Found');
header('status: 404 Not Found');
include('404.html');
exit();
}linux系统替换成下面这个代码header('HTTP/1.1 404 Not Found');
header('status: 404 Not Found');
include('404.html');
exit();
如图所示:
这里的“404/index.html”
为自己设置的404页面的路径。最后,如果你有使用DISCUZ论坛程序,请检查一下是否出现本文提到的SEO问题,请自行处理。

页: [1]
查看完整版本: Discuz删除文章返回404状态错误页解决方案