我在IIS6上使用WCF服务托管一个IIS6应用程序,我使用的是windows身份验证。日志类似于:
/.../ClientBin/NameOfWebApp-AuthenticationDomainService.svc/binary/GetUser ... 404 0 2之前在另一台2003服务器上成功地安装了此应用程序,我有经验配置.NET框架4,我的意思是我使用了"aspnet_regiis“、"servicemodelreg”、"httpcfg“等。之后,我甚至创建了一个新的网站,以确保一切就绪。事实上,当我试图使用web浏览器访问我的实际域服务时,一切都正常。所以我相信WCF是正确的。我查过:
允许将aspnet_isapi.dll
我不明白为什么它在一台服务器上工作,而不是在另一台服务器上工作。事实上,我要在另一个关键的生产服务器上安装,我必须确保没有意外。
你有什么想法吗?
附加信息:
我想,由于WCF一般都在工作,因此域服务主机在处理没有svc文件的服务调用时会出现问题。我的web.config中已经有以下设置:
<system.web>
<httpModules>
<add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</httpModules>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<add name="DomainServiceModule"
preCondition="managedHandler"
type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule,
System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</modules>
</system.webServer>有人用IIS6解决了这个问题吗?
发布于 2011-04-15 08:46:57
我注定要回答我自己的问题。仅将.svc扩展名设置为使用aspnet_isapi.dll是不够的,因此验证不应检查文件是否存在设置。这就是DomainServiceModule的作用所在。
https://stackoverflow.com/questions/5659514
复制相似问题