远程部署Web应用程序和Web服务 - 404错误

时间:2016-01-14 01:50:20

标签: c# asp.net web-services visual-studio-2010 wcf

我在VS2010中创建了一个Web应用程序和WCF Web服务。它在当地工作正常。我想将Web应用程序和服务部署到测试服务器。应用程序和服务将位于同一服务器上。我将应用程序和服务发布到服务器,并为App创建了一个应用程序池,Paging。我将应用程序和服务添加到IIS中的Site文件夹,并将它们转换为应用程序。

当我尝试访问该应用程序时,出现404错误。我相信这是因为我需要启动Web服务。当它在本地运行时,我从VS2010项目启动Web服务,然后启动Web应用程序。我不也必须在Web服务器上启动Web服务吗?我该怎么做?

应用程序和Web服务文件夹位于以下文件夹中:C:\ inetpub \ wwwroot2 \ PagingService和C:\ inetpub \ wwwroot2 \ PagingTool。访问我尝试的网络服务http://localhost/PagingService/PagingService.Paging.svc时,我收到错误消息: 在主机上配置的身份验证方案('Ntlm')不允许在绑定'WSHttpBinding'('Anonymous')上配置的身份验证方案。

应用程序和Web服务在我的本地计算机上运行正常,是否必须更改身份验证,因为它位于Web服务器上?操作系统是Windows Server 2008。

这是我连接的app.config文件:

<services>
  <service name="PagingService.Paging" behaviorConfiguration="SimpleServiceBehavior">
    <endpoint address="" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IPaging" contract="PagingService.IPaging">
      <identity>
        <dns value="localhost" />
      </identity>
    </endpoint>
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
    <host>
      <baseAddresses>
        <add baseAddress="http://localhost:8732/Design_Time_Addresses/PagingService/Service1/" />
      </baseAddresses>
    </host>
  </service>
</services>
<bindings>
  <wsHttpBinding>
    <binding name="WSHttpBinding_IPaging"
            maxReceivedMessageSize="20000000"
            maxBufferPoolSize="20000000"
            sendTimeout="00:25:00">
      <readerQuotas maxDepth="32"
             maxArrayLength="200000000"
             maxStringContentLength="200000000"/>
    </binding>
  </wsHttpBinding>
</bindings>

任何建议都将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:1)

在IIS中,确保将Web服务的“匿名身份验证”设置为“已启用”。

enter image description here