Maison  >  Article  >  développement back-end  >  Comment interdire la liste des répertoires en php

Comment interdire la liste des répertoires en php

PHPz
PHPzoriginal
2020-09-25 13:59:382673parcourir

Comment interdire le référencement des répertoires en PHP : recherchez et ouvrez d'abord le fichier "httpd.conf" ; puis ajoutez le symbole "–" devant "Index" dans "Options Index FollowSymLinks" ; .

Comment interdire la liste des répertoires en php

Recommandé : "Tutoriel vidéo PHP"

Méthode de configuration pour désactiver l'affichage de la liste des fichiers du répertoire dans Apache

Si vous saisissez l'adresse d'un répertoire virtuel : http://localhost:8080/b/

S'il n'y a pas d'index.html dans le répertoire virtuel, le navigateur affichera également la structure des répertoires du répertoire virtuel. Répertoriez les fichiers et sous-répertoires sous ce répertoire virtuel.

Comment empêcher Apache d'afficher les listes de répertoires ?

Pour empêcher Apache d'afficher la liste de la structure des répertoires, supprimez simplement les index dans Option.

Par exemple, jetons un œil à la configuration d'un répertoire :

<Directory "D:/Apa/blabla">
    Options Indexes FollowSymLinks #----------> Options  FollowSymLinks AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Il vous suffit de supprimer les index dans le code rouge ci-dessus pour empêcher Apache d'afficher la structure des répertoires. L'utilisateur ne verra pas la liste des fichiers et sous-répertoires de ce répertoire.

La fonction des index est d'afficher la structure des répertoires lorsqu'il n'y a pas de fichier index.html dans le répertoire. Si les index sont supprimés, Apache n'affichera pas la liste du répertoire.

Si elle est définie ainsi, la liste des répertoires peut toujours être affichée :

<Directory / >
    Options  FollowSymLinks AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

La deuxième méthode

Modifier le fichier httpd.confModifier le fichier httpd.conf

vi ./conf/httpd.conf

Recherchez le contenu suivant :

……
<Directory “C:/Program Files/Apache2.2/htdocs”>
    #
    # Possible values for the Options directive are “None”, “All”,
    # or any combination of:
     Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that “MultiViews” must be named *explicitly* — “Options All”
    # doesn’t give it to you.
    #
    # The Options directive is both complicated and important. Please see
    # http://httpd.apache.org/docs/2.2/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks
    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be “All”, “None”, or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None
    #
    # Controls who can get stuff from this server.
    #
    Order allow,deny
    Allow from all
</Directory>
……

Dans Options Index FollowSymLinks, ajoutez le symbole – devant Indexes.

C'est-à-dire : Options -Index FollowSymLinks

[Remarque : avant les index, ajoutez + pour autoriser la navigation dans le répertoire ; ajoutez - pour interdire la navigation dans le répertoire. 】

Dans ce cas, l'ensemble d'Apache interdit la navigation dans les répertoires.

S'il s'agit d'un hôte virtuel, ajoutez simplement les informations suivantes :

<Directory “D:\test”>
     Options -Indexes FollowSymLinks
     AllowOverride None
     Order deny,allow
     Allow from all
</Directory>

Dans ce cas, la navigation dans le répertoire sous le projet de test est interdite.

Remarque : n'oubliez pas de ne pas remplacer « Autoriser de tous » par « Refuser de tous », sinon l'intégralité du site Web ne pourra pas être ouverte.

Il existe une autre méthode :

Vous pouvez saisir

<Files *>
Options -Indexes
</Files>

dans le fichier .htaccess du répertoire racine pour empêcher Apache de répertorier la structure des répertoires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn