如何从mod_rewrite规则中排除一个目录?

时间:2009-12-17 03:03:12

标签: .htaccess mod-rewrite

我需要在客户端的子域上安装Expression Engine,他已经在主域上运行基于php的程序。在主域上设置数据库程序的人显然需要删除所有.php扩展名,但这使得我甚至无法运行表达式引擎的安装,因为htaccess文件中的重写。显然,我害怕对htaccess文件进行更改,因为担心搞乱根域的程序 - 如何更改这个以便我正在使用的子域目录没有应用这些规则,并且不会影响任何根域的当前设置?

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d [OR]
# This ensures that Apache will not mistake the URL mysite.com/archive/ for a request for the physical directory that stores files
RewriteCond %{REQUEST_URI}  .+\/archive\/
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php

1 个答案:

答案 0 :(得分:3)

您可以添加条件以排除该目录的URL,如:

RewriteCond %{REQUEST_URI} !^/foobar/