IIS Express - 'mimeMap'上的HTTP错误500.19 0x800700b7,'fileExtension'设置为'.svg'

Jes*_*Pol 25 iis asp.net-mvc svg iis-express mime-types

我正在添加向我的Azure托管Web应用程序提供SVG和WOFF文件的功能.我找到了以下说明:

https://blogs.iis.net/richma/archive/2014/01/07/adding-mime-types-to-your-windows-azure-web-site.aspx

我接下来将以下文本添加到我的Web.config文件中:

<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
    <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
    <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
</staticContent>
Run Code Online (Sandbox Code Playgroud)

这在发布到Azure时有效.但是,现在每当我尝试在本地调试模式下为网站尝试提供的每个资源启动网站时,我都会从IIS-Express收到以下错误.

HTTP错误500.19 - 内部服务器错误

无法访问请求的页面,因为页面的相关配置数据无效.

详细错误信息:

  • 模块:CustomErrorModule
  • 通知SendResponse
  • 处理程序StaticFile
  • 错误代码0x800700b7
  • 配置错误无法添加"mimeMap"类型的重复集合条目,并将唯一键属性"fileExtension"设置为".svg"
  • 配置文件 snip\web.config
  • 请求的URL http:// snip:14466/resources/img/snip .png
  • 物理路径C:*snip*\Resources\img*snip*.png
  • 登录方法匿名
  • 登录用户匿名

配置来源:

   58: <mimeMap fileExtension=".json" mimeType="application/json" />
   59: <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
   60: <mimeMap fileExtension=".woff" mimeType="application/x-font-woff"/>
Run Code Online (Sandbox Code Playgroud)

它显然讨厌我的mimeMap for .svg,但这在Azure网站上运行良好.我是否缺少本地运行Web.config的这些更改?

Jes*_*Pol 52

当然,在发布我的问题后,我找到了这个答案:

添加<mimeMap>条目导致IIS Express上的其他静态内容为500

所以问题是我的本地IIS配置已经加载了模块,同时生产环境没有.因此,要解决两个环境的问题,您需要确保在加载mimeMaps之前卸载它们.

该修复的代码如下:

<staticContent>
    <remove fileExtension=".json"/>
    <mimeMap fileExtension=".json" mimeType="application/json" />
    <remove fileExtension=".svg"/>
    <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
    <remove fileExtension=".woff"/>
    <mimeMap fileExtension=".woff" mimeType="application/x-font-woff"/>
</staticContent>
Run Code Online (Sandbox Code Playgroud)

希望这有助于其他人浪费时间寻找解决方案.

  • 您可能还想在.json映射之前添加<remove fileExtension =".json"/>,以防您的某个服务器环境已映射它. (2认同)