我的开发环境的文件夹结构类似于
/服务器/ PROJECT1
/服务器/项目2
/服务器/根
在/ server中我有一个htaccess文件,它将所有来自dev。*的内容重写为/ server / root,如此;
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^dev [NC]
RewriteRule ^(.*)$ root/$1 [L,QSA]
</IfModule>
这很有效,但当使用类似于dev.local.com/project1
的URL时,在/ server / project1中存在具有重写规则的htaccess时失败了我希望它忽略/ server / project1中的htaccess文件,并始终指向/ root我该怎么做?
答案 0 :(得分:0)
如果子目录中有规则,那么这些规则将始终优先于父目录中的规则。在apache 2.2中,您可以做的最好的事情是使用RewriteOptions
继承父目录中的规则子目录中的规则:
RewriteOptions inherit
根据您使用的规则,不确定这是否会有所帮助。
在apache 2.4中,RewriteOptions
指令还有一些选项。您现在可以使用“InheritBefore”选项将规则粘贴到当前子目录中的规则之前的主目录中。
您唯一的另一个选择是设置您的vhost,使dev
位于自己的vhost中,文档根目录位于/root/
。