Por padrão, o apache é configurado para mostrar os seguintes arquivos em vez da listagem de diretórios:
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
Você pode listar recursivamente tudo isso com isto:
find /var/www -name 'index.*'
Se o seu diretório tiver algum desses, o apache mostrará, em vez de algo assim:
Para corrigir isso, exclua ou renomeie os arquivos index. * para outra coisa. Como alternativa, você pode alterar a diretiva DirectoryIndex
e recarregar o apache ( /etc/init.d/apache2 reload
).
Por padrão, o apache DocumentRoot
é /var/www
. Somente arquivos nessa pasta são exibidos. Além disso, os links simbólicos são seguidos somente se o destino for de propriedade do mesmo usuário. Se você tiver arquivos em /var/www
, não precisa se preocupar com isso.
O Apache não lista arquivos que www-data
usuário não pode ler. Contanto que haja r
e x
o último grupo (marcado com ^
abaixo), está tudo bem:
drwxrwxr-x 4 user group 4014 Feb 4 23:16 filename
^ ^
Tecnicamente, você precisa apenas de x
para pastas. Seus comandos para alterar as permissões estavam corretos:
chmod -R 755 /var/www
Se o apache não listar nenhum arquivo, mesmo se você não tiver nenhum arquivo de índice em sua pasta, use
tail -f /var/log/apache2/error.log
para ver quais erros o apache encontrou.