IIS Express - HTTP Error 500.19 0x800700b7 on 'mimeMap' for 'fileExtension' set to '.svg'

Jesse VanDerPol picture Jesse VanDerPol · Apr 28, 2014 · Viewed 17.9k times · Source

I was adding the ability to serve SVG & WOFF files to my Azure hosted web application. I found the following instructions:

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

Which I have followed by adding the below text to my Web.config file:

<staticContent>
    <mimeMap fileExtension=".json" mimeType="application/json" />
    <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
    <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
</staticContent>

This works when published to Azure. However, now I get the following error from IIS-Express whenever I attempt to start up the website in Debug mode locally for every resource the website attempts to serve.

HTTP Error 500.19 - Internal Server Error

The requested page cannot be accessed because the related configuration data for the page is invalid.

Detailed Error Information:

  • Module: CustomErrorModule
  • Notification SendResponse
  • Handler StaticFile
  • Error Code 0x800700b7
  • Config Error Cannot add duplicate collection entry of type 'mimeMap' with unique key attribute 'fileExtension' set to '.svg'
  • Config File snip\web.config
  • Requested URL http://snip:14466/resources/img/snip.png
  • Physical Path C:*snip*\Resources\img*snip*.png
  • Logon Method Anonymous
  • Logon User Anonymous

Config Source:

   58: <mimeMap fileExtension=".json" mimeType="application/json" />
   59: <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
   60: <mimeMap fileExtension=".woff" mimeType="application/x-font-woff"/>

It clearly hates my mimeMap for .svg but this works fine out in Azure Websites. Is there something I am missing for locally running these changes to the Web.config?

Answer

Jesse VanDerPol picture Jesse VanDerPol · Apr 29, 2014

And of course I find this answer after already posting my question:

Adding <mimeMap> entry Causes 500 for Other Static Content on IIS Express

So the issue is that my local IIS configuration has the modules already loaded, meanwhile the production environment doesn't. So to fix the issue for both environments you need to make sure the mimeMaps are unloaded before loading them.

The code is the following for the fix:

<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>

Hope this helps others from wasting time looking for a fix.