Comment puis-je activer le téléchargement de fichiers * .json à partir d'un ancien site ASP.NET (IIS6, j'en suis persuadé)?
Je reçois une page 404 au lieu du fichier JSON.
Dois-je créer un fichier web.config? Qu'est-ce qu'il y a dedans?
Comment puis-je activer le téléchargement de fichiers * .json à partir d'un ancien site ASP.NET (IIS6, j'en suis persuadé)?
Je reçois une page 404 au lieu du fichier JSON.
Dois-je créer un fichier web.config? Qu'est-ce qu'il y a dedans?
Réponses:
Ajoutez le type JSON MIME à IIS 6. Suivez les instructions de Configuration des types MIME de MSDN (IIS 6.0) .
N'oubliez pas de redémarrer IIS après la modification.
MISE À JOUR: Il existe des moyens simples de le faire sur IIS7 et plus récent. L'op a spécifiquement demandé l'aide d'IIS6, je laisse donc cette réponse telle quelle. Mais cette réponse reçoit toujours beaucoup de trafic même si IIS6 est maintenant très ancien. J'espère que vous utilisez quelque chose de plus récent, donc je voulais mentionner que si vous avez un IIS7 plus récent ou une version plus récente, consultez la réponse de @ ProVega ci-dessous pour une solution plus simple pour ces versions plus récentes.
.ASPX
. Encore une fois, le passage à un serveur avec IIS7 offre beaucoup plus de solutions plus simples.
Si vous souhaitez ajouter manuellement le support à votre site, vous pouvez simplement ajouter ce qui suit à votre web.config dans la section system.webServer :
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
Cela ajoutera une configuration "locale" sous IIS. Cela ne fonctionne pas dans IIS6, mais fonctionne dans IIS7 et plus récent.
web.config
chemin complet .
Cannot add duplicate collection entry of type 'mimeMap' with unique key attribute 'fileExtension' set to '.csv'
fois que j'ai supprimé le doublon, aucun problème.
Accédez à IIS, sélectionnez votre application et recherchez les types MIME
Cliquez sur Ajouter à partir du panneau de droite
Extension de nom de fichier = .json
Type MIME = application / json
Après avoir ajouté le type de fichier .json dans les types MIME , redémarrez IIS et essayez d'accéder au fichier json
Accédez à web.config de cette application et ajoutez-y ces lignes
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
Lors de l'ajout de la prise en charge du type mimetype (comme suggéré par @ProVega), il est également recommandé de supprimer le type avant de l'ajouter - ceci afin d'éviter des erreurs inattendues lors du déploiement sur des serveurs où la prise en charge du type existe déjà, par exemple:
<staticContent>
<remove fileExtension=".json" />
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
C:\Windows\System32\inetsrv\config
: applicationHost.config
J'ai juste eu ce problème mais j'ai dû trouver la configuration pour IIS Express afin que je puisse ajouter les types mime. Pour moi, il était situé à C:\Users\<username>\Documents\IISExpress\config\applicationhost.config
et j'ai pu y ajouter la bonne "carte mime".
<mimeMap>
nœud: <remove fileExtension=".json" />
. Vous ne devriez pas avoir à toucher le fichier applicationhost.config (ou machine.config). Cela étant dit, la modification de ces fichiers peut être utile si vous créez fréquemment de nouveaux sites et ne souhaitez pas avoir à modifier le web.config pour chaque site. Cela peut fonctionner pour les environnements de développement, mais souvent vous ne pouvez pas toucher le fichier machine.config dans les environnements de production, donc je recommanderais toujours de faire le changement dans le web.config.
remove
c'était la clé pour moi