當你在瀏覽器輸入地址:
:8080/
如果你的文件根目錄里有 index.html,瀏覽器就會顯示 index.html的內(nèi)容,如果沒有 index.html,Apache將在瀏覽器顯示文件根目錄的目錄列表,目錄列表包括文件根目錄下的文件和子目錄。給網(wǎng)站造成安全風險。
同樣當你輸入一個虛擬目錄的地址:
:8080/My/
如果該虛擬目錄下沒有 index.html,瀏覽器也會顯示該虛擬目錄的目錄結(jié)構(gòu),列出該虛擬目錄下的文件和子目錄。
我們可以通過修改Apache的配置文件,來禁止 Apache 顯示目錄結(jié)構(gòu)列表。
打開httpd.conf ,來看一個目錄配置:
<Directory "D:/WAMP/WWW">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
你只需要將上面紅色代碼中的 Indexes 去掉,就可以禁止Apache 顯示該目錄結(jié)構(gòu)。用戶就不會看到該目錄下的文件和子目錄列表了。
Indexes 的作用就是當該目錄下沒有 index.html 文件時,就顯示目錄結(jié)構(gòu)。
現(xiàn)改為如下:
<Directory "D:/WAMP/WWW">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
另外也可以在 Indexes 前加一個減號 “-”,同樣可以禁止Apache顯示目錄結(jié)構(gòu)。
在Indexes前加 “+” 代表允許目錄瀏覽;加 “-” 代表禁止目錄瀏覽。修改如下:
<Directory "D:/WAMP/WWW">
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>