请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Discuz! 官方站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Discuz! X 最新研发动态 通过这个窗口,关注跟踪我们的研发进展 Discuz! 开发技术文库 - 给官方提建议

Discuz! X2 正式版下载 帮助网站实现一站式服务  商业支持服务咨询 下载 - 安装 - 常见问题 - 转换 - 讨论 - 购买

2012站长年会开启报名 限量船票免费发放 Discuz!十大荣誉用户评选 - Discuz!NT3.6发布 漫游引入QQ空间游戏 -一骑新区横扫三国-5d6d免费论坛

查看: 3553|回复: 8

关于UC+SS+DZ+UCH的Rewrite规则设置(给新站长) [复制链接]

Lord

紧跟DZ 不断学习

Rank: 4

UID
12423
积分
755
帖子
766
威望
0
在线时间
0 小时
注册时间
2003-4-11
发表于 2008-4-30 12:01:10 |显示全部楼层
本帖最后由 pollen 于 2009-12-29 19:39 编辑

原文地址:http://www.cnwyw.net/thread-1576-1-1.html
有疑问的朋友可以回帖或者PM询问,我也是菜鸟站长,不过我看到会尽量回答的。



近日在升级Disucz!到6.1.0UC版,并且使用UCenter整合了SupeSite(SS)、UCenterHome(UCH)之后发现Rewrite规则之间存在冲突,导致一些正常的伪静态链接访问时出错或者自动返回首页。后来经过向官方下砂老师询问,总结出解决方法,不敢独享,拿出来与各位站长共同学习。

实际上问题并不复杂,原先我们安装了DZ+SS+XS(X-Space)的时候,Rewrite规则是放在一起的,后来加上UCH之后各应用间的规则互相有冲突所以导致了上述现象。只要将各应用的Rewrite规则分开就可以了。当然了,这个前提是,你的各应用要有自己的独立域名才行,或者设立虚拟目录,总之要能够在IIS里面添加各自的ISAPI筛选器才可以。

举例如下:
我的站点在主机IIS里面是这样分配的。
SS:http://x.cnwyw.net (服务器目录:X:\www\ss\)
DZ:http://www.cnwyw.net (服务器目录:X:\www\bbs\)
UCH:http://home.cnwyw.net(服务器目录:X:\www\uch\)

那么各个站点的Rewrite规则只要互相独立就行了。
SS在IIS中的SIAPI筛选器那里,添加Rewrite,服务器目录:X:\www\rewritess\rewrite.dll
DZ的是:X:\www\rewritedz\rewrite.dll
UCH的是:X:\www\rewriteuch\rewrite.dll

之后将各自的Rewrite规则写到相应目录的httpd.ini里面,全部搞定之后重启IIS。
如此一来,各站点(各应用)之间的Rewrite就不会互相冲突了。

下边顺便附上各应用的Rewrite规则的官方版本(IIS独立主机的规则,其余规则请查阅官方相关资料),本站现在用的就是这个,没有出现任何问题。

SS(Supesite6)的:
  1. [ISAPI_Rewrite]
  2. # 3600 = 1 hour
  3. CacheClockRate 3600
  4. RepeatLimit 32
  5. # SupeSite Rewrite规则
  6. # 独立主机用户
  7. # 修改以下语句中的 /supesite 修改为你的SupeSite目录地址,如果程序放在根目录中,请将 /supesite 修改为 /
  8. RewriteRule ^/([0-9]+)$ /index\.php\?uid/$1 [L]
  9. RewriteRule ^/([0-9]+)/spacelist(.+)$ /index\.php\?uid/$1/action/spacelist/type$2 [L]
  10. RewriteRule ^/([0-9]+)/viewspace(.+)$ /index\.php\?uid/$1/action/viewspace/itemid$2 [L]
  11. RewriteRule ^/([0-9]+)/viewbbs(.+)$ /index\.php\?uid/$1/action/viewbbs/tid$2 [L]
  12. RewriteRule ^/([0-9]+)/(.*)$ /index\.php\?uid/$1/$2 [L]
  13. RewriteRule ^/action(.+)$ /index\.php\?action$1 [L]
  14. RewriteRule ^/category(.+)$ /index\.php\?action/category/catid$1 [L]
  15. RewriteRule ^/viewnews(.+)$ /index\.php\?action/viewnews/itemid$1 [L]
  16. RewriteRule ^/viewthread(.+)$ /index\.php\?action/viewthread/tid$1 [L]
  17. RewriteRule ^/mygroup(.+)$ /index\.php\?action/mygroup/gid$1 [L]
复制代码
DZ(Discuz!6.1.0)的:
  1. [ISAPI_Rewrite]
  2. # 3600 = 1 hour
  3. CacheClockRate 3600
  4. RepeatLimit 32
  5. # Protect httpd.ini and httpd.parse.errors files
  6. # from accessing through HTTP
  7. RewriteRule ^(.*)/archiver/((fid|tid)-[\w\-]+\.html)\?*(.*)$ $1/archiver/index\.php\?$2&$4
  8. RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html\?*(.*)$ $1/forumdisplay\.php\?fid=$2&page=$3&$4
  9. RewriteRule
  10. ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html\?*(.*)$
  11. $1/viewthread\.php\?tid=$2&extra=page\%3D$4&page=$3&$4
  12. RewriteRule ^(.*)/space-(username|uid)-(.+)\.html\?*(.*)$ $1/space\.php\?$2=$3&$4
  13. RewriteRule ^(.*)/tag-(.+)\.html\?*(.*)$ $1/tag\.php\?name=$2&$3
