[ISAPI_Rewrite]
CacheClockRate 3600
RepeatLimit 32

RewriteRule ^(.*)/post/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ $1/read\.php\?entryid=$2&page=$3&part=$4 [I]
RewriteRule ^(.*)/page/([0-9]+)/([0-9]+)/?$ $1/index\.php\?mode=$2&page=$3 [I]
RewriteRule ^(.*)/starred/([0-9]+)/?([0-9]+)?/?$ $1/star\.php\?mode=$2&page=$3 [I]
RewriteRule ^(.*)/category/([^/]+)/?([0-9]+)?/?([0-9]+)?/?$ $1/index\.php\?go=category_$2&mode=$3&page=$4 [I]
RewriteRule ^(.*)/archiver/([0-9]+)/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ $1/index\.php\?go=archive&cm=$2&cy=$3&mode=$4&page=$5 [I]
RewriteRule ^(.*)/date/([0-9]+)/([0-9]+)/([0-9]+)/?([0-9]+)?/?([0-9]+)?/?$ $1/index\.php\?go=showday_$2-$3-$4&mode=$5&page=$6 [I]
RewriteRule ^(.*)/user/([0-9]+)/?$ $1/view\.php\?go=user_$2 [I]
RewriteRule ^(.*)/tags/([^/]+)/?([0-9]+)?/?([0-9]+)?/?$ $1/tag\.php\?tag=$2&mode=$3&page=$4 [I]
RewriteRule ^(.*)/component/id/([0-9]+)/?$ $1/page\.php\?pageid=$2 [I]
RewriteRule ^(.*)/component/([^/]+)/?$ $1/page\.php\?pagealias=$2 [I]

#Customized URL
RewriteRule ^(.*)/alias/([^/]*)\_?([0-9]+)?\_?([0-9]+)?/?$ $1/read\.php\?blogalias=$2&page=$3&part=$4 [I]

#Force redirection for old rules
RewriteRule ^(.*)/post/([0-9]+)\.htm$ $1/post/$2/ [R]
RewriteRule ^(.*)/post/([0-9]+)\_([0-9]+)\.htm$ $1/post/$2/$3/ [R]
RewriteRule ^(.*)/post/([0-9]+)\_([0-9]+)\_([0-9]+)\.htm$ $1/post/$2/$3/$4/ [R]
RewriteRule ^(.*)/index\_([0-9]+)\_([0-9]+)\.htm$ $1/page/$2/$3/ [R]
RewriteRule ^(.*)/star\_([0-9]+)\_([0-9]+)\.htm$ $1/starred/$2/$3/ [R]
RewriteRule ^(.*)/category\_([0-9]+)\.htm$ $1/category/$2/ [R]
RewriteRule ^(.*)/category\_([0-9]+)\_([0-9]+)\_([0-9]+)\.htm$ $1/category/$2/$3/$4/ [R]
RewriteRule ^(.*)/archive\_([0-9]+)\_([0-9]+)\.htm$ $1/archiver/$2/$3/ [R]
RewriteRule ^(.*)/archive\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+)\.htm$ $1/archiver/$2/$3/$4/$5/ [R]
RewriteRule ^(.*)/showday\_([0-9]+)\_([0-9]+)\_([0-9]+)\.htm$ $1/date/$2/$3/$4/ [R]
RewriteRule ^(.*)/showday\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+)\_([0-9]+)\.htm$ $1/date/$2/$3/$4/$5/$6/ [R]


如何配置PHP环境及安装isapi_write请看Windows 2003 IIS下配置MySQL+PHP+ISAPI_Rewrite+Zend+Xcache...

要使该规则生效,请首先修改inc/url.php...

修改方法: 打开inc/url.php(不要用记事本打开,用支持utf-8去BOM的编辑工具打开),然后找到

function getlink_entry ($id, $alias, $page=null, $part=null) {}


函数里的
{$alias}/
,并修改为
"alias/{$alias}/"


然后重启IIS,看看别名是否生效了...别名会显示成http://www.niuc.net/alias/isapi-rewrite-rule-for-bo-blog/

如果不喜欢这种URL样式,可以修改成其他的...把规则里的

[code]#Customized URL
RewriteRule ^(.*)/alias/([^/]*)\_?([0-9]+)?\_?([0-9]+)?/?$ $1/read\.php\?blogalias=$2&page=$3&part=$4 [I]

前面的RewriteRule ^(.*)/alias/([^/]*)\_?([0-9]+)?\_?([0-9]+)?/?改成其他的样式,然后对应修改alias/{$alias}/样式就可以了...

此修改只推荐有编写正则表达式能力的用户,如果你不知道URL REWRITE规则,或者不知道怎么写正则表达式,请不要盲目修改...

有需要的用户,可以留言,把你想要修改的样式告诉我,我帮你修改...

修改好的代码文件下载:

下载文件 (已下载 22 次)


有问题,请留言联系...

            


作者:gdgzboy@牛C网
地址:http://www.niuc.net/alias/isapi-rewrite-rule-for-bo-blog/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!



评论(1) | 引用(0) | 阅读(958)
eivll Says: Email Homepage
2008/08/07 23:27
我想改成
http://www.niuc.net/XXX可以吗?
也就是中间不要alias
这个目前好象不行,因为有可能会跟其他的rewrite冲突,正则表达式不能正确的处理后面的识别符
gdgzboy 回复于 2008/08/11 22:19
分页: 1/1 第一页 1 最后页
发表评论
昵称 [注册]
密码 游客无需密码
网址
电邮
打开HTML 打开UBB 打开表情 隐藏 记住我