289 votes

Comment désactiver la navigation dans le répertoire ?

Je veux désactiver la navigation dans les répertoires du dossier /galerias et de tous les sous-répertoires.

Index de /galerias/409

* Parent Directory
* i1269372986681.jpg
* i1269372986682.jpg
* i1269372988680.jpg

19voto

L'une des choses les plus importantes dans la mise en place d'un serveur web apache sécurisé est de désactiver la navigation dans les répertoires. Par défaut, Apache est livré avec cette fonctionnalité activée, mais il est toujours bon de la désactiver, sauf si vous en avez vraiment besoin. Ouvrez le fichier httpd.conf dans le dossier apache et trouvez la ligne qui ressemble à ceci :

Options Includes Indexes FollowSymLinks MultiViews

puis supprimez les index de mots et enregistrez le fichier. Redémarrez Apache. C'est tout

8voto

George Points 81

Si vous choisissez de modifier votre fichier httpd.conf pour résoudre ce problème et que vous avez plusieurs directives Options, vous devez ajouter un - ou un + avant chaque directive. Exemple :

Options -Indexes +FollowSymLinks

3voto

packetie Points 1694

Ce n'est pas une réponse, juste mon expérience :

Sur mon Ubuntu 12.04 apache2, je n'ai pas trouvé de Indexes dans apache2.conf ou httpd.conf, heureusement je l'ai trouvé dans sites-available/default . Après l'avoir supprimé, il ne voit plus la liste des répertoires. Il faut peut-être le faire pour sites-available/default-ssl .

3voto

starkeen Points 29161

Pour compléter la réponse de @GauravKachhadiya :

IndexIgnore *.jpg

signifie "cacher seulement .jpg des fichiers d'extension de l'indexation.

La directive IndexIgnore utilise des expressions de type joker pour établir une correspondance avec les répertoires et les fichiers.

  • un caractère étoile, il correspond à tous les caractères d'une chaîne de caractères, par exemple : foo ou foo.extension, dans l'exemple suivant, nous allons désactiver la liste des répertoires, aucun fichier ou répertoire n'apparaîtra dans l'index :

    IndexIgnore *

Ou si vous voulez cacher les fichiers spécifiques, dans la liste des répertoires, alors nous pouvons utiliser

IndexIgnore *.php

*.php => correspond à une chaîne de caractères commençant par un caractère quelconque et se terminant par .php.

L'exemple ci-dessus cache tous les fichiers qui se terminent par .php.

2voto

زياد Points 782

Ajoutez ceci dans votre fichier .htaccess :

Options -Indexes

Si cela ne fonctionne pas pour une raison quelconque, essayez ceci dans votre fichier .htaccess :

IndexIgnore *

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X