当我尝试在Windows 8机器的IIS上提供WCF服务时,我得到了众所周知的错误
由于扩展配置,您请求的页面无法提供服务。如果页面是一个脚本,则添加一个处理程序。如果应该下载该文件,则添加MIME映射。
旧的解决方法是运行aspnet_regiis -i,但是这个命令在Windows 8中似乎已经被弃用,结果是这个版本的操作系统不支持这个选项。(…)。
周围的工作是什么?
(我已经成功启用了常规的aspx页面,所以大部分IIS配置看起来都很健康。)
当我尝试在Windows 8机器的IIS上提供WCF服务时,我得到了众所周知的错误
由于扩展配置,您请求的页面无法提供服务。如果页面是一个脚本,则添加一个处理程序。如果应该下载该文件,则添加MIME映射。
旧的解决方法是运行aspnet_regiis -i,但是这个命令在Windows 8中似乎已经被弃用,结果是这个版本的操作系统不支持这个选项。(…)。
周围的工作是什么?
(我已经成功启用了常规的aspx页面,所以大部分IIS配置看起来都很健康。)
这似乎是显而易见的;WCF服务应该使用程序和功能来启用->在控制面板中打开或关闭Windows功能。进入。net框架高级服务-> WCF服务,并按照mdsn上的这篇博客文章中的描述启用HTTP激活。
从命令提示符(作为admin),您可以运行:
C:\> DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
C:\> DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45
如果你得到一个错误,然后使用下面的
C:\> DISM /Online /Enable-Feature /all /FeatureName:WCF-HTTP-Activation
C:\> DISM /Online /Enable-Feature /all /FeatureName:WCF-HTTP-Activation45
对于Windows Server 2012,解决方案与faester的非常相似(见上文)。从服务器管理器中,单击添加角色和功能,选择适当的服务器,然后选择功能。在. net Framework 4.5特性下,你会看到WCF服务,在它下面,你会发现HTTP激活。
请在IIS 8.0上执行以下两个步骤
添加新的MIME类型& HttpHandler
扩展:svc,名 MIME类型:应用程序/字节流 请求路径:*.svc, 类型:System.ServiceModel.Activation.HttpHandler, 名称:svc-Integrated
这实际上是与faester的解决方案和Bill Moon的解决方案相同的解决方案,但以下是如何使用PowerShell:
Import-Module Servermanager
Add-WindowsFeature AS-HTTP-Activation
当然,也没有什么能阻止您从PowerShell调用DISM。
您可以将此代码添加到web。在asp MVC中配置
<system.webServer>
<staticContent>
<remove fileExtension=".srt" />
<mimeMap fileExtension=".srt" mimeType="text/srt" />
<remove fileExtension=".vtt" />
<mimeMap fileExtension=".vtt" mimeType="text/vtt" />
</staticContent>
</system.webServer>
您可以用您的文件扩展名更改文件扩展名