servidor interno error code 0x80070021 asp.net-mvc iis svg mime-types iis-express

asp.net mvc - interno - IIS Express-Error de HTTP 500.19 0x800700b7 en ''mimeMap'' para ''fileExtension'' establecido en ''.svg''



http error 500.19 internal server error iis 10 handlers (2)

Descubrí que si tiene elementos de mimeMap duplicados entre su Web.Config en el directorio que aloja su aplicación y el %UserProfile%/Documents/IISExpress/config/applicationhost.config Default %UserProfile%/Documents/IISExpress/config/applicationhost.config , fallará en todos ellos.

La misma solución funcionó: se aseguró de <remove> cada entrada de <mimeMap> .

Estaba agregando la capacidad de servir archivos SVG y WOFF a mi aplicación web alojada en Azure. Encontré las siguientes instrucciones:

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

Lo cual he seguido agregando el siguiente texto a mi archivo 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>

Esto funciona cuando se publica en Azure. Sin embargo, ahora recibo el siguiente error de IIS-Express cada vez que intento iniciar el sitio web en modo de depuración localmente para cada recurso que el sitio web intenta servir.

HTTP Error 500.19 - Error interno del servidor

No se puede acceder a la página solicitada porque los datos de configuración relacionados para la página no son válidos.

Información de error detallada:

  • Módulo: CustomErrorModule
  • Notificación SendResponse
  • Handler StaticFile
  • Código de error 0x800700b7
  • Error de configuración No se puede agregar una entrada de colección duplicada de tipo ''mimeMap'' con el atributo clave único ''fileExtension'' establecido en ''.svg''
  • Config File snip / web.config
  • URL solicitada http: // snip : 14466 / resources / img / snip .png
  • Ruta de acceso física C: * snip * / Resources / img * snip * .png
  • Método de inicio de sesión anónimo
  • Usuario de inicio de sesión anónimo

Fuente de configuración:

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

Claramente odia mi mimeMap para .svg, pero esto funciona bien en Azure Websites. ¿Hay algo que me falta para ejecutar localmente estos cambios en Web.config?


Y, por supuesto, encuentro esta respuesta después de haber publicado mi pregunta:

Agregar la entrada <mimeMap> Causa 500 para otro contenido estático en IIS Express

Entonces, el problema es que mi configuración IIS local tiene los módulos ya cargados, mientras que el entorno de producción no. Por lo tanto, para solucionar el problema en ambos entornos, debe asegurarse de que los mimeMaps estén descargados antes de cargarlos.

El código es el siguiente para la corrección:

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

Espero que esto ayude a otros a perder el tiempo buscando una solución.