Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[经验] PHPWind 转换到 Discuz!7.1 后的 rewrite 规则

[复制链接]
beijing200808 发表于 2009-11-4 15:11:03 | 显示全部楼层 |阅读模式
本帖最后由 beijing200808 于 2009-11-27 17:28 编辑

PHPWind 转换到 Discuz!7.1 后,论坛内容的访问地址会发生变化,这就导致论坛用户原来保存的信息访问地址无效,给站长造成一定程序的损失。为避免这种情况的发生,我们整理了一下 PHPWind 转换到 Discuz!7.1 后的 rewrite 规则:

一、Apache 下
  1. RewriteRule ^(.*)/read-htm-tid-([0-9]+)\.html$ $1/viewthread\.php\?tid=$2 [R=301,L]
  2. RewriteRule ^(.*)/read\.php\?tid-([0-9]+)\.html$ $1/viewthread\.php\?tid=$2 [R=301,L]
  3. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2 [R=301,L]
  4. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)-type-([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2&filter=type&typeid=$3 [R=301,L]
  5. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)-search-digest\.html$ $1/forumdisplay\.php\?fid=$2&filter=digest [R=301,L]
  6. RewriteRule ^(.*)/profile-htm-action-show-(username|uid)-(.*)\.html$ $1/space\.php\?action=viewpro&$2=$3 [R=301,L]
  7. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)([a-z\-]+)([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2&page=$4 [R=301,L]
  8. RewriteRule ^(.*)/read-htm-tid-([0-9]+)-page-([0-9]+)-fpage-([0-9]+)\.html$ $1/viewthread\.php\?tid=$2&extra=page%3D1&page=$3 [R=301,L]
  9. RewriteRule ^(.*)/index-htm-m-area\.html$ $1/index.php [R=301,L]
  10. RewriteRule ^(.*)/index-htm-m-bbs\.html$ $1/index.php [R=301,L]
  11. RewriteRule ^(.*)/index-htm-m-o\.html$ $1/space.php?do=home [R=301,L]

  12. RewriteCond %{QUERY_STRING} ^tid-([0-9]+)\.html$
  13. RewriteRule ^(.*)/read.php$ $1/viewthread.php?tid=%1 [R=301,L]

  14. RewriteCond %{QUERY_STRING} ^tid-([0-9]+)$
  15. RewriteRule ^(.*)/read.php$ $1/viewthread.php?tid=%1 [R=301,L]

  16. RewriteCond %{QUERY_STRING} ^fid=([0-9]+)$
  17. RewriteRule ^(.*)/thread.php$ $1/forumdisplay.php?fid=%1 [R=301,L]

  18. RewriteCond %{QUERY_STRING} ^fid=([0-9]+)&type=([0-9]+)$
  19. RewriteRule ^(.*)/thread.php$ $1/forumdisplay.php?fid=%1&filter=type&typeid=%2 [R=301,L]

  20. RewriteCond %{QUERY_STRING} ^fid=([0-9]+)&search=digest$
  21. RewriteRule ^(.*)/thread.php$ $1/forumdisplay.php?fid=%1&filter=digest [R=301,L]

  22. RewriteCond %{QUERY_STRING} ^action=show&(username|uid)=(.*)$
  23. RewriteRule ^(.*)/profile.php$ $1/space.php?action=viewpro&%1=%2 [R=301,L]

  24. RewriteCond %{QUERY_STRING} ^fid=([0-9]+)([a-zA-Z=&]+)([0-9]+)$
  25. RewriteRule ^(.*)/thread.php$ $1/forumdisplay.php?fid=%1&page=%3 [R=301,L]

  26. RewriteCond %{QUERY_STRING} ^tid=([0-9]+)&page=([0-9]+)&fpage=([0-9]+)$
  27. RewriteRule ^(.*)/read.php$ $1/viewthread.php?tid=%1&extra=page\%3D1&page=%2 [R=301,L]

  28. RewriteCond %{QUERY_STRING} ^m=o&q=browse$
  29. RewriteRule ^(.*)/mode.php$ $1/network.php [R=301,L]

  30. RewriteCond %{QUERY_STRING} ^m=o&q=user&u=([0-9]+)$
  31. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%1 [R=301,L]

  32. RewriteCond %{QUERY_STRING} ^m=o&space=([0-9]+)&u=([0-9]+)&q=write$
  33. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2 [R=301,L]

  34. RewriteCond %{QUERY_STRING} ^m=o&space=([0-9]+)&u=([0-9]+)&q=diary$
  35. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2 [R=301,L]

  36. RewriteCond %{QUERY_STRING} ^m=o&q=diary&space=([0-9]+)&u=([0-9]+)&did=([0-9]+)$
  37. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2&do=blog&id=%3 [R=301,L]

  38. RewriteCond %{QUERY_STRING} ^m=o&space=([0-9]+)&u=([0-9]+)&q=photos$
  39. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2 [R=301,L]

  40. RewriteCond %{QUERY_STRING} ^m=o&q=photos&space=([0-9]+)&u=([0-9]+)&a=album&aid=([0-9]+)$
  41. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2&do=album&id=%3 [R=301,L]

  42. RewriteCond %{QUERY_STRING} ^m=o&q=photos&space=([0-9]+)&u=([0-9]+)&a=view&pid=([0-9]+)$
  43. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2&do=album&picid=%3 [R=301,L]

  44. RewriteCond %{QUERY_STRING} ^m=o&q=share&space=([0-9]+)&u=([0-9]+)&a=$
  45. RewriteRule ^(.*)/mode.php$ $1/space.php?uid=%2 [R=301,L]

  46. RewriteCond %{QUERY_STRING} ^m=o&space=([0-9]+)&u=([0-9]+)&q=groups$
  47. RewriteRule ^(.*)/mode.php$ $1/space.php?do=mtag [R=301,L]
复制代码
其中,“-htm-”(不含引号)为 PHPWind 后台设置的静态目录,“.html” 为 PHPWind 后台设置的静态目录扩展名;
第37行至第56行,主要是针对 PHPWind 的圈子而设置的 rewrite 规则。当 PHPWind 转换到 Discuz!7.1 后,相应的其圈子信息转换到 UCenter Home,这部分的域名可能发生改变,此时的 rewrite 规则,只需要将“$1” 修改成对应的域名就可以了。例如:
  1. RewriteCond %{QUERY_STRING} ^m=o&q=user&u=([0-9]+)$
  2. RewriteRule ^(.*)/mode.php$ http://www.52here.cn/space.php?uid=%1 [R=301,L]
复制代码
二、IIS下
  1. RewriteRule ^(.*)/read-htm-tid-([0-9]+)\.html$ $1/viewthread\.php\?tid=$2
  2. RewriteRule ^(.*)/read\.php\?tid-([0-9]+)\.html$ $1/viewthread\.php\?tid=$2
  3. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2
  4. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)-type-([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2&filter=type&typeid=$3
  5. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)-search-digest\.html$ $1/forumdisplay\.php\?fid=$2&filter=digest
  6. RewriteRule ^(.*)/profile-htm-action-show-(username|uid)-(.*)\.html$ $1/space\.php\?action=viewpro&$2=$3
  7. RewriteRule ^(.*)/thread-htm-fid-([0-9]+)([a-z\-]+)([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2&page=$4
  8. RewriteRule ^(.*)/read-htm-tid-([0-9]+)-page-([0-9]+)-fpage-([0-9]+)\.html$ $1/viewthread\.php\?tid=$2&extra=page%3D1&page=$3
  9. RewriteRule ^(.*)/read\.php\?tid=([0-9]+)$ $1/viewthread\.php\?tid=$2
  10. RewriteRule ^(.*)/thread\.php\?fid=([0-9]+)$ $1/forumdisplay\.php\?fid=$2
  11. RewriteRule ^(.*)/thread\.php\?fid=([0-9]+)&type=([0-9]+)$ $1/forumdisplay\.php\?fid=$2&filter=type&typeid=$3
  12. RewriteRule ^(.*)/thread\.php\?fid=([0-9]+)&search=digest$ $1/forumdisplay\.php\?fid=$2&filter=digest
  13. RewriteRule ^(.*)/simple/index\.php\?(t|f)([0-9]+\.html)$ $1/archiver/?$2id-$3
  14. RewriteRule ^(.*)/profile\.php\?action=show&(username|uid)=(.*)$ $1/space\.php\?action=viewpro&$2=$3
  15. RewriteRule ^(.*)/thread\.php\?fid=([0-9]+)([a-zA-Z=&]+)([0-9]+)$ $1/forumdisplay\.php\?fid=$2&page=$4
  16. RewriteRule ^(.*)/read\.php\?tid=([0-9]+)&page=([0-9]+)&fpage=([0-9]+)$ $1/viewthread\.php\?tid=$2&extra=page%3D1&page=$3
  17. RewriteRule ^(.*)/index-htm-m-area\.html$ $1/index\.php
  18. RewriteRule ^(.*)/index-htm-m-bbs\.html$ $1/index\.php
  19. RewriteRule ^(.*)/index-htm-m-o\.html$ $1/space\.php\?do=home
  20. RewriteRule ^(.*)/mode\.php\?m=o&q=browse$ $1/network\.php
  21. RewriteRule ^(.*)/mode\.php\?m=o&q=user&u=([0-9]+)$ $1/space\.php\?uid=$2
  22. RewriteRule ^(.*)/mode\.php\?m=o&space=([0-9]+)&u=([0-9]+)&q=([a-z]+)$ $1/space\.php\?uid=$3
  23. RewriteRule ^(.*)/mode\.php\?m=o&q=share&space=([0-9]+)&u=([0-9]+)&a=$ $1/space\.php\?uid=$3
  24. RewriteRule ^(.*)/mode\.php\?m=o&q=diary&space=([0-9]+)&u=([0-9]+)&did=([0-9]+)$ $1/space\.php\?uid=$3&do=blog&id=$4
  25. RewriteRule ^(.*)/mode\.php\?m=o&q=photos&space=([0-9]+)&u=([0-9]+)&a=album&aid=([0-9]+)$ $1/space\.php\?uid=$3&do=album&id=$4
  26. RewriteRule ^(.*)/mode\.php\?m=o&q=photos&space=([0-9]+)&u=([0-9]+)&a=view&pid=([0-9]+)$ $1/space\.php\?uid=$3&do=album&picid=$4
  27. RewriteRule ^(.*)/mode\.php\?m=o&space=([0-9]+)&u=([0-9]+)&q=groups$ $1/space\.php\?do=mtag
复制代码
其中,“-htm-”(不含引号)为 PHPWind 后台设置的静态目录,“.html” 为 PHPWind 后台设置的静态目录扩展名;
第17行至第27行,主要是针对 PHPWind 的圈子而设置的 rewrite 规则。当 PHPWind 转换到 Discuz!7.1 后,相应的其圈子信息转换到 UCenter Home,这部分的域名可能发生改变,此时的 rewrite 规则,只需要将“$1” 修改成对应的域名就可以了。
附件中是 IIS 下的 rewrite 附件,下载后按照里面的 readme.txt 进行操作即可。

注:压缩包中的 rewrite 规则仅是转换过程的rewrite规则,不包含 Discuz! 论坛自身的 rewrite 规则,使用时,自行添加到 httpd.ini文件中即可。

如果大家在使用中有什么问题,可以在下面跟帖提问

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
ceoping 发表于 2009-11-4 15:42:45 | 显示全部楼层
怎么用??不会,可否详细点?

我准备晚上从PW转到DZ。。。。。
回复

使用道具 举报

蓝豆 发表于 2009-11-5 13:34:02 | 显示全部楼层
这个要支持。。。。。。。。
回复

使用道具 举报

abcnic18 发表于 2009-11-9 14:36:59 | 显示全部楼层
好东西!!!!
回复

使用道具 举报

bbsboat 发表于 2009-11-10 12:55:18 | 显示全部楼层
说个详细的方法呀,是不是放在HATCCT文件中呀
回复

使用道具 举报

maikongjian 发表于 2009-11-19 14:46:40 | 显示全部楼层
感谢提供,一切正常。
回复

使用道具 举报

rekin 发表于 2009-11-22 15:40:03 | 显示全部楼层
不错!
很多人都需要,以前搞过一个,但是圈子规则不成功...
这个很全面,PW开启过静态化的用户都会感激的.
回复

使用道具 举报

heyanglin 发表于 2009-12-18 11:25:48 | 显示全部楼层
我是买的虚拟主机如何设置呢
回复

使用道具 举报

iougames 发表于 2009-12-18 12:19:56 | 显示全部楼层
非常感谢了。
回复

使用道具 举报

 楼主| beijing200808 发表于 2009-12-20 14:33:51 | 显示全部楼层
我是买的虚拟主机如何设置呢
heyanglin 发表于 2009-12-18 11:25



    htaccess 文件
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-23 10:59 , Processed in 0.027964 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表