web-dev-qa-db-fra.com

Autoriser la liste des répertoires pour les sous-répertoires uniquement

J'utilise un espace Web hébergé sur IIS 7.5 (selon phpinfo ()). Actuellement, j'active les listes de répertoires pour un répertoire et tous ses sous-répertoires en plaçant un fichier web.config comme

<location path=".">
    <system.webServer>
      <directoryBrowse enabled="false" />
    </system.webServer>
</location>

en elle. Existe-t-il un moyen de désactiver la liste de répertoires dans le répertoire lui-même mais de l'activer pour tous ses sous-répertoires sans placer un fichier web.config dans chaque sous-répertoire ou répertorier ici tous les sous-répertoires?

2
Jens

Si cela fonctionne de manière similaire à Apache, vous pouvez simplement créer un fichier index.php (ou quel que soit votre fichier d'index de répertoire) dans le répertoire dans lequel vous ne souhaitez pas voir une liste de répertoires.

2
MrWhite

Oui si vous allowOverride, puis ajoutez un nouveau fichier web.config dans le dossier que vous souhaitez désactiver.

Donc, dans votre dossier parent, web.config devrait ressembler à ceci.

<configuration>
   <location path="." allowOverride="True">
      <system.webServer>
         <directoryBrowse enabled="True" />
      </system.webServer>
   </location>
<configuration>

Dans les dossiers que vous souhaitez désactiver, parcourez le fichier web.config.

<configuration>
   <location path=".">
      <system.webServer>
         <directoryBrowse enabled="False" />
      </system.webServer>
   </location>
<configuration>

Pour plus d'informations, consultez ceci article .

3
Pablo Jomer