Linux更改Apache網站目錄出錯:Document root must be a directory解決
修改
DocumentRoot
<Directory "C:/Apache/Apache2/htdocs"
重啟apache 報錯Document root must be a directory
然後 找原因 確實是加上的目錄呢
原來 只需如此
詢問大神的解釋是
“這是系統開啟了SELinux安全策略造成的。把目錄或文件設成了 user_home_t 類型,因此 apache 的進程沒有權限,無法訪問。針對Apache的進程所使用的SELinux target policy規定了apache的進程只能訪問 httpd_sys_content_t 類型的目錄或文件。”
解決辦法
更改文件夾權限
把目錄或文件的策略類型改成 httpd_sys_content_t 就可以了。
1
chcon -R -t httpd_sys_content_t /home/www/
然後用 ls -Z 命令查看文件目錄的策略類型(目錄權限)。
1
[root@localhost home]# ls -Z
2
drwx------. mysql mysql unconfined_u:object_r:user_home_dir_t:s0 mysql
3
drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 www
如此便好,ok!