配置好apache的虛擬主機之后訪問出現錯誤
Forbidden
You don't have permission to access / on this server.
查看日志發現如下錯誤
(13)Permission denied: access to / denied (filesystem path '/home/xxx/') because search permissions are missing on a component of the path
判斷這個問題首先出現了日志應該apache是可以訪問的,然后判斷可能會是apache配置站點訪問權限的問題,檢查了一下conf文件如下:
1 <VirtualHost *:9990> 2 ServerName be.daozhang.org 3 DocumentRoot /home/daozhang/git/public 4 5 ErrorLog /var/log/httpd/daozhang/error_log 6 CustomLog /var/log/httpd/daozhang/be_access_log combined 7 <Directory "/home/daozhang/git/public"> 8 Options -Indexes MultiViews FollowSymLinks 9 AllowOverride All 10 Order allow,deny 11 Allow from all 12 </Directory> 13 </VirtualHost>
這個是沒問題的,然后判斷應該是代碼目錄的權限問題,apache對代碼目錄需要755的權限,也就是x權限,使用ls -la查看了一下public文件夾是沒問題的,然后apache需要父層文件夾都具有x權限,后來檢查時/daozhang這一層沒有,使用chmod +x daozhang修改后成功訪問。
補充:nginx會出現File not Found錯誤的時候也可以查看日志是不是沒有訪問權限。
參考 http://wiki.apache.org/httpd/13PermissionDenied