mod_rewrite,添加条件

时间:2013-05-29 22:06:29

标签: php .htaccess mod-rewrite

我有这个.htaccess

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*)$ zone.php [L]

现在它运作良好。如何让这个RewriteRule在某个目录中不起作用?

我不希望该规则适用于domain.com/manage /

中的任何内容

3 个答案:

答案 0 :(得分:1)

使用以下代码更改您的代码:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule (?!^manage/)^.*$ /zone.php [L,NC]

答案 1 :(得分:0)

您可以将规则包含在目录标记内,即:

<Directory "/foo">
  ... your rules here...
</Directory>

答案 2 :(得分:0)

如果目录不是RewriteCond,则使用manage关键字添加条件以应用规则

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/manage(/|$)
RewriteRule ^(.*)$ zone.php [L]