Dot-Htaccess
Apache 選項 - 子目錄的索引
如果我沒有上傳index.html ,如何防止人們查看父目錄中的文件列表?如果沒有 index.* 文件,我可以看到如何禁用文件列表。
我如何允許根目錄的文件列表,而不是任何其他子目錄?
提前致謝。
由於您標記了 question
.htaccess
,您可以.htaccess
在 Apache 2.4 的根文件中執行以下操作:# Default - Directory listings disabled (mod_autoindex) Options -Indexes # Override - Allow directory listings for the root only <If "%{REQUEST_URI} == '/'"> Options +Indexes </If>
通常,子目錄將繼承您在 Apache 中應用於其父目錄的相同設置。而且,據我所知,您無法更改它,並且不存在將指令範圍限制為僅單個目錄級別的方法。
這意味著您需要:
- 在父目錄上設置您想要的選項/指令
- 更改/覆蓋/否定所有(目前和新的)子目錄的選項/指令。
而不是單獨為每個子目錄執行此操作,而是使用
DirectoryMatch
指令執行此操作是最簡單的。在您的主要 httpd.conf (或包含)集中
<Directory "/path/to/example.com/"> # enable directory listings Options +Indexes </Directory> <DirectoryMatch "/path/to/example.com/.*/"> # Disable directory listings for all sub directories of /path/to/example.com/ Options -Indexes </Directory>
(未測試)