Apache-2.2

使用 .htaccess 文件阻止將 .htaccess 文件載入到子目錄

  • February 2, 2011

(Centos 5.2、Apache 2.2.8)

當一個文件位於另一個子目錄中時,.htaccess 文件如何工作?

例如,如果我在 /var/www/html/images 中放置一個 .htaccess,它只允許訪問 *.jpeg 文件,而在 /var/www/html/images/subdir 中放置一個 .htaccess,它允許訪問所有將優先考慮 /var/www/html/images/subdir 中的文件?

如果子 .htaccess 優先,有沒有辦法將父 .htaccess 設置為不允許子目錄覆蓋其中的設置?

較低的 .htaccess 規則將覆蓋父目錄的 .htaccess 文件。Apache 從根目錄爬上目錄樹,並從每個目錄中的 .htaccess 建構配置樹,稍後對配置的更改會覆蓋先前的設置。

/var/www/.htaccess

/var/www/html/images/.htaccess覆蓋

/var/www/html/images/subdir/.htaccess覆蓋

我不認為 .htaccess 文件可以限制較低的 .htaccess 文件,但您可能會考慮禁用 .htaccess 文件(AllowOverride None)並在伺服器級別進行配置,或者在較低目錄中創建一個虛擬 .htaccess 文件並限制它是用文件權限修改的。

引用自:https://serverfault.com/questions/229913