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