复制代码
UCH(UCenterHome1)的:
  1. [ISAPI_Rewrite]
  2. # 3600 = 1 hour
  3. CacheClockRate 3600
  4. RepeatLimit 32
  5. # UCHome Rewrite规则
  6. # 独立主机用户
  7. # 修改以下语句中的 /uchome 修改为你的uchome目录地址,如果程序放在根目录中,请将 /uchome 修改为 /
  8. RewriteRule ^/(space|network)-(.+)\.html$ /$1\.php\?rewrite=$2 [L]
  9. RewriteRule ^/(space|network)\.html$ /$1\.php [L]
  10. RewriteRule ^/([0-9]+)$ /space\.php\?uid=$1 [L]
复制代码


[ 本帖最后由 pollen 于 2008-4-30 12:03 编辑 ]
中国网友网
www.CNWYW.net

Rank: 4

UID
511761
积分
986
帖子
1220
威望
-5
在线时间
9 小时
注册时间
2006-12-7
发表于 2008-5-1 04:56:49 |显示全部楼层
支持一下楼主,有没有三合一的
[url=http://2929.jzp.cc/]<font color="red"><font size="18"><font face="楷体_gb2312 ">全面解决自动生成二级域名,以数字id为二级域名[/url]

使用道具 举报

Rank: 2

UID
921008
积分
118
帖子
101
威望
0
在线时间
0 小时
注册时间
2008-4-17
发表于 2008-5-1 05:38:14 |显示全部楼层
欢迎广大站长朋友入驻中国站长论坛www.hotwzw.cn(中国站长论坛:是全国站长朋友扎堆的好地方!)

使用道具 举报

Genius

最受欢迎的互联网服务专家

Rank: 12Rank: 12Rank: 12

UID
498407
积分
10495
帖子
5866
威望
444
在线时间
64 小时
注册时间
2006-11-23
发表于 2008-5-4 00:01:32 |显示全部楼层

使用道具 举报

Lord

紧跟DZ 不断学习

Rank: 4

UID
12423
积分
755
帖子
766
威望
0
在线时间
0 小时
注册时间
2003-4-11
发表于 2008-5-4 10:36:32 |显示全部楼层
原帖由 建站铺 于 2008-5-1 04:56 发表
支持一下楼主,有没有三合一的


就是因为三合一会出现冲突,所以才要分开的嘛^o^。如果三合一可行的话,我这主题也就没必要了。
中国网友网
www.CNWYW.net

使用道具 举报

Rank: 3Rank: 3

UID
501412
积分
306
帖子
377
威望
0
在线时间
0 小时
注册时间
2006-11-26
发表于 2009-3-18 15:17:09 |显示全部楼层
本帖最后由 jourkey 于 2009-3-18 15:19 编辑

伪静态开启后在整个UCH中把所有会员的地址改为
http://www.abcd.com/1234
而不是
http://www.abcd.com/space_1234.html
就是说比如我在随便看看页面中想访问某个会员的空间,我点击进去的是上面一个地址,而不是下面那个,请问这个规则怎么写

使用道具 举报

Rank: 12Rank: 12Rank: 12

UID
486449
积分
250065
帖子
304772
威望
522
在线时间
2968 小时
注册时间
2006-11-10
发表于 2009-3-18 15:18:27 |显示全部楼层

使用道具 举报

Rank: 2

UID
838427
积分
83
帖子
61
威望
0
在线时间
0 小时
注册时间
2007-10-13
发表于 2009-4-15 11:13:48 |显示全部楼层
很详细。。。。

使用道具 举报

Forum Legend

古城热线

Rank: 8Rank: 8

UID
1049220
积分
3568
帖子
3812
威望
1
在线时间
384 小时
注册时间
2008-12-27
发表于 2009-4-15 17:25:28 |显示全部楼层
伪静态开启后在整个UCH中把所有会员的地址改为
http://www.abcd.com/1234
而不是
http://www.abcd.com/space_1234.html
就是说比如我在随便看看页面中想访问某个会员的空间,我点击进去的是上面一个地址,而不是 ...
jourkey 发表于 2009-3-18 15:17



我也想知道

http://www.ixbren.net/home/?6189

我的网站上,个人空间的域名内都有问号,为何6189前面有个问号"?"

如何将会员所有的域名前都取消那个问号???

如果域名是http://www.ixbren.net/home/6189

没有那个问号多好啊

官方网站的都没有那个问号

使用道具 举报

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

fastpost

手机版|Archiver|北京康盛新创科技有限责任公司 ( 京ICP证110024号|京网文[2011]0019-007号 )  

GMT+8, 2012-2-13 07:13 , Processed in 0.124066 second(s), 14 queries , Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部