我自己有維護一個網站 (含 Linux 主機 + Apache),有些放檔案及圖片的資料夾沒有做保護,用瀏覽器就可以看到整個資料夾的索引,也可以任意下載裡面的檔案,後來知道可以在每個資料夾下放 .htaccess 檔來做保護,扒了一些中文的相關文章都有讀沒有懂,擺了 .htaccess 檔也沒用,最後讀了這篇原文說明 (Apache Tutorial: .htaccess files) 再加上實際測試才搞通 !

 

原來別人應該是以架設在網頁空間中的網站做說明的,這種狀況只要把 .htaccess 檔 (裡面要有這個語法 - Options All –Indexes) 放在你要保護的資料夾下就可以了,但是以我的狀況來說,這種做法並不是最佳做法,而且會影響整個網站的效能,建議做法是直接在 httpd.conf 檔中為每一個要保護的資料夾加下列的語法:

<Directory "/opt/HTTPServer/htdocs/en_US/images">

    Options All -Indexes

    Order deny,allow

</Directory>

其中 /opt/HTTPServer/htdocs/en_US 是我的 Document Root,images 是我要保護的資料夾。

 

 

至於我把 .htaccess 檔放在要保護的資料夾下沒有用的原因是,我在 httpd.conf 中沒有把 AllowOverride None 改成 AllowOverride All 造成的 !


Jump 發表在 痞客邦 PIXNET 留言(0) 人氣()