如何避免domain.com DocumentRoot
下的sub.domain.com的domain.com/.htaccess规则?
DocumentRoot /domain
DocumentRoot /domain/sub
Redirect 301 /art http://domain.com/article/art
为什么sub.domain.com/art还有301重定向到domain.com/article/art,如果只有domain.com有此规则?
是否有一些XAMPP 1.7.4错误?
更新:它也无法使用(sub.domain.com/art仍然返回301重定向到domain.com/article/art):
<VirtualHost *:80>
DocumentRoot /domain
ServerName domain.com
<Directory />
AllowOverride None
</Directory>
<Directory /domain>
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /domain/sub
ServerName sub.domain.com
<Directory />
AllowOverride None
</Directory>
<Directory /domain/sub>
</Directory>
</VirtualHost>
答案 0 :(得分:0)
一种方法是避免使用.htaccess并使用虚拟主机。
domain.com的一个VirtualHost。
subdomain.com的一个VirtualHost。
在每个VirtualHost中,您可以为第一个定义<Directory />
和<Directory /domain>
,为第二个定义<Directory />
和<Directory /domain/sub>
。然后删除所有.htaccess或在<Directory />
中使用 AllowOverride None (效果相同)。当他不必在所有父目录中检查.htaccess是否存在时,你也会看到apache更快。
所有目录说明可以包含与您在.htaccess中通常使用的内容完全相同的内容。当你不希望他编辑apache配置文件时,.htaccess是一种让别人定义一些目录指令的方法;但.htaccess文件与目录树继承有关。