500,19 error en IIS7 cuando se produce un error
-
20-09-2019 - |
Pregunta
Configuración: Windows 7, IIS7. Estoy trabajando en una aplicación que se está viendo a través del servidor IIS local, no el construido en el servidor de depuración web. Así que mi aplicación url es http://localhost/foo/bar.aspx
. Hay no sección <customErrors>
en mi web.config, y no he cambiado ninguna configuración en IIS.
Si se produce algún error, siempre me dan la pantalla de error siguientes:
Error HTTP 500.19 - Error interno del servidor
Absoluta física ruta "C:\inetpub\custerr
" no está permitido en la secciónsystem.webServer/httpErrors
en el archivo web.config. Usar ruta de acceso relativa en lugar.
Aquí están mis contenidos applicationhost.config
:
<httpErrors errorMode="Custom" lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath">
<error statusCode="401" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="401.htm" />
<error statusCode="403" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="403.htm" />
<error statusCode="404" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="404.htm" />
<error statusCode="405" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="405.htm" />
<error statusCode="406" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="406.htm" />
<error statusCode="412" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="412.htm" />
<error statusCode="500" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="500.htm" />
<error statusCode="501" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="501.htm" />
<error statusCode="502" prefixLanguageFilePath="%SystemDrive%\inetpub\custerr" path="502.htm" />
</httpErrors>
¿Cómo puedo deshacerme de este error de configuración para que pueda ver los errores detallados?
Solución
He estado tratando con este problema en los últimos días y encontré la solución. Un archivo Web.config es probable que se especifica una ruta absoluta para una de las páginas de error. Esto puede no ser el web.config de la aplicación que se está probando. Para mí, fue el archivo Web.config de la página web.
-
Si encuentra el archivo Web.Config infractor puede eliminar la ruta absoluta y el problema debe ser arreglado.
-
Una solución mucho más fácil sería alterar su archivo ApplicationHost.config para establecer la propiedad
allowAbsolutePathsWhenDelegated
atrue
:<httpErrors allowAbsolutePathsWhenDelegated="true" errorMode="Custom" lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath">
Otros consejos
Yo tenía el mismo problema cuando he instalado Active Directory Servicios de certificados en el controlador de dominio. Ambos estaban usando el puerto 443. cambio el uno para servicios de certificado a la dirección IP del servidor y salí del servidor de intercambio sin asignar. Que resolvió mi problema.
Tuve este mismo problema en IIS 8.5. La solución fue eliminar cualquier entrada en el archivo web.config (ubicado en el directorio raíz del sitio web) que hacían referencia a las páginas de error personalizadas. Las entradas fueron creados por el sistema cuando había tratado de realizar cambios en las páginas personalizadas.
Lo que me ayudó a resolver este error es la creación allowAbsolutePathsWhenDelegated
true.
Ir a IIS> Editor de Configuración> Tipo Sección: system.webServer / httpErrors
y Conjunto allowAbsolutePathsWhenDelegated
a true . Restablecer IIS una buena medida.