apache開啟瀏覽目錄功能的配置

來源:互聯網
上載者:User

apache開啟瀏覽目錄功能

主設定檔 httpd.conf 中修改:

1)添加支援模組。


LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so

注意一定要擁有這兩個模組,否則下面的配置不生效,返回404 Not Found錯誤。
這個模組也有可能直接編譯到Apache核心檔案httpd中去了。

2)為DocumentRoot目錄添加Options Indexes,即可組建目錄。

<Directory "/htdocs">
Options Indexes FollowSymLinks
</Directory>

這裡Indexes控制是否開啟瀏覽目錄,如果要關閉瀏覽目錄,使用

Option -Indexes

3)載入 httpd-autoindex.conf 配置

Include conf/extra/httpd-autoindex.conf


如果要關閉和的話我們可以參考下面關於關閉Apache的瀏覽目錄功能


一、預設情況
預設情況下,Apache的設定檔/etc/httpd/conf/httpd.conf中有如下參數:

引用

Options Indexes FollowSymLinks
......

 

也就是說,在目錄下沒有預設首頁面(如:index.html index.php等)時,可以讓使用者直接瀏覽web目錄架構,這可能會導致一些重要的目錄或設定檔被公開。

通常在Web應用上也會做一些安全考慮,以Bo-Blog為例,一些目錄下會有類似的檔案:

引用
# cat inc/index.php

die ('Access Denied');


這樣,可以避免使用者直接瀏覽該目錄時,看到整個目錄結構。但如果訪問它下面的子目錄就沒什麼作用了:
 
所以,這還是不太安全。

二、修改設定檔
安全起見,我建議還是把Indexes選項關閉比較好,方法有兩種:
1、全域關閉
修改上面提到的設定檔/etc/httpd/conf/httpd.conf,把:

引用
Options Indexes FollowSymLinks


改為:

引用
Options -Indexes FollowSymLinks


重啟httpd服務即可,這樣可以把所有網站的Indexes選項都取消。

2、修改.htaccess檔案
如需要針對特定的網站取消該功能,可以先開啟.htaccess支援,修改/etc/httpd/conf/httpd.conf:

引用

......
    AllowOverride None
......

 

修改為:

引用

......
    AllowOverride All
......

 

然後,在各網站的主目錄下寫入一個.htaccess檔案,內容有:

引用
# head .htaccess
Options -Indexes


RewriteEngine on
RewriteBase /
......


儲存後馬上生效。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.