Apache htaccess子文件夹中的文件

Apache htaccess子文件夹中的文件,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我有一个文件夹结构的开发环境,如 /服务器/项目1 /服务器/项目2 /服务器/根目录 在/server中,我有一个htaccess文件,它将dev.*中的所有内容重写为/server/root,就像这样 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_HOST} ^dev [NC] RewriteRule ^(.*)$ root/$1 [L,QSA] </IfModule>

我有一个文件夹结构的开发环境,如

/服务器/项目1

/服务器/项目2

/服务器/根目录

在/server中,我有一个htaccess文件,它将dev.*中的所有内容重写为/server/root,就像这样

<IfModule mod_rewrite.c>
   RewriteEngine on

   RewriteCond %{HTTP_HOST} ^dev [NC]
   RewriteRule ^(.*)$ root/$1 [L,QSA]

</IfModule>

重新启动发动机
重写cond%{HTTP_HOST}^dev[NC]
重写规则^(.*)$root/$1[L,QSA]
这是可行的,但如果在使用类似于dev.local.com/project1的URL时,在say/server/project1中存在具有重写规则的htaccess,则会失败


我希望它忽略/server/project1中的htaccess文件,并始终指向/root。如何执行此操作?

如果子目录中有规则,则这些规则将始终优先于父目录中的规则。在Apache2.2中,您最好在子目录中的规则之后使用继承父目录中的规则:

RewriteOptions inherit
不确定这是否有用,取决于您使用的规则

在Apache2.4中,该指令还有几个选项。您现在有了“InheritBefore”选项,可以在当前子目录中的规则之前将规则粘贴到父目录中


您唯一的其他选择是设置vhost,使
dev
位于自己的vhost中,文档根位于
/root/

中,我希望规则向下而不是向上层叠,如果我不想修改“子文件夹”中的所有htaccess文件,那么vhost是唯一的方法吗?@Alex这可能是最简单的方法。