CentOS Apache HTTPDconfiguration(403 Forbidden)

这是我在我的httpd.conf中

<VirtualHost *:80> ServerAdmin [email protected] ServerName mcmoddr.com ServerAlias www.mcmoddr.com DocumentRoot /home/mcmoddr/www/ ErrorLog /mcmoddr/logs/error.log CustomLog /mcmoddr/logs/accesslog combined </VirtualHost> 

当访问我的网站时,我得到了一个403 Forbidden错误,这些文件被添加了vsftpd并且有权限drwxr-xr-x

您正在使用CentOS的股票安装,如果是正确的,请检查SELinux是否处于强制模式

 getenforce 

如果结果是“执行”

暂时改变为宽容

 setenforce 0 

并再次尝试,您还可以将网页内容的状况引导至您的主目录中的文件。

禁用SELinux或在ROOT中运行

 setsebool -P httpd_enable_homedirs on chcon -R -t httpd_sys_content_t /home/ chcon -R -t httpd_sys_rw_content_t /home/ 

您可能在全局configuration中都有一个拒绝的地方。 尝试添加到vhost节:

 <Directory /home/mcmoddr/www> Order allow,deny Allow from all </Directory> 

怪胎的'setenforce 0'的答案做了“工作”为我(谢谢!)

但要保持它的工作,并重新启用SELinux,我需要

 sudo chcon -Rv --type=httpd_t /path/to/my/files 

…这给了我的目录和其中的所有文件和目录的安全上下文“httpd_t”这是一个笨拙的方式说SELinux让httpd读取这些文件。

再次启用selinux就像

 setenforce 1