我们已经多次成功地将我们的站点部署到不同的环境中,但遇到了一个似乎与 RIA 服务设置有关的问题。我们在 Windows Server 2008 64 位机器上进行部署。
基本上我们无法调用我们的任何 WCF RIA 服务端点,我们总是从服务器返回 404。我们能够访问“原始”svc 端点,接收标准的自动生成页面,但每当我们尝试调用一个方法时,我们都会收到 404。
澄清一下,以下 URL 返回标准自动生成的服务页面:
http://localhost/ClientBin/Our-Namespace-DomainService.svc
而以下 URL 仅返回 404
http://localhost/ClientBin/Our-Namespace-DomainService.svc/binary/GetSchemaVersions
我们在stackoverflow上做了很多搜索,但无济于事。我们已经完成了完全重新安装 IIS 的基本工作。确保调用了 aspnet_regiis,确保正确注册了 svc mimetype(这应该通过返回的“原始”页面显而易见),进行 WCF 激活注册,甚至尝试在服务器上安装 RIAServices,使用 SERVER=TRUE(我们bin 默认部署 RIA 的东西)。我们在站点上还有一个额外的服务端点,它是“纯”WCF,它工作得很好(也使用 *.svc URL)。我们在日志中看不到任何错误消息,Fiddler 和 IIS 日志只是声明返回了 404。如前所述,我们最近已将其部署到我们认为类似的环境(相同的操作系统、64 位等)。
我们目前认为上面有些奇怪的 URL 语法(在文件后面有一个路径段)在某种程度上没有被 IIS 管道正确解释,但正在寻找线索来理解可能发生的事情。
任何理解代码如何/为什么没有正确执行的经验、见解或方法都将不胜感激。