Configuração HTTPD do Apache do CentOS (403 Proibido)

6

Isto é o que eu tenho no meu 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>

Ao visitar o site eu recebo um erro 403 Proibido, Os arquivos são adicionados com vsftpd e tem as permissões drwxr-xr-x

    
por Patt-tom McDonnell 28.03.2012 / 16:40

4 respostas

11

Você está usando uma instalação de estoque do CentOS, se isso estiver correto, verifique se  se o SELinux estiver no modo Impingir

getenforce

se o resultado for "Impingir"

altere-a temporariamente para permissiva

setenforce 0

e tente novamente, você também pode orientar a condição do conteúdo da web para os arquivos em seu diretório pessoal.

    
por 29.03.2012 / 18:00
6

Desative o SELinux ou execute em ROOT

setsebool -P httpd_enable_homedirs on
chcon -R -t httpd_sys_content_t /home/
chcon -R -t httpd_sys_rw_content_t /home/
    
por 03.12.2012 / 15:45
4

A resposta de Freaktor de 'setenforce 0' fez "funcionar" para mim (obrigado!)

Mas para continuar funcionando e reativar o SELinux, eu precisava

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

... isso deu ao meu diretório e a todos os arquivos e diretórios dentro dele o contexto de segurança de "httpd_t", que é uma maneira desajeitada de dizer que o SELinux permite que o httpd leia esses arquivos.

ativar o selinux novamente foi tão simples quanto

setenforce 1
    
por 10.08.2012 / 05:17
3

Você provavelmente tem uma negação em algum lugar na configuração global. Tente adicionar isso à sub-rotina vhost:

<Directory /home/mcmoddr/www>
  Order allow,deny
  Allow from all
</Directory>
    
por 28.03.2012 / 16:48