【问题标题】:IIS 7 not recognizing svc fileIIS 7 无法识别 svc 文件
【发布时间】:2011-06-23 09:28:10
【问题描述】:

我正在尝试在 IIS7 上使用 WCF 发布 Web 服务。

我已经为这个项目创建了一个站点,并且我也创建了一个应用程序作为MSDN suggested。我可以在浏览器中从创建的文件夹中打开 html 文件,但是如果我尝试访问我的服务的 svc 文件,我会收到 404.3 错误(由于扩展配置,无法提供您请求的页面)。我读过我应该运行 servicemodelreg 来为 svc 文件安装缺少的处理程序。在我这样做之后,我收到一条错误消息,指出处理程序的模块有误。

我每次都检查以下内容:

  • IIS 已开启
  • ASP.NET 已开启
  • 有一个 svc 文件的处理程序

我的想法用完了......

【问题讨论】:

  • 您在事件日志中看到了什么?
  • 你有/bin 文件夹吗,里面有二进制服务吗?
  • 尝试运行aspnet_regiis.exe -i 并将应用程序的ApplciationPool设置为Framework 4。
  • @vorrtex:是的,aspnet_regiis 是缺失的环节!这很奇怪,因为我在我的电脑上执行了相同的步骤并且没有发生此问题,但是当我尝试在笔记本电脑上再次执行此操作时,它确实发生了。无论如何,如果您将此作为答案发布,我会标记它!

标签: wcf web-services iis-7


【解决方案1】:

在 Windows 8 上,运行 DISM.exe 以启用 WCF

DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45

或者,如果您使用服务器管理器仪表板的添加角色和功能向导设置所有内容,请不要忘记检查 WCF 服务下的“HTTP 激活”

【讨论】:

  • 即不要忘记从角色和功能设置向导中启用 WCF 功能列表下的“HTTP 激活”。谢谢!
  • 当您没有安装 Visual Studio 时,这适用于 Windows Server 2012。
【解决方案2】:

如果在.NET Framework 和Visual Studio 之后安装了IIS,就会出现这种情况,所以需要注册ASP.Net。如果先安装IIS,就不会出现这样的问题了。

但解决方法很简单:打开Visual Studio Command Promt 并输入此命令

aspnet_regiis.exe -i

这是link,其中包含有关此命令及其参数的更多详细信息。

【讨论】:

  • 我在 Windows 8 中遇到了类似的问题。不幸的是,上述内容不受支持。您需要进入控制面板,打开或关闭 Windows 功能,并确保您在 .NET 3.5 和 4.5 下需要的功能被勾选。
  • 是的,在 Windows 8 中它已经改变了,但是为什么呢?我无法理解为什么 Microsoft 不断将这样简单的基本内容更改为令人费解的添加/删除功能怪物,顺便说一下 .NET 4 完全缺失(这应该意味着勾选 .NET 4.5 意味着 .NET 4,但为什么所有这个烂摊子,而不是简单的 aspnet_regiis 命令)。
  • @Visar 他们可能决定创建一个向导,以便人们可以看到 UI。但是,他们没有将其添加为替代方式并保留两种配置方式,而是删除了命令行工具。非常意外。
【解决方案3】:

执行以下步骤以在 Windows 10

在 IIS 下启用 SVC 文件处理
  1. 按Window键+R(会弹出运行命令,输入optionalfeatures并回车。
  2. 它将带来程序功能向​​导。 确保选择以下选项,如快照所示。

按照以下快照中提到的步骤进行操作

【讨论】:

  • 这正是我所需要的!好帖子! +1 图形
【解决方案4】:

对于 Windows 8 启用 WCF 必须在管理员启动的 Visual Studio 命令提示符下运行这些命令:

DISM /Online /Enable-Feature /FeatureName:WAS-WindowsActivationService
DISM /Online /Enable-Feature /FeatureName:WAS-ProcessModel
DISM /Online /Enable-Feature /FeatureName:WAS-NetFxEnvironment
DISM /Online /Enable-Feature /FeatureName:WAS-ConfigurationAPI
DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45

【讨论】:

  • 我确实先卸载(使用“DISM /Online /Disable-Feature”),然后重新安装并工作!
猜你喜欢
  • 1970-01-01
  • 2017-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-15
  • 1970-01-01
  • 1970-01-01
  • 2012-06-01
相关资源
最近更新 更多