Pular para o conteúdo
Todos os conceitos

Listagem de diretório

Sem um arquivo índice, o servidor pode listar os arquivos da pasta. Aparece o que ninguém linkou.

Quando você pede uma pasta (/assets/) e ela não tem um arquivo índice (index.html), o servidor pode fazer duas coisas: recusar, ou montar na hora uma página com a lista dos arquivos daquela pasta. Essa segunda opção é a listagem de diretório, aquela página Index of /assets com um link para cada arquivo.

O problema é que a lista mostra tudo que está na pasta, inclusive o que nenhuma página referencia: um backup, uma nota, um export de banco esquecido ali. Esses arquivos deveriam ser invisíveis (ninguém tem o link), mas a listagem os revela.

GET /assets/ sem index.html pedido da pasta Listagem de /assets app.js logo.png style.css recursos públicos migration-notes.txt ninguém linkou: vazou
A pasta /assets não tem index.html, então o servidor lista os arquivos; entre os recursos públicos aparece migration-notes.txt, que nenhuma página linkou.

A defesa é desligar a listagem automática (no Apache, Options -Indexes; no nginx, autoindex off, que já é o padrão) e, acima disso, não guardar na raiz web nada que não seja para ser servido. Em Python, http.server lista diretórios por padrão: é um ótimo exemplo de como o conforto de desenvolvimento vira exposição em produção.

Aparece nestes desafios