今天,当我尝试将 Lightswitch 应用程序部署到运行 IIS 7.5 的 Windows 2008 R2 服务器时,我已经把我的挫败感发挥到了极致。导航到应用程序后,我收到以下错误:
查询“GetAuthenticationInfo”的加载操作失败。远程服务器返回错误:NotFound。
.NET 跟踪和服务器事件日志都有这样的说法:
发件人信息:System.ServiceModel.Activation.HostedHttpRequestAsyncResult/63835064 异常:System.Web.HttpException (0x80004005):服务“/Web/Microsoft-LightSwitch-Security-ServerGenerated-Implementation-AuthenticationService.svc”不存在。
配置详情如下:
- 我在访问控制选项下选择了“不启用身份验证”。
- 在我的“应用程序服务器配置”发布选项中,我选择了未选中先决条件复选框的 IIS 服务器。
- 在“发布输出”下,我正在本地磁盘上创建一个包。后来,我将该包复制到服务器并手动运行 .deploy.cmd ,这似乎工作正常。
- 我在“其他连接”下的数据库连接是正确的——它是一个可以在我的机器上运行的 SQL 登录,并且该服务器上的其他站点可以毫无问题地连接到同一个数据库服务器。
在服务器端:
- 该站点使用 ApplicationPoolIdentity 在其自己的 .NET 4.0 集成模式下的应用程序池中运行。
- 仅启用匿名身份验证。
我试过的:
- 从 Web 平台安装程序安装了 2011 年和 2012 年的所有 Lightswitch 东西。
- 安装 RiaServices.msi。
- 修复了 .NET 4.5。
- 跑aspnet_regiis -i
这些都没有任何效果。我对上面粗体错误的唯一提示是 .svc 是在运行时生成的,如果 WCF 端出现其他问题,它将引发 404 错误。(这就是我尝试安装 RiaServices.msi 的原因。)
我能够“现在远程发布到服务器”到我自己的本地 IIS Express,并且那里的应用程序运行良好。但是,将这些文件复制到远程服务器会产生与以前相同的结果。
有关如何进一步解决此问题的任何建议?