Pregunta

Esto está volviendo loco a todo el equipo.Debe haber alguna parte simple mal configurada de IIS o de nuestro servidor web, pero cada vez que intentamos ejecutar la aplicación web ASP.NET en IIS 7.5 obtenemos el siguiente error...

Aquí está el error completo:

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              IIS Web Core
Notification        Unknown
Handler             Not yet determined
Error Code          0x8007000d
Config Error
Config File         \\?\E:\wwwroot\web.config
Requested URL       http://localhost:80/Default.aspx
Physical Path 
Logon Method        Not yet determined
Logon User          Not yet determined
Config Source
   -1: 
    0: 

La maquina esta funcionando Servidor Windows 2008 R2.Estamos desarrollando nuestra aplicación web utilizando estudio visual 2008.

Según Microsoft, el código 8007000d significa que hay un error de sintaxis en nuestro web.config, excepto que el proyecto se compila y ejecuta correctamente localmente.Mirar web.config en el Bloc de notas XML tampoco muestra ningún error de sintaxis.¿Supongo que debe ser algún tipo de mala configuración de mi parte...?

¿Alguien sabe dónde puedo encontrar más información sobre el error?Tampoco se muestra nada en EventViewer :(

No estoy seguro de qué más sería útil mencionar...

Se agradece mucho la ayuda.¡Gracias!

¡ACTUALIZACIONES!- WEB.CONFIG PUBLICADO A CONTINUACIÓN

Ok, desde que publiqué la pregunta original arriba, he rastreado las líneas precisas en el web.config que estaban causando el error.

Aquí están las líneas (aparecen entre <System.webServer> etiquetas)...

    <httpHandlers>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </httpHandlers>

Nota:Si borro las lineas entre el <httpHandlers> Aún tengo el error.literalmente tengo que borrar <httpHandlers> (y las líneas intermedias) para dejar de recibir el error anterior.

Una vez que he hecho esto obtengo un nuevo Error 500.19, sin embargo.Afortunadamente, esta vez IIS me dice qué parte de web.config está causando el problema...

    <handlers>
        <remove name="WebServiceHandlerFactory-Integrated"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </handlers>

Mirando estas líneas queda claro que el problema ha migrado más dentro del mismo <system.webServer> etiquetar al <handlers> etiqueta.

El nuevo error también es más explícito y específicamente se queja de que no reconoce el atributo "validar" (como se ve en la tercera línea arriba).Al eliminar este atributo, se queja de que la misma línea no tiene el atributo "nombre" requerido.Al agregar este atributo aparece ASP.NET error...

No se pudo cargar archivo o ensamblaje 'system.web.extensions, versión = 1.0.61025.0, cultura = neutral, publickeyToken = F2CB5667DC123A56' o una de sus dependencias.El sistema no puede encontrar el archivo especificado.

Obviamente creo que estos nuevos errores acaban de surgir porque eliminé el <httpHandlers> etiquetas en primer lugar (obviamente son necesarias para la aplicación), por lo que la pregunta sigue siendo:¿Por qué estas etiquetas generarían un error en IIS en primer lugar?

¿Necesito instalar algo en IIS para que funcione con ellos?

Gracias de nuevo por cualquier ayuda.

CONFIGURACIÓN WEB

Aquí están las partes problemáticas de nuestro configuración web...¡Espero que esto ayude a alguien a encontrar nuestro problema!

<system.Web>

<!-- stuff cut out -->

    <httpHandlers>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56" validate="false"/>
    </httpHandlers>
    <httpModules>
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </httpModules>
</system.web>

<system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules>
        <add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </modules>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    <handlers>
        <remove name="WebServiceHandlerFactory-Integrated"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </handlers>
</system.webServer>
¿Fue útil?

Solución 3

¡Ajá! He superado este problema! Dios mío, era una bestia para alguien como yo con experiencia limitada en IIS. Realmente pensé que iba a pasar todo el fin de semana arreglándolo.

Aquí está la solución para cualquier otra persona que haya tenido este malvado problema.

Lo primero que debe tener en cuenta: si espera que esta sea su solución, asegúrese de tener el mismo Código de error ( 0x8007000d ) y Fuente de configuración ( -1: 0 : ). Si no, esta no es su solución.

Lo siguiente a tener en cuenta: ¡AJAX no está instalado correctamente en su web.config!

Arregle eso siguiendo esta guía:
http: // www .asp.net / AJAX / documentation / live / Configurando ASPNETAJAX.aspx

Luego, instale las extensiones AJAX 1.0 en su servidor de producción, desde este enlace:

  

http://www.asp.net/ajax/downloads/archive/
   Actualización : Microsoft parece haber eliminado la página anterior :(

¡Eso es!

Otros consejos

Tenía estos síntomas exactos y mi problema era similar al de Peter. Estaba configurando un proyecto existente en un nuevo servidor. Mi proyecto hacía referencia al módulo de reescritura de URL IIS7, pero aún no se había instalado en el nuevo servidor. Instalarlo solucionó mi problema.

Puede usar el Instalador de plataforma web de Microsoft para instalarlo. Ejecútelo, seleccione Productos , en el menú de la izquierda, seleccione Servidor y busque URL Rewrite en la lista e instálelo.

O puede descargarlo aquí .

Después de luchar con esto por un día en una nueva máquina, me encontré con los siguientes enlaces. Me faltaban los módulos de reescritura. Esto solucionó todo.

http://forums.iis.net/t/1176834.aspx

http://learn.iis.net /page.aspx/460/using-the-url-rewrite-module/

Tuve el mismo problema que el anterior, el mismo código de error, etc. Configuración de un sitio web local en Windows 8. Después de mucha búsqueda, se descubrió que nos faltaba la reescritura de URL. Después de descargarlo, todo estuvo bien. :)

Mismo problema en Server 2016, IIS 10, error 500.19. Instalé el módulo de redireccionamiento y funcionó. No sé por qué esto no se incluyó por defecto.

https://www.iis.net/downloads/microsoft/url- reescribir # AdditionalDownloads

Para ser claros, parece que web.config de IIS 7 funcionará o está diseñado para funcionar, pero la falta de este módulo da el error realmente extraño e inútil. Buscar en Google lo lleva a una página de Microsoft que insiste en que su sitio está dañado o su web.config está dañado. Ninguno de los dos parece ser el caso.

Esa página inútil está aquí: https://support.microsoft.com/en- us / kb / 942055

Solo agregué un answear porque pasé horas tratando de resolver los mismos síntomas (pero un problema diferente):

Una posible causa es un dll x86 en un grupo de aplicaciones de 64 bits, la solución es habilitar aplicaciones de 32 bits en la configuración del grupo de aplicaciones.

Para mí, volver a registrar asp.net para iis fue el truco. Esperemos que eso ayude a alguien más.

aspnet_regiis.exe -i

Para resumir según las respuestas aquí y en otros lugares:

  1. Verifique la versión .NET del grupo de aplicaciones (por ejemplo, 2.0 frente a 4.0)
  2. Verifique que todos los módulos referenciados por IIS estén instalados. En este caso, fueron las extensiones AJAX (probablemente no es el caso en estos días), pero URL Rewrite es una común.

Otra forma de obtener 500.19 errot sin razón aparente es la falta de directorios y / o permisos rotos en ellos.

En el caso de esta pregunta, creo que la pregunta se refiere a la versión completa de IIS. Asumo esto debido a esta línea:

Config File         \\?\E:\wwwroot\web.config

El instalador IIS generalmente crea el wwwroot para usted y esa es la carpeta raíz predeterminada para todos los sitios web y el punto de montaje para directorios virtuales. Siempre existe, así que no hay problema, por lo general no te importa mucho eso.

Dado que los archivos web.config son jerárquicos, puede colocar un archivo web.config maestro y tener algunas configuraciones de raíz allí, y todos los sitios lo heredarán. IIS comprueba si ese archivo existe e intenta cargarlo.

Sin embargo, la primera parte divertida:

Este directorio existirá si tiene IIS instalado correctamente. Si no existe, obtendrá un error de clase 500. Sin embargo, si juega con permisos de archivo / directorio, especialmente los 'avanzados', en realidad puede negar accidentalmente la cuenta del servicio IIS al escanear / leer el contenido de este directorio. Si IIS no puede verificar si ese wwwroot \ web.config existe, o si existe y IIS no puede abrir & Amp; léalo - bam - error de clase 500.

Sin embargo, para IIS completo es muy poco probable. Los desarrolladores / administradores que trabajan con IIS completo generalmente son reacios a jugar con Documents, por lo que generalmente se mantiene configurado correctamente.

Sin embargo, en IIS Express ..

Por lo general, IIS Express " simplemente funciona " ;. A menudo, los desarrolladores que usan IIS Express a menudo no saben cuánto se parece internamente al IIS real.

Puede tropezarse fácilmente con el hecho de que IIS Express tiene su propio archivo applicationHost.config y VS lo crea y administra por usted (correctamente, hasta cierto punto) y ese tipo de revelación que le dice que no es tan simple y apunte y haga clic como parece al principio.

Aparte de ese archivo de configuración, VisualStudio también crea una estructura de directorio vacía debajo de su carpeta <=>. Si no recuerdo mal, IIS Express considera que estas carpetas son los directorios raíz de sus sitios web en los que se montan directorios virtuales con su código.

Más tarde, al igual que IIS, cuando se inicia IIS Express, espera que estas carpetas existan y busca archivos raíz web.config allí. Los archivos sitio web.config . Casi siempre, faltan estos archivos web.config, y eso está bien porque no los quiere, tiene su ** aplicación web.config & Quot ;, se colocan con el resto del contenido en directorios virtuales.

Ahora, la segunda parte divertida es: IIS Express espera que vacíe los directorios. Pueden estar vacíos, pero necesitan existir. Si no existen, recibirá un error de clase 500 diciéndole que & Quot; web.config & Quot; no se puede acceder al archivo en esa ruta.

La primera vez que me encontré con este problema fue cuando estaba limpiando mi disco duro. Encontré esa carpeta 'documentos \ sitios web', llena de basura, reconocí varios proyectos de hace un año en los que ya no trabajo, todos vacíos, ni un solo archivo, así que lo eliminé todo. Una semana después, bam, no puedo ejecutar / depurar ninguno de los sitios en los que estaba trabajando en este momento. El error fue 500.19, no se puede leer el archivo de configuración.

Entonces, si usa IIS Express y ve un error de clase 500 que dice acerca de la configuración de lectura, revise cuidadosamente el mensaje de error y lea todas las rutas mencionadas. Si ve algo como:

c:\users\user\documents\visual studio 2013\projects\WebProject1\WebProject1.web\web.config
c:\users\zeshan.munir\documents\visual studio 2015\projects\WebProject1\WebProject1.web\web.config
c:\users\zeshan.munir\documents\visual studio 2017\projects\WebProject1\WebProject1.web\web.config
etc..

Vaya allí exactamente donde indica el error, asegúrese de que existan estas carpetas, asegúrese de que la cuenta de trabajo de IIS pueda atravesarlas y leerlas, y si nota que algo está mal, tal vez sea eso.

Por cierto. En VisualStudio, en ProjectProperties / Web hay un botón & Quot; Crear directorio virtual & Quot ;. Esencialmente hace esto mismo, por lo que puede probarlo primero, pero IIRC también puede en ocasiones borrar / sobrescribir / intercambiar secciones de configuración en applicationHoarchivo st.config, así que tenga cuidado con ese botón si tiene alguna configuración personalizada allí.

En mi caso, había algo mal con la instalación de .NET Core Windows Hosting Bundle.

Tenía eso instalado y reinicié IIS usando (" net stop era / y " y " net start w3svc ") después de la instalación, pero obtendría ese error 500.19 con el código de error 0x8007000d y la fuente de configuración -1: 0 :.

Me las arreglé para resolver el problema reparando la instalación de .NET Core Windows Hosting Bundle y reiniciando IIS usando los comandos que mencioné anteriormente.

¡Espero que esto ayude a alguien!

Esto puede o no estar relacionado ... Comencé con el mismo error mencionado anteriormente, comencé a buscar en Google, hacer cambios, obtener nuevos errores, bucle sin fin.

El cambio que me provocó ese error fue jugar con la Delegación de funciones en el Administrador de IIS en la sección Administración del servidor. Lo siento, no puedo recordar cuál cambié, pero googlear podría ayudar.

Eso me llevó más allá del primer error a una secuencia completamente nueva de otros, algunos totalmente sin sentido. (Obtendría un error al ejecutar bajo un directorio virtual, convertirlo en una aplicación produjo otro error, etec, etc.). Lo que finalmente resolvió esta serie de errores fue: Administrador de IIS, Grupos de aplicaciones, DefaultAppPool, Habilitar aplicaciones de 32 bits = Verdadero

Había iniciado esta aplicación en un cuadro de Windows XP de 32 bits, y ahora lo estoy ejecutando en un cuadro de Windows 7 de 64 bits.

Espero que esto ayude a alguien más.

Mi IIS 7.5 no entiende la etiqueta en web.config En VS 2010 también se subraya esa etiqueta. Verifique su archivo de configuración con precisión para encontrar todas las etiquetas subrayadas. Lo puse en el comentario y el error desaparece.

Comente las siguientes líneas en el archivo web.config.

<modules>
    <!--<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
</modules>

<handlers>
    <remove name="WebServiceHandlerFactory-ISAPI-2.0"/>
    <!--<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add name="ScriptResource" verb="GET" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
</handlers>

Esto funcionará.

Tuve el mismo error. Tenía un sitio IIS con .NET Framework versión 2.0, pero mi aplicación necesitaba 4.0. Cambié la versión y funcionó.

Publicar solo como recordatorio si alguien puede tener el mismo problema.

¡Este hermoso error detallado todavía está presente en 2019!Sólo quiero agregar que si tu web.config es válido y accesible, lo más probable es que sea un problema de dependencia.

Como lo mencionó el OP, fue un AJAX módulo, y como por otros comúnmente el Rewrite módulo.Simplemente mantenga los ojos abiertos en su web.config a qué módulos y bibliotecas hacen referencia sus etiquetas desde el código de error 0x8007000d puede ser sobre CUALQUIER dependencia.

En mi caso no me di cuenta AspNetCore ¡Faltaba el paquete y había que instalarlo!¡¡Estoy tan feliz de haber encontrado esta publicación!!

Tuve el mismo problema en Windows 7.

La solución fue ir a la configuración básica > conectar como > usuario específico - e inicie sesión como usuario, en lugar de la "transferencia" predeterminada

Esto solucionó el problema para mí.

Windows 7

Prueba esto,

ejecute cmd como administrador.

Desinstale todos los iis.

start /w pkgmgr.exe /uu:IIS-WebServerRole;WAS-WindowsActivationService

Reinstale iis y normalmente es trabajo

Alain

Recibí este error al poner la etiqueta <customErrors> dentro de <system.webServer> en lugar de <system.web> donde pertenece. Había un pequeño garabato debajo de la etiqueta <=> pero no lo noté de inmediato.

Asegúrese de que todas sus características de IIS estén habilitadas correctamente.

  • Abra Características de Windows (active o desactive las características de Windows).
  • Desplácese hacia abajo hasta Servicios de información de Internet

  • Abra el menú desplegable World Wide Web plus

  • Abra el menú desplegable Características de desarrollo de aplicaciones plus
  • Marque manualmente todas las casillas de verificación posteriores, luego haga clic en ok

 ingrese la descripción de la imagen aquí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top