1

我有一个非常简单的 WCF 服务,我正在尝试将它托管在我的本地 IIS 中。我一直收到这个错误:

HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

我尝试将应用程序池更改为经典,但仍然无法正常工作。我尝试了一堆其他网站,但没有成功。

任何人都可以帮忙吗?

更新 1:

我在 bin 文件夹中有我的 dll 和 pdb 文件,并且我有这样的 web.config:

<configuration>
    <system.web>
      <compilation debug="false" targetFramework="4.5" />
      <httpRuntime targetFramework="4.5" />
    </system.web>
  <system.serviceModel>
    <serviceHostingEnvironment>
      <serviceActivations>
        <add factory="System.ServiceModel.Activation.ServiceHostFactory" relativeAddress="./HelloWorldService.svc" service="MyWCFServices.HelloWorldService" />
      </serviceActivations>
    </serviceHostingEnvironment>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="true" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>

然后在 IIS 中添加一个新项目,显示包含 dll 的文件夹的路径。转到此链接时出现错误:http://mycomputername/HelloWorldService/HelloWorldService.svc.

更新 2:

在我的计算机中,.NET 3.5.1 功能已关闭。我把它打开了。然后我得到了这个错误: 在此处输入图像描述 然后我将应用程序池中的 .net 版本更改为 4.0.30319。这些更改后仍然相同的错误:

HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
4

1 回答 1

1

根据评论链:

在服务器级别的 IIS、ISAPI 和 CGI​​ 限制中,您需要启用 v4。

如果 v4 不存在,您需要使用 IIS 安装/注册 ASP.NET v4:

c:\windows\microsoft.net\framework\v4.0.30319\aspnet_regiis.exe -i
于 2013-04-10T21:26:17.373 回答