在Apache中配置禁止目錄通路,即禁止遊覽列出的目錄/檔案清單的方法
通路網站目錄時Apache預設配置為可列出目錄/檔案清單,即當你通路http://localhost時會列出相關的目錄和檔案清單,我們可以通過修改Apache配置檔案httpd.conf來實作禁止列出目錄/檔案清單,方法如下:
1、打開apache配置檔案httpd.conf
2、找到
1 2 3 4 5 6 | <Directory /> Options Indexes AllowOverride None Order allow,deny Allow from all </Directory> |
隻需要修改Options Indexes為Options None即可,注:根據PHP運作環境安裝包的不同,Options Indexes也有可能是Options Indexes FollowSymLinks,一并改為Options None即可。
3、儲存httpd.conf,并重新開機Apache即可,此時再通路http://localhost時, 報apache http 403 禁止通路錯誤資訊
Forbidden
You don’t have permission to access / on this server.
Apache單個或多個目錄禁止通路方法
這種方法通常用來禁止通路者通路背景管理目錄或者程式目錄,方法如下
1、打開apache配置檔案httpd.conf
2、建立Directory塊,比如禁止通路某個類庫目錄,可以這樣實作
1 2 3 4 | <Directory /var/www/www.leapsoul.cn/inc> Order Deny,Allow Deny from all </Directory> |
上述代碼實作了禁止所有使用者通路www.leapsoul.cn下inc目錄的功能。如要實作禁止通路所有目錄中inc目錄的功能,隻要将
1 | <Directory /var/www/www.leapsoul.cn/inc> |
更改為
1 | <Directory /var/www/www.leapsoul.cn/*/inc> |
即可。
3、重新開機Apache伺服器。
其他說明
1、隻允許或禁止某個域名進行目錄通路
1 2 3 4 5 | <Directory /var/www/www.leapsoul.cn/inc> Order Deny,Allow Deny from abc.com Allow from apache.org </Directory> |
上述代碼實作禁止abc.com域中主機通路inc目錄,允許apache.org域中主機通路inc目錄的功能。
2、隻允許或禁止某個IP進行目錄通路
1 2 3 4 5 | <Directory /var/www/www.leapsoul.cn/inc> Order Deny,Allow Deny from 10.1.1.2 Allow from 192.168.1.0/255.255.255.0 </Directory> |
上述代碼實作禁止IP10.1.1.2通路www.leapsoul.cn/inc目錄,允許IP192.168.1子網中的主機通路www.leapsoul.cn/inc目錄的功能。
注意:Allow from 192.168.1.0/255.255.255.0等同于Allow from 192.168.1或Allow from 192.168.1.0/24