ASP.NET 站点通过 SSL 从 Visual Studio 而不是 IIS 连接到远程

标签 asp.net wcf visual-studio-2010 ssl iis-7

我的问题是:为什么当项目在 Visual Studio 2010 中运行时开发站点可以工作,但在同一台 PC 上从 IIS 提供服务时却不能工作?

我正在尝试建立客户网站的开发副本。启动时,站点会连接到远程数据库服务器。该连接使用 WCF 和 SSL 证书来保护它。当我在我的 PC 上安装该站点时,按照说明,我将证书链安装到“受信任的根证书颁发机构”中,并添加了注册表项和主机条目以解析与远程服务的连接。

当我在我的 PC 上的 Visual Studio 2010 中打开解决方案并在内置的 ASP.NET 开发服务器中运行它时,它起作用了——我的工作站通过自定义端口 (444) 上的 SSL 连接到远程服务,并且开发站点从服务中成功查询数据。所有这些都由项目提供的 DLL 处理,并且超出了我的工作范围。我事先被告知连接对 SSL 证书、两台机器之间的系统时钟时间协议(protocol)等非常挑剔,我试了几次才让它工作。

但是,当我在本地 IIS(Windows 7、IIS 7.5)中运行该站点时,该站点无法连接到远程服务;该服务不接受 SSL 连接。发生这种情况时,启动代码会抛出异常,从而阻止网站进一步加载。

其他一切似乎都工作正常:唯一的问题是 VS 需要 32 位版本的安全连接 DLL,而 Windows 7 上的 IIS 需要 64 位版本。两者都提供给我,我根据需要交换它们。

最佳答案

根据评论,答案是:检查证书链(以信任 WCF 连接使用的 SSL 证书)是否安装到本地计算机(以便 IIS 看到它),而不仅仅是当前用户(使用的帐户) Visual Studio )。

关于ASP.NET 站点通过 SSL 从 Visual Studio 而不是 IIS 连接到远程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8749221/

相关文章:

visual-studio-2010 - 重新关联 Visual Studio 2012 的文件类型

c++ - 使用 WMI 获取串行硬盘

asp.net - 如何在 asp :textbox 中放置提示

c# - 有没有办法检查 GridViewRow 是否有 TemplateFields 或 BoundFields?

.net - 何时使用 WCF 服务ASP.Net 页面?

c# - 在业务对象和 DTO 之间共享内容

WCF 无法达到 100% CPU。瓶颈是什么?

c# - ASP.NET 5 (vNext) 中的身份验证

c# - .Net Core 5 应用程序是如何组织/结构化的?或者如何将 n 层类库项目添加到 .Net 核心 Asp.Net 解决方案?

c# - 无法运行非常简单的 COM 客户端