我其实想知道,
如果我将.htaccess放在/public_html
文件夹和/public_html/example_site/
内,/public_html/example_site/
内的页面是否会同时使用这两个页面?
如果争论相互矛盾,两者中哪一个会赞成?
用例
我希望将一些规则应用于我托管的每个网站,但有一些特定于网站的.htaccess规则。因此,我想使用两个(或更多).htaccess文件。
答案 0 :(得分:1)
.htaccess
个文件适用于目录及其子目录。 “更深”的优先于目录结构中更高的那些。
顺便说一句,如果你有权访问Apache配置本身,你应该在那里放置指令并完全禁用.htaccess(AllowOverride None
)。否则,Web服务器必须扫描每个目录以查找.htaccess
文件。
答案 1 :(得分:0)
要回答第一个问题,如果存在/public_html/example_site/.htaccess
,则优先于/public_html/.htaccess
。如果存在较低级别的.htaccess,则根本不会使用/public_html/.htaccess
中的指令。
现在第二个问题:
用例 我希望将一些规则应用于我托管的每个网站,但是有一些特定于站点的.htaccess规则。因此,我想使用两个(或更多).htaccess文件。
如果您想要使用来自父.htaccess的指令,请使用:
RewriteOptions Inherit
但请记住,从父作用域继承的规则在子作用域中指定的规则之后应用。