WordPress在iis下伪静态后子目录无法访问的解决办法

WordPress 3.0.4在win2003+IIS6下伪静态后,无法访问子目录了,发现只要是非wp-开头的子目录文件夹,比如文件夹名为s的子目录,通过http://yangjunwei.com/s,都会跳转到404错误页面,相当郁闷!个人的解决方法就是在伪静态规则中为该子目录设置一条规则,以下红色为新增规则,完整规则如下:

[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through

RewriteRule /s(.*) /s$1 [L]

# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]

# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

其中的 RewriteRule /s(.*) /s$1 [L] 即为子目录的规则,大意是访问该子目录时跳转至该子目录,而非之前的404页面,同理,如有多个子目录,也可设置多条规则

注意:该子目录规则,也有童鞋说要写成

RewriteRule /s/(.*) /s/$1 [L]

但经过诺豆网亲测,如果规则中子目录后加个斜杠,当在url里输入网址时,子目录后也必须带上斜杠,如http://yangjunwei.com/s/,否则还是会跳转到404页面!如果你没出现类似问题,那么只要能正常访问,怎么写都行!