我在 Windows Server 2008 R2 x64 Enterprise Edition 上使用 IIS 7.5。在我们使用 ASP.NET 4.0 开发的项目中,我们使用了 WCF 服务。但是当软件从本地计算机运行时,它不会在域上运行。否则,我会收到以下错误:
HTTP 错误 404.3-未找到由于扩展配置,无法提供您请求的页面。如果页面是脚本,则添加处理程序。如果应该下载文件,请添加 MIME 映射。
您应该从安装 IIS 子组件
Control Panel
-> Programs and Features
-> Turn Windows features on or off
Internet Information Services
有小节 World Wide Web Services
/ Application Development Features
您必须在此处选中 ASP.NET
(将自动选择 .NET Extensibility
、ISAPI Extensions
、ISAPI Filters
)。仔细检查是否检查了特定版本。在 Windows Server 2012 R2 下,这些选项分为 4 & 4.5.
从 cmd
运行:
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
最后检查 IIS 管理器,您的应用程序使用 .NET 框架版本 v4.0 的应用程序池。
另外,请查看 this answer。
就我而言,连同 Mekanik 的建议,我在 Windows Server 2012 中收到了这个错误,我不得不在“添加角色服务”中勾选“HTTP 激活”。
在 windows server 2012 中,即使在安装了 asp.net 之后,您也可能会遇到此问题。
检查“Http 激活”功能。此功能也存在于 Web 服务下。
确保添加以上内容,一切对您来说都很棒!!!
我在访问 IIS 中本地托管的 wcf 服务时遇到问题。运行 aspnet_regiis.exe -i 没有工作。
但是,我幸运地遇到了以下情况:
它通知 servicemodelreg 也需要运行:
以“管理员”身份运行 Visual Studio 2008 命令提示符。导航到 C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation。运行此命令 servicemodelreg -i。
inetmgr
(win+R
) 1. 检查您是否拥有具有正确版本的 .NET ApplicationPools(aspnet_regiis
创建它)。 2. 在Sites
下找到您的站点/应用程序,然后在Basic Settings
中检查选择了哪个应用程序池。%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
可以解决问题