web-dev-qa-db-fra.com

IIS: Comment servir un fichier sans extension?

J'utilise IIS 8 sur Windows 8.1. J'ai un fichier XML et il me faut un accès via (nom_serveur)/(chemin)

(path) est prédéfini par quelqu'un d'autre et ne contient pas d'extension. J'ai essayé la solution simple de supprimer le fichier .xml du nom de fichier, mais IIS returns HTTP Error 404.3 - Not Found

Dans le "Chemin physique" renvoyé avec l'erreur est le chemin de fichier correct, qui lorsque je copie-coller à Exécuter ouvre le fichier correct.

S'il vous plaît laissez-moi savoir si cela est possible.

53
xander

En supposant que (chemin) soit un répertoire physique sur votre ordinateur, créez un nouveau fichier web.config dans ce répertoire avec le contenu suivant:

 <?xml version="1.0" encoding="UTF-8"?>
 <configuration>
     <system.webServer>
         <staticContent>
             <mimeMap fileExtension="." mimeType="text/xml" />
         </staticContent>
     </system.webServer>
 </configuration>

Vous indiquez IIS que pour ce répertoire uniquement, tout fichier sans extension définie par ailleurs (dans les types MIME) doit être considéré comme un fichier xml. Les autres types de fichier dans le même chemin doivent toujours fonctionner.

92
Peter Hahndorf

Cela peut être fait dans IIS 6 également/sans utiliser web.config, mais en utilisant l’interface graphique de gestion pour ajouter un type MIME pour l’extension . ici:

enter image description here

Par exemple, pour servir un .well-known/acme-challenge jeton, crée un répertoire virtuel appelé .well-known, et demandez-lui de prendre son contenu dans un répertoire physique (qui ne peut pas avoir de noms avec des points en tête dans Windows). Ajoutez ensuite un text/plain Type de MIME pour l'extension . dans ce répertoire et vous pouvez acquérir manuellement les nouveaux certificats letsencrypt pour un domaine actuellement servi par un ancien IIS.

16
MattBianco

Changer les configurations à la main peut parfois être risqué. IIS fournit une méthodologie pour mettre à jour les types MIME via IIS également comme ci-dessous. Les instantanés concernent IIS v10 installé sur un windows 10 box:

  1. Accédez à la fonctionnalité Types MIME du répertoire virtuel de votre site Web:

enter image description here

  1. Configurez le type mime pour prendre en charge tous les fichiers sans extension:

enter image description here

Ces étapes enregistrent efficacement les modifications apportées à web.config de votre site Web ou de votre répertoire virtuel (sous votre site Web) comme suggéré par @PeterHahndorf dans son post .

8
RBT