**************SEO
让“最后发表、上一主题“等跳转到静态地址
本帖最后由 SEO小工 于 2009-5-12 14:56 编辑
类似redirect.php?tid=7&goto=lastpost这种形式URL的页面的子内容和thread-1-1-1.html一样的,但URL形式不一样,SE会当成重复内容。
这种URL形式会出现在主页、版块列表页的最后发表或最后回复位置,discuz7以前版本的上一主题、下一主题等也是此种形式的URL,现在虽然没有,但在代码中还能找到那些参数。
为什么不禁止这种URL形式的索引?
1.主要是不能控制别人链接到这种形式,如果禁止索引这种形式的URL就浪费了链接,所以要做301跳转,把链接和权重转移到标准的静态形式。
2.链接形式出现在首页,不禁止或许可以加快录
给redirct.php做301跳转
有的情况下程序要查找才能得到要显示的tid,所以只能修改程序,用php代码实现301跳转。
打开 redirect.php 文件,将 require_once DISCUZ_ROOT.’./viewthread.php’; 替换为
header(“HTTP/1.1 301 Moved Permanently”);
header( “Location: thread-{$tid}-1-1.html” );
文件中共有四处,都修改完就可以访问论坛,检查下效果了。
**************Discuz SEO 悄悄地在改变
最近写了一些discuz 7.0 seo 优化的文章,其中有给discuz加新的canonical URL tag的方法,当然大部分还是我用5.0时的经验。
用了7.0,除了显而易见的变化(如discuz meta),通过看程序,发现Discuz悄悄地在改变
—————————————————————————-
帖子页的URL形式有很多,我们可以通过修改viewthread.php和archive给内容页上canonical URL,都指向静态URL形式来集中权重。
但是,这个伪静态地址也不是唯一的:thread-{tid}-{page}-(forumpage).html, 由内容页URL组成可见最后一段数字是代表帖子在这个版块列表的第几页,当新帖子不断增加,老帖会被挤到第二页,第三页…这样它的URL就会不断地变化。
解决方法:修改forumdisplay.php
将$extra = rawurlencode(“page=$page$forumdisplayadd”);
改为$extra = rawurlencode(“page=1$forumdisplayadd”);
这样,最后一段固定为1,但有个缺点,用户从这个帖子只能返回列表页的第一页了。 More »


