Verifique as permissões de arquivo nos subdiretórios. Se você tiver o selinux ativado, execute o seguinte:
restorecon -Rv /var/www
Eu posso ver todos os arquivos no diretório raiz (/ var / www), mas assim que eu entro em um sub-diretório (por exemplo, / var / www / test) eu recebo um erro 403 Proibido. Estou executando o Ubuntu 12.04.01.
Tentou pesquisar problemas semelhantes, mas não encontrou solução.
Alguma sugestão? Eu preciso consertar isso com urgência, então qualquer sugestão é muito apreciada!
Atualização: Checked error log in /var/log/apache2/error.log e contém:
client denied by server configuration: /var/www/test/
Atualização: Se eu entrar em www-data e tentar fazer o cd em qualquer um dos subdiretórios, isso me dá o erro:
cd test
sh: 4: cd: can't cd to test
Atualização: Fazendo ls -l em / var / www eu recebo:
drwx------ 3 nicklas nicklas 4096 Sep 13 18:35 test
Poderia ser esse o problema?
Atualização: consertei! Eu corri o seguinte comando, e parece estar funcionando bem agora.
cd /var/www
chown -R www-data:www-data *
Verifique as permissões de arquivo nos subdiretórios. Se você tiver o selinux ativado, execute o seguinte:
restorecon -Rv /var/www
O diretório /var/www
não deve ser de www-data
. Não como usuário e não como grupo.
Você deve chmod -R ug+rwX,o-w,o+rX /var/www
.
Nesse caso, você deve sempre verificar primeiro seu log de erros. Deve estar em
/var/log/apache/
ou /var/log/httpd/
ou algo similar por padrão.
Eu estou supondo que isso é causado pela opção Indexes, que controla se alguém pode listar arquivos em algum diretório do HTTP ou não. Veja mais algumas informações sobre isso.