除了mod_rewrite中的一个目录之外的所有目录

时间:2011-08-04 13:52:37

标签: .htaccess mod-rewrite

我对mod_rewrite没什么问题,我完全不知道该如何处理。

我有这条规则:

RewriteRule ^([\w/]*)$ index.php/?page=$1 [L]

此规则适用于每个目录。我希望这个规则有效,但除了一个目录 - “test”。 我需要在这条规则中改变什么?

例如: 我希望这个URL重定向到index.php /?page = $ 1: http://test.com/account http://test.com/dog http://test.com/cat 我只希望这个URL不重定向到index.php /?page = $ 1: http://test.com/test(仅测试)

感谢名单!

1 个答案:

答案 0 :(得分:4)

在重写规则之前添加此 RewriteCond 行,所以它看起来像这样:

RewriteCond %{REQUEST_URI} !^/test(/|$)
RewriteRule ^([\w/]*)$ index.php/?page=$1 [L]

如果(对于某些奇怪的原因)它不起作用 - 请提供一个工作URL(需要重定向的URL)和不应该重定向的URL的示例。