使用Apache做爲web服務器, 常常會遇到無權限的問題, 服務器顯示:html
Forbidden You don't have permission to access / on this server.
形成這種問題的緣由不少,最多見的是在Unix/Linux/MacOS系統中, 該目錄在 文件系統 中沒有權限, 可使用命令 chmod -R 777 目錄名
爲該目錄賦權限web
其次多是Apache的配置禁止了訪問權限, 須要配置以下ubuntu
<Directory "/www"> Options Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all Require all granted </Directory>
Options
是對該目錄的一些選項, Indexes
表示在沒有index.html等文件的時候顯示文件列表AllowOverride All
表示容許使用.htaccess
文件重寫URLOrder allow,deny
和Allow from all
是對ip的訪問配置Require all granted
意思是容許全部的請求使用某些第三方軟件來安裝的Apache, 好比在ubuntu下用
apt-get
命令, 默認配置文件中會有這麼一段配置:瀏覽器
<Directory /> Options FollowSymLinks AllowOverride ALL Require all denied </Directory>
出於安全方便的考慮, 將根目錄/
(也包含它的子目錄)所有使用Require all denied
設置爲禁止訪問,將此行註釋掉便可訪問, 但不建議這麼作, 最好是僅對須要訪問的目錄使用Require all granted
來單獨賦權安全
其餘還有一些, 好比目錄下存在一個.htaccess
文件, 內容爲Deny from all
, 或者目錄下存在一個靜態文件index.html
,內容爲服務器
<html> <head> <title>403 Forbidden</title> </head> <body> <p>Directory access is forbidden.</p> </body> </html>
也可使瀏覽器顯示一個無權限的狀態ide
這兩種方法一般是在沒法修改服務器配置和Apache配置的狀況下, 須要禁止一些目錄的訪問權限的時候使用ui