Estoy tratando de ejecutar un servicio wcf en IIS8 en 2012 build 8400.
Al instalar la función web, no se encontraron las cosas de wcf (bajo 3.51) como en 2008.
Cuando se instaló la asignación del controlador svc faltaba, así que hice un:
%windir%\Microsoft.NET\Framework\v3.0\WindowsCommunication Foundation\ServiceModelReg.exe –i
Ahora el mapeo del controlador está ahí, pero aún obtengo:
The resource you are looking for does not have a handler associated with it.
(Eliminé el controlador de archivos estáticos).
El sitio está utilizando la canalización clásica para utilizar la suplantación.
Tuve que habilitar
HTTP Activation
en.NET Framework 4.5 Advanced Services
>WCF Services
fuente
active lo siguiente en 'Activar o desactivar las características de Windows'
a) .Net Framework 3.5 - WCF HTTP Activation y Non-Http Activation
b) todo bajo Servicios WCF
fuente
Windows 8 con IIS8
Windows+X
Programs and Features
(primer elemento de la lista)Turn Windows Features on or off
a la izquierda.NET Framework 4.5 Advanced Services
WCF Services
HTTP Activation
fuente
Prefiero hacer esto a través de un script hoy en día
fuente
dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45
fueron suficientes para mí ...Logramos resolver el error en Windows Server 2012 de la siguiente manera:
Parece que el orden de instalación es la causa.
Además, asegúrese de tener la Activación HTTP instalada en Servicios WCF.
fuente
Para las máquinas con Windows 8 no existe la aplicación "Administrador del servidor" (al menos no pude encontrarla).
Aunque pude resolver el problema . No estoy seguro de en qué secuencia hice las siguientes operaciones, pero parece que una / algunas de las siguientes acciones ayudan:
Active lo siguiente en 'Activar o desactivar las características de Windows' a) .Net Framework 3.5 - Activación HTTP WCF y Activación no Http b) todo bajo Servicios WCF (como se especifica en una de las respuestas a esta pregunta)
ejecutó "ServiceModelReg.exe –i" en la carpeta "% windir% \ Microsoft.NET \ Framework \ v3.0 \ Windows Communication Foundation \"
ASP.NET 2.0 registrado a través de dos comandos (en la carpeta C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727):
aspnet_regiis -ga "NT AUTHORITY \ NETWORK SERVICE" aspnet_regiis -iru
Reinicié la PC ... parece que como resultado, las acciones ## 3 y 4 se rompieron en mi configuración de ASP.NET
Repita la acción # 2
Instale otras dos opciones de los "Programas y características": .Net Framework 4.5 Advanced Services. Revisé ambas opciones secundarias: ASP.NET 4.5 y servicios WCF
Reinicie el grupo de aplicaciones.
La secuencia es un poco loca, pero eso me ayudó y probablemente ayudará a otros
fuente
El orden de instalación es muy importante al configurar IIS 8 en Windows 8 o Windows Server 2012.
Enfrenté muchos problemas al configurar IIS 8, pero finalmente estos enlaces me ayudaron
fuente
Con PowerShell puede instalar la función requerida con:
fuente
En Windows 10 (cliente) también puede escribir esto usando
Tenga en cuenta que este es un comando diferente del skus del servidor
fuente
También es necesaria la función de activación HTTP de .NET framework.
fuente
Esta fue realmente una tontería para mí. Agregando esto aquí, ya que es uno de los hilos más populares en los problemas de svc 404.
Tenía en la configuración del proyecto '\ Web \ Project URL, pegado:
Y por alguna razón desconocida (haber hecho esto miles de veces) no descubrí de inmediato que el nombre del archivo .svc estaba al final.
DOH!
Acababa de pegar la dirección de mi cliente de prueba WCF y no la había verificado lo suficiente. Lo que esto hizo en segundo plano fue crear una aplicación IIS en la dirección .svc y no obtuve nada de IIS. No pude resolver cómo ni siquiera podía golpear el archivo .svc.
Solución simple, obviamente, simplemente elimine la aplicación en IIS y cambie la URL del proyecto.
Después de casi 20 años en esto, aún puede cometer errores de colegial / errores de novato. Espero que esto ayude a alguien.
fuente