2010-03-18 15 views
17

Configuración: Windows 7, IIS7. Estoy trabajando en una aplicación que se está viendo a través del servidor IIS local, no en el servidor web de depuración incorporado. Entonces mi URL de aplicación es http://localhost/foo/bar.aspx. Hay no<customErrors> sección en mi web.config, y no he cambiado ninguna configuración en IIS.500.19 error en IIS7 cuando ocurre un error

Si se produce algún error, siempre me sale el siguiente error en pantalla:

Error HTTP 500.19 - Error interno del servidor
absoluta ruta física "C:\inetpub\custerr" no está permitido en la sección system.webServer/httpErrors en web.config archivo. Use la ruta relativa en su lugar.

Aquí está mi applicationhost.config contenidos:

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

Respuesta

28

He estado lidiando con este problema durante los últimos días y he encontrado la solución. Es probable que un archivo Web.Config especifique una ruta absoluta para una de las páginas de error. Puede que no sea el Web.Config de la aplicación que está probando. Para mí, era el archivo Web.Config del sitio web.

  1. Si encuentra el archivo Web.Config ofensor, puede eliminar la ruta absoluta y el problema debería solucionarse.

  2. Una solución mucho más fácil sería alterar su archivo ApplicationHost.Config para establecer el allowAbsolutePathsWhenDelegated propiedad a true:

    <httpErrors allowAbsolutePathsWhenDelegated="true" errorMode="Custom" 
          lockAttributes="allowAbsolutePathsWhenDelegated,defaultPath"> 
    
+1

no se puede votar lo suficiente. Tenía un web.config en mi raíz del sitio web. eliminado todo desde allí. yayayayayayaya !!!!!!!! – Joel

+0

http://stackoverflow.com/questions/4358339/how-to-prevent-iis7-for-handling-http-status-code-401 – Jared314

+0

Tengo iis7.5 y vs2013 y esta propiedad no está permitida en el archivo de configuración , después de intentar presionar sobre esto, el error todavía aparece. – DanielV

2

que tenían el mismo problema cuando he instalado Servicios de certificados de Active Directory en el controlador de dominio . Ambos usaban el puerto 443. Cambio el de los servicios de certificado a la dirección IP del servidor y dejé el servidor de intercambio sin asignar. Eso resolvió mi problema.

1

Tuve este mismo problema en IIS 8.5. La solución era eliminar cualquier entrada en el archivo web.config (ubicado en el directorio raíz del sitio web) que hacía referencia a las páginas de error personalizadas. Las entradas fueron creadas por el sistema cuando intenté realizar cambios en páginas personalizadas.

1

Lo que me ayudó a resolver este error es establecer allowAbsolutePathsWhenDelegated en verdadero.

Ir a IIS> Editor de Configuración> Tipo Sección: system.webServer/httpErrors y Conjunto allowAbsolutePathsWhenDelegated a cierto. Restablecer IIS para una buena medida.

Cuestiones relacionadas