Quelles extensions de file vont toujours être correctes avec IIS?

Nous servons des files pour notre propre application pour téléchargement à partir de servers Web, y compris les IIS. Un tel file comporte l'extension .config . Il s'avère que IIS ne servira pas, car il pense qu'il s'agit d'un file de configuration propre. Je pense plutôt à l'utilisation juste de la .configuration place. Est ce que ça va? Existe-t-il une list d'extensions «interdites» pour servir par IIS?

Oui, il existe une list d'extensions pour bloquer appelé Request Filtering, vous pouvez exécuter: appcmd list config -section: system.webServer / security / requestFiltering vous verrez quelque chose comme: … …

Dans ma machine Windows 7, la list comprend:
.asa, .asax, .ascx, .master, .skin, .browser, .sitemap, .config, .cs,
.csproj, .vb, .vbproj, .webinfo, .licx, .resx, .resources, .mdb, .vjsproj,
.java, .jsl, .ldb, .dsdgm, .ssdgm, .lsad, .ssmap, .cd, .dsprototype,
.lsaprototype, .sdm, .sdmDocument, .mdf, .ldf, .ad, .dd, .ldd, .sd,
.adprototype, .lddprototype, .exclude, .refresh, .comstackd, .msgx, .vsdisco

Notez que vous pouvez également inclure dans votre application plus d'extensions ou autoriser d'autres extensions qui pourraient ne pas être autorisées en utilisant un web.config dans votre dossier.

Avertissement, ne faites pas cela puisque les files .config peuvent inclure des informations sensibles.

Par exemple, si vous supprimez un web.config à l'intérieur de votre application avec les contenus suivants, il permettra aux users de download les files .config:

 <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <security> <requestFiltering> <fileExtensions> <remove fileExtension=".config" /> </fileExtensions> </requestFiltering> </security> </system.webServer> </configuration> 

Pour plus d'informations, voir: http://www.iis.net/configReference/system.webServer/security/requestFiltering

Enfin, si vous utilisez une extension random, vous devez vous assurer que IIS sait également quel type de mime utiliser et connaître l'extension que vous utiliserez si vous souhaitez autoriser les téléchargements de files statiques, et cela doit être à l'intérieur section staticContent (appcmd list config-section: system.webServer / staticContent). Vous pouvez également configurer ceci dans web.config comme ci-dessus.

Vous pouvez simplement .zip tous vos files, puis vous pouvez utiliser n'importe quelle extension que vous souhaitez.