Cuando intento servir un servicio WCF en IIS en una máquina con Windows 8, aparece el error bien conocido
La página que está solicitando no se puede servir debido a la configuración de la extensión. Si la pagina es un script, agregue un controlador. Si el archivo debe descargarse, agregue un mapa MIME.
La antigua solución era ejecutar, aspnet_regiis -i
pero este comando parece haber quedado en desuso en Windows 8 dando respuestaThis option is not supported on this version of the operating system. (...)
.
¿Cuál sería el trabajo alrededor?
(Ya he habilitado correctamente las aspx
páginas normales , por lo que la mayoría de la configuración de IIS parece estar en buen estado).
aspnet_regiis -i
comando para usuarios anteriores a Windows 8, consulte este enlace: aspsnippets.com/Articles/…Respuestas:
Parecía ser obvio; el servicio WCF debe habilitarse usando
Programs and Features -> Turn Windows features on or off
en el Panel de control. Vaya.NET Framework Advanced Services -> WCF Services
y habiliteHTTP Activation
como se describe en esta publicación de blog en mdsn .Desde el símbolo del sistema (como administrador), puede ejecutar:
Si obtiene un error, use el siguiente
fuente
/all
argumento), que luego funcionó bien:DISM /Online /Enable-Feature /all /FeatureName:WCF-HTTP-Activation45
..NET 3.5 Framework Advanced Services -> Windows Communication Foundation HTTP Activation
Para Windows Server 2012, la solución es muy similar a la de faester (ver arriba). Desde el Administrador del servidor, haga clic en
Add roles and features
, seleccione el servidor apropiado, luego seleccioneFeatures
. Debajo.NET Framework 4.5 Features
, verásWCF Services
, y debajo de eso, encontrarásHTTP Activation
.fuente
Siga los dos pasos siguientes en IIS 8.0
Agregar nuevo tipo MIME y HttpHandler
Extensión: .svc, tipo MIME: application / octet-stream
Ruta de solicitud: * .svc, Tipo: System.ServiceModel.Activation.HttpHandler, Nombre: svc-Integrated
fuente
También puede lograr esto activando la función de Windows.
fuente
Esta es realmente la misma solución que la solución de Faester y la de Bill Moon, pero así es como lo hace con PowerShell:
Por supuesto, tampoco hay nada que le
DISM
impida llamar desde PowerShell.fuente
puede agregar este código a web.config en asp mvc
puede cambiar la extensión de archivo con su extensión de archivo
fuente