Discuz!NT官方社区

首页 » Discuz!NT交流与讨论 » 数据转换 » 从Discuz! php版转换到Discuz!NT后,请用新的伪静态规则来防止旧的搜索引擎收录变成死链
雪人 - 2008-4-24 17:29:00
用户从其它论坛转换为Discuz!NT后,如果原来的论坛较大,往往是已经被搜索引擎收录了大量的网页,这时建议你增加伪静态规则,让原来的地址都可以继续访问,防止原来的收录变成死链。

设置了UrlReWriter的朋友(参见文档中心  http://nt.discuz.net/doc/default.aspx?cid=36
请修改UrlReWriter.ini

1) 以原来没有做过伪静态设置的Discuz! PHP版为例,请增加以下规则

    RewriteRule ^/forumdisplay\.php\?fid=([0-9]+)$  /showforum.aspx?forumid=$1
    RewriteRule ^/viewthread\.php\?tid=([0-9]+)$  /showtopic.aspx?topicid=$1

这两条规则可以让大多数访问版块和查看主题的Discuz!链接转换到Discuz!NT的链接,例如
forumdisplay.php?fid=3
就被转发到
showforum.aspx?forumid=3

2) 再以之前做过伪静态设置的Discuz! PHP版为例,请增加以下规则

    RewriteRule ^/forum-([0-9]+)\.html$  /showforum.aspx?forumid=$1
    RewriteRule ^/forum-([0-9]+)-([0-9]+)\.html$  /showforum.aspx?forumid=$1&page=$2
    RewriteRule ^/thread-([0-9]+)-([0-9]+)\.html$  /showtopic.aspx?topicid=$1&page=$2
    RewriteRule ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$  /showtopic.aspx?topicid=$1&page=$2

例如
原来的论坛曾经将forumdisplay.php?fid=2&page=1设置为forum-2-1.html的伪静态格式
那么在应用前面的规则后
forum-3-1.html
就被转发到
showforum.aspx?forumid=3&page=1


其它论坛请参考举一反三,最后为了让你对UrlReWriter.ini的修改立即生效,请在命令行下运行iisreset
purezhang - 2008-4-24 17:49:00
支持一下!~
1
查看完整版本: 从Discuz! php版转换到Discuz!NT后,请用新的伪静态规则来防止旧的搜索引擎收录变成死链