【问题标题】:How to publish WCF service on IIS 7如何在 IIS 7 上发布 WCF 服务
【发布时间】:2020-05-05 09:07:43
【问题描述】:

我已经在本地机器上的 IIS 上开发并发布(通过 VS 2013 中的“发布”功能)一个简单的 WCF Web 服务。 物理部署路径是文件夹:c:\inetpub\wwwroot\MyWCF_Service_On_IIS\ 我在 IIS 上看到虚拟文件夹已在“默认网站”下创建(同名:MyWCF_Service_On_IIS)。默认网站侦听端口 80。 为什么无法访问该服务?路径和 url 的任何组合都会失败。 我试过了:

localhost/MyWCF_Service_On_IIS/Service1.svc(Service1.svc 是托管唯一端点的 .svc 文件);

localhost/Service1.svc

127.0.0.1/MyWCF_Service_On_IIS/Service1.svc

127.0.0.1/Service1.svc

本地主机

127.0.0.1

即使我不公开元数据端点,我也希望至少看到有关服务以及如何获取元数据本身的帮助页面。 但我只得到错误 无论我做什么尝试都会惨遭失败。 我想一劳永逸地知道 IIS 用于将虚拟文件夹映射到物理文件夹的规则是什么。

【问题讨论】:

    标签: wcf iis-7


    【解决方案1】:

    我们应该使用FileSystem模式将所有相关文件/文件目录直接部署到网站的根文件夹。

    C:\inetpub\wwwroot

    此外,我们需要启用 Windows 功能来处理 SVC 扩展以支持 WCF 服务。

    在这种情况下,无需使用虚拟文件夹。 这是我这边wwwroot文件夹的内容。

    bin 文件夹
    PrecompiledApp.config
    服务.svc
    网页配置

    服务网址是http://localhost/service.svc
    如果我们使用虚拟路径指定 URL。我们应该将虚拟路径转换为应用程序。

    则服务 URL 为http://localhost/MyWCF/Service1.svc
    如果问题仍然存在,请随时告诉我。

    【讨论】:

    • 实际上未设置 Http 激活。设置后一切正常..非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 1970-01-01
    • 2011-08-14
    • 1970-01-01
    • 2014-04-28
    • 1970-01-01
    • 2011-01-01
    相关资源
    最近更新 更多