我正在与IIS和SOAP Webservices挣扎,需要提示。
我使用BizTalk编排来创建一个简单的Web服务,该WebS服务调用SQL存储的过程(针对BizTalk部署并以WCF服务为单位(。我碰巧使它在开发机器上起作用,但是当我将服务运送到测试环境时,它无法正常工作。
首先发布了网络服务本身,我可以通过下载WSDL文件并将其添加到SOAPUI。
来订阅它。但是,一旦我尝试调用请求,网络服务器将返回HTTP 404作为响应。如果我停止BizTalk编排,我将获得HTTP 500。因此,我猜与IIS连接的BizTalk有效。但是,不会在MessageBox上部署任何消息(在BizTalk中,我在端口名称上过滤消息(
部署了大约30个其他Web服务,它们都使用相同的Web.config。它们链接到IIS中的同一Apppool。
我尝试的东西:
为应用程序创建了单个IIS AppPool
在目录和biztalk-/iis-users上检查了正确的权限
重新部署解决方案,并将其重新出版为服务
是的,这是一个卑鄙的声明,但它在我的开发机器上起作用。配置与目标板相同,除了目标是集群系统。但是我不认为这是问题。
IIS的日志简单地显示了请求,但没有关于它的信息。我真的不知道在哪里看。有人有想法吗?
编辑I:
肥皂响应
<body>
<div id="header">
<h1>Server Error</h1>
</div>
<div id="content">
<div class="content-container">
<fieldset>
<h2>404 - File or directory not found.</h2>
<h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>
</fieldset>
</div>
</div>
</body>
我发现了问题。
我们的测试和潜在环境之前有一个内部负载平衡,该平衡自动将通信从http切换到https。
biztalk中Web服务的WCF customisolated收费定位具有basichttppsecurityelement的basichttpbinding选项,为无。导致HTTP 404未发现错误。将其设置为"运输"后,它可以在LoadBalancer中处理HTTPS重写,并且可以使用。
找不到404 =运输安全失败。