修改 Apache 默认的 DocumentRoot 路径后,Apache 启动失败,失败提示 DocumentRoot must be a directory,但确认修改后的路径是目录,且具有 linux 读写权限。在网上查找了很多,大部分都是由于 selinux 权限机制引起的,网上的解决方法大多为以下两种:
1,修改目录权限,因为 apache 默认的用户和用户组为 apache,该用户只能访问权限为 httpd_sys_content_t 的目录文件,假设想把 DocumentRoot 改为目录 /home/user/www,就修改该目录的权限,命令如下:
chcon -R -t httpd_sys_content_t /home/user/www
如此,就使得 apache 可以访问该目录
2,禁用 selinux
编辑 /etc/sysconfig/selinux 把其中 SELINUX=enforcing 改为 SELINUX=disable
保存后重启系统,问题解决