0
http://httpd.apache.org/docs/2.2/rewrite/intro.html说:阿帕奇重写规则的正则表达式问题
在了mod_rewrite的!
角色可以一个正则表达式前使用否定它。这是,只有当字符串不匹配表达式的其余部分时,字符串才会被认为匹配。
但是,我的配置只适用于第一条规则,但不适用于第二条规则。有人能告诉我为什么吗?
RewriteCond %{HTTP_HOST} !^static\.example\.com
RewriteCond %{HTTP_HOST} ^host\.example\.com
RewriteRule ^(/global/.*)$ /dir1
RewriteRule !^(/global/.*)$ /dir2 #this rule doesn't work.
为什么不使用。*而不是因为你的第二个正则表达式会匹配没有被第一个正则表达式匹配的任何东西? – flec
'RewriteCond'只适用于它上面的直接规则。这是你的预期行为?另外,如果你在'/ dir1'重定向上设置了'[L]'标志,那么你可以使用@flec的建议。 –
你可以发布第二条规则不适用的URL吗?这个规则在哪里使用(.htaccess或httpd.conf)? –