Discuz SEO(dz论坛搜索引擎优化)手记

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
复制代码#用先禁止后开放的方法,主要是清晰,容易理解,不会落下要禁止的URL。对于Discuz这样URL情况复杂的程序来说还是很方便的,如果只使用Disallow,规则会写得很长。具体使用参考:robots.txt文件语法。
#允许一些动态内容的收录,是因为google,live,yahoo和支持一个新的标签属性,可以通过它将链接和权重转移到静态形式的URL上。见:让discuz支持canonical URL tag。
一、禁止SE检索无用页面
1.1 我的robots.txt的设置。主要为了测试各SE的支持情况,用DZ默认的就行*注意:一般情况下,您使用disucz默认的robots.txt文件就可以了。
下面设置主要是为了测试各搜索引擎对robots.txt文件扩展协议的支持和兼容情况。User-agent: *
Allow: /*.html
Allow: /viewthread.php #开放帖子的各种动态形式
Allow: /redirect.php #开放帖子的跳转形式
Allow: /forumdisplay.php #开放列表面的各种动态形式
Allow: /archiver/ #只有放开这个目录,robots开能进入抓取*.html的东西
如此修改之后,对于无权访问的URL、已删除的帖子等提示信息页面,都会返回带有meta robots禁止在页头。因为禁止收录了,过一段时间也会从索引中删除。这样,给SE的都是一些有内容的网页,对于提高权重会有好处。
原来还落下了给archiver加meta robots 补充:2010-3-28
archiver页面的帖子,如果删除了,同样的提示信息也要禁止收录。
Discuz SEO(dz论坛搜索引擎优化)手记
最新最全、全部原创 discuz seo 系列文章。论坛为dz 7.2 , 为了检测各种优化的情况,开启了版块和帖子伪静态,允许archiver和版块、帖子的动态URL形式收录*
*某些设置有试验性质,且不适合所有人,特别是老站,须根据实际情况处理,不要轻易改动*
修改archiver\include\thread.inc.php:此文件中有两个showheader();,在第一个的上面加一行:$extrahead .='<meta name="robots" content="noindex,nofollow" />';就可以了。
三.为archiver页加link canonical标签
1.使用robots.txt文件,禁止版块列表的收录
Disallow: /forum-1-
#数字即为要禁止版块的ID。
#注意数字最后的 - 不要省略,否则连ID为11,12等1开头的版都禁了
2.加meta robots标签,禁止收录某个版块帖子
修改viewthread.php文件,在$oldtopics = isset($_DCOOKIE['oldtopics']) ? $_DCOOKIE['oldtopics'] : 'D'; 上面加:
1.修改archiver/index.php:在global $boardurl, $_DCACHE, $charset, $navtitle, $headerbanner, $headernav;行下加一行:global $extrahead;
在<meta http-equiv="Content-Type" content="text/html; charset={$charset}" />
if( $thread['fid']==1 ){
$seohead .= '<meta name="robots" content="noindex,nofollow" />';
}
判断一下帖子是属于哪个版($thread['fid'])的,给它加上meta robots禁止。
第一点虽然禁止版块收录了,但有可能从动态形式或其它地方访问到帖子链接,所以还要用第二点给帖子页加上meta。这两点中的版块ID和要您禁止的版块对应,如果有多个版块,第一点中添加行就行了,第二点要修改断语句中中的逻辑表达式。
#discuz会产生哪些无效的页面,有什么问题
1.删除了的帖子、版块,当访问时返回帖子不存在的提示信息页。
2.设置了一定权限才能浏览的帖子、版块,很多情况会泄露链接,得到没权限的提示
3.其它各种情况下的提示信息页面。这些都是给用户看的,没有实质内容,都禁止收录。
其实最大的问题还是副本内容的问题,因这些不同的URL,返回的却是相同的内容。对SE不友好。其实对于删除了内容,应该返回404,但为了简单,都使用加meta robots标签,禁止ES收录的方法来解决。
#这样设置robots.txt主要还是为了测试一下,看各搜索引擎对扩展协议的支持情况如何:
1.测试各SE对allow的支持情况
2.测试对 $ * 这些符号的兼容情况
3.测试各SE的匹配规则是否相同
1.2 *给无效页面加meta robots标签禁止收录1.3 禁止SE收录某个版的帖子的方法
#先禁直所有内容
Disallow: /
#开放主页。不支持Allow将不能收录主页;如果不支持$,大概会全部开放
Allow: /$
#开放所有.html页,对DZ来说有 列表面、帖子、archiver
#将来TAG内容丰富后,后台设置将TAG页面静态化自然也就允许收录TAG了
行下加一行:$extrahead
1.3 禁止SE收录某个版的帖子的方法
各种原因,需要禁止SE对discuz某个版面帖子的收录(如水版、或为了更好的SEO等)。当然如果设置了权限,不允许游浏览此版面,那么就肯定不能收录了。
当既想游客浏览帖子,又不想让搜索引擎收了,为了需要的人都能看到,所以再发一遍。
#修改提示信息页面,解决重复内容问题
找到全局函数定义文件:global.func.php修改其它中的showmessage函数就可以了。
在第四行 define('CACHE_FORBIDDEN', TRUE); 后面加上:
$extrahead .='<meta name="robots" content="noindex,nofollow" />';
相关文档
最新文档