Apache-2.2
指定要查找 .htaccess 文件的目錄
我讀到為所有目錄啟用 .htaccess 會導致性能成本,因為還會掃描所有子文件夾以查找 .htaccess 文件。
我只想讀取 .htaccess 文件:/var/www/xgclan.com/public_html 和 /var/www/xgclan.com/public_html/forum
我在 apache2.conf 中配置了以下內容(對於 /var/www/xgclan.com/public_html)
<Directory /> Options FollowSymLinks AllowOverride None Require all denied </Directory> <Directory /usr/share> AllowOverride None Require all granted </Directory> <Directory /var/www/> Options FollowSymLinks AllowOverride None Require all granted </Directory> <Directory /var/www/xgclan.com/public_html> Options FollowSymLinks AllowOverride All Require all granted </Directory>
但這似乎不起作用.. .htaccess 文件的子目錄也被讀取
我應該提到 xgclan.com 是一個虛擬主機。我究竟做錯了什麼?
我能夠通過以下方式防止檢查子目錄中的 .htaccess 文件:
<Directory /var/www/xgclan.com/public_html/> Options FollowSymLinks AllowOverride None Require all granted </Directory>
但這也阻止了 /var/www/xgclan.com/public_html/forum 中的 .htaccess 文件所以我嘗試添加以下規則以允許該特定目錄:
<Directory /var/www/xgclan.com/public_html/forum> Options FollowSymLinks AllowOverride All Require all granted </Directory>
但這似乎不起作用。
您是否嘗試使用 VirtualHost 聲明添加目錄部分?
在瀏覽器上訪問主機時,您的 error_log 輸出是什麼?您是否收到apache 文件中所述的任何錯誤?
好的,因此,如果您希望 apache 僅掃描整個虛擬主機目錄中的兩個特定文件夾以查找 .htaccess 文件,則應指定要禁止和允許的文件,例如:
<Directory /var/www/xgclan.com/public_html> Options FollowSymLinks AllowOverride All Require all granted </Directory> <Directory /var/www/xgclan.com/public_html/*/> Options FollowSymLinks AllowOverride None Require all granted </Directory> <Directory /var/www/xgclan.com/public_html/forum> Options FollowSymLinks AllowOverride All Require all granted </Directory>