Por que o relatório do apache é “cliente negado pela configuração do servidor”?

4

Estou executando o Fedora 23 com o Apache 2.4 e o PHP 5.6.27. Tanto o Apache quanto o PHP são instalados a partir do repositório padrão do Fedora.

Meu problema é que, apesar de definir Require all granted na configuração do host virtual do meu site, eu ainda recebo o seguinte erro ao tentar navegar em meu site (e um 403 Forbidden no meu navegador):

AH01630: client denied by server configuration: /home/kevin/appsdev/mywebapp/phpinfo.php

Esta é a minha configuração de host virtual:

<VirtualHost 172.16.3.52:80>
    ServerName localdev.mywebapp.net
    DocumentRoot /home/kevin/appsdev/mywebapp

    <Directory /home/kevin/appsdev/mywebapp>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

A configuração acima é colocada no final do arquivo de configuração httpd.conf pronto para uso fornecido com o Apache.

O Apache está sendo executado como o usuário apache .

Também defini a propriedade de /home/kevin/appsdev/mywebapp para:

chown -R apache:apache /home/kevin/appsdev/mywebapp

e minhas permissões como:

chmod -R 755 /home/kevin/appsdev/mywebapp

Eu até tentei (bastante naughtily) mudar:

<Directory />
    AllowOverride none
    Require all granted   ## default is: Require all denied
</Directory>

Eu também desativei o selinux.

Não há arquivos .htaccess no site.

Eu reiniciei o apache, mas ainda recebo o erro AH01630: client denied by server configuration.. e 403 Forbidden no meu navegador.

A execução de httpd -t me diz Syntax OK , então nada é ruim lá.

O que estou fazendo de errado, estou um pouco perplexo?

    
por Kev 17.11.2016 / 18:20

1 resposta

2

O usuário que executa o servidor da Web ( apache por padrão) deve poder abrir o arquivo. Isso significa que todo o caminho precisa estar acessível para ele. Eu vi que você está usando o diretório home /home/kevin . Esses dirs têm configuração certa para o grupo de usuários e usuários (como 0750 ), portanto, o apache não pode ir até lá.

Você pode permitir acessar arquivos e diretórios dentro de chmod o+x /home/kevin , mas qualquer um pode ler seu diretório pessoal (se ele ou ela souber o caminho correto). A melhor solução é não usar o diretório home e colocar arquivos em /var/www/ ou /srv/ e ter direitos corretos para o apache e seu usuário também.

De qualquer forma, sempre anexe a parte correspondente do log de erros à sua pergunta. Deve haver mais informações sobre o problema.

    
por 20.11.2016 / 00:05