web-dev-qa-db-fra.com

Forcer la liste des répertoires même si index.html est présent

J'ai des fichiers dans mon répertoire/www /. Est-il vrai qu'en mettant simplement un fichier index.html dans ce répertoire, le reste des fichiers est maintenant "protégé du public"? Un pirate extérieur à pourrait-il toujours forcer la liste des répertoires ou accéder à ces fichiers? Comment le feraient-ils si c'était possible?

Je suis conscient des moyens de sécuriser mon système de fichiers, mais je me demandais dans quelle mesure juste mettre un fichier index sur la protection des fichiers/répertoires.

5
dukevin

Si vous utilisez Apache et qu'un fichier d'index est spécifié (qui est présent), il est impossible de tromper Apache pour qu'il n'utilise pas le fichier d'index. Cela provoquera simplement un 404.

Certains frameworks placent un fichier index.php dans chaque répertoire, avec aussi peu de contenu que ceci:

<?php
// silence is golden
?>

La raison simple pour mettre réellement un fichier, est que bien que la plupart (95%) des serveurs Web qui existent sont Apache, il y en a quelques-uns, qui ne le sont pas. Certains d'entre eux ne prennent pas en charge les paramètres .htaccess, généralement utilisés pour refuser la liste de répertoires.

La vue de répertoire que vous voyez est probablement causée par l'option option Indexes de votre site Web. Vous pouvez facilement la désactiver en la supprimant complètement ou en créant un fichier .htaccess avec le contenu suivant:

Options -Indexes
8
Jan Dragsbaek