c# visual-studio-2008 iis-7 wcf http-status-code-404

c# - ¿Cómo resolver un error "Error HTTP 404.3-No encontrado"?



visual-studio-2008 iis-7 (6)

Problema simple Arranco VS2008 y creo una nueva aplicación de servicio WCF. Esto creará una aplicación predeterminada con algunos métodos de prueba que muestran que funciona. Presiono CTRL + F5 y de hecho funciona! ¡Genial! Sin embargo, utiliza el servidor de desarrollo de Visual Studio, que no quiero admitir.

Así que voy a las propiedades del proyecto, cambio a usar un servidor web local de IIS, creo el directorio virtual y presiono CTRL + F5 nuevamente. Y este error "HTTP Error 404.3 - No encontrado" me está devolviendo la llamada.

Entonces, algo en mi configuración de IIS7 / Vista-64 está mal. ¿Qué podría faltar?


El problema, sin embargo, es volver a registrar ASP.Net en IIS, que se explica a continuación.

Y también si está en una máquina de 64 bits, siempre use las rutas de Framework64: C: / Windows / Microsoft.NET / Framework64 / v4.0.30319> aspnet_regiis.exe -iru

A continuación se muestra la explicación de Microsoft:

http://download.microsoft.com/download/0/A/E/0AEB3BC1-506E-4954-8AB1-4FA2EE75985C/ReleaseNotes.docx

Al intentar ejecutar un servicio que recibe mensajes a través del transporte HTTP, puede recibir un error similar al siguiente:

Error del servidor en la aplicación ''/ WCFApplication''

No se pudo cargar el tipo ''System.ServiceModel.Activation.HttpModule'' del conjunto ''System.ServiceModel, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089''.

Descripción: se produjo una excepción no controlada durante la ejecución de la solicitud web actual. Revise el seguimiento de la pila para obtener más información sobre el error y dónde se originó en el código. Detalles de la excepción: System.TypeLoadException: No se pudo cargar el tipo ''System.ServiceModel.Activation.HttpModule'' del conjunto ''System.ServiceModel, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089''.

Este error puede ocurrir cuando IIS se instala después de instalar .NET Framework 4, o si la versión 3.0 del módulo de activación de Http WCF está instalada después de instalar IIS y .NET Framework 4.

Para resolver este problema, debe usar la herramienta de registro IIS de ASP.NET (Aspnet_regiis.exe) para registrar la versión correcta de ASP.NET. Esto se puede lograr usando los parámetros –iru cuando se ejecuta aspnet_regiis.exe de la siguiente manera:

aspnet_regiis.exe -iru

Y el crédito, donde se debe: Source


Intenté ejecutar ServiceModelReg y aspnet_regiis.exe con varios indicadores y añadí la función de activación de HTTP, pero aún no funcionó. Lo que finalmente funcionó fue agregar manualmente el siguiente controlador a mi archivo web.config.

<system.webServer> <handlers> <add name="svc-Integrated" path="*.svc" verb="GET,HEAD,POST,DEBUG" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" modules="ManagedPipelineHandler" scriptProcessor="" resourceType="Unspecified" requireAccess="Script" allowPathInfo="false" preCondition="integratedMode" responseBufferLimit="4194304" />

Mi proyecto estaba ejecutando .Net 3.5 e IIS fue 7.5 y 7.0.


Si te enfrentas a este problema por primera vez. con Windows 8 e IIS 8.0 asegúrese de activar la función de ventanas HTTP de Windows Communication Foundation .

  1. Vaya al Panel de control, seleccione "Programas y características".
  2. En el menú del lado de la plataforma, seleccione "Activar o desactivar las características de Windows" .
  3. Expandir el elemento ".Net Framework 3.5 (incluye .NET 2.0 y 3.0)"
  4. Finalmente seleccione "Activación HTTP de Windows Communication Foundation"
  5. Disfrute de su servicio WCF .

Tuve que marcar "Activación HTTP" en "Agregar servicios de rol" en Windows Server 2012.


intente instalar IIS expandiendo su servicio de información de Internet y luego verifique ASP.Net 3.5 o ASP.Net 4.5 e ISAPI ... en la raíz de todo el mundo ......... consulte la imagen para obtener más ayuda


Haga clic en Inicio -> Ejecutar cmd y escriba:

cd "/Windows/Microsoft.NET/Framework/v3.0/Windows Communication Foundation" ServiceModelReg.exe -i