我准备了一个 ASP.NET Web 应用程序 (ASP.NET V2.0),并在我的 IIS (V7.5) 中对其进行了配置。我在我的应用程序中使用了 Request.Url.AbsoluteUri,它在我的服务器上运行良好。我在客户端的服务器机器(2008 R2 Server)上部署了 Web 应用程序。但是在我的客户端环境中,Request.Url.AbsoluteUri 总是返回 http url,即使他们启用了 SSL。我的客户端服务器机器上是否配置了任何 IIS 设置?请指导我
问问题
5795 次
2 回答
12
我以前见过这个。原因是生产站点的负载均衡器终止了 SSL 连接。它本身仅使用 HTTP 连接到 IIS。此方案是一种将 SSL 计算卸载到负载平衡器的方法。这意味着 IIS 应用程序永远不会看到 HTTPS 协议,尽管浏览器确实看到了它。
正如 spender 在评论中指出的那样,请查看到达您的应用程序的 HTTP 标头。负载均衡器可能会向它们添加信息,使您可以重建所有内容。
于 2012-09-26T10:20:16.937 回答
1
如果要检查请求是 HTTP 还是 HTTPS。你应该检查标题。下面的链接真的帮助我解决了这个问题。
http://www.bugdebugzone.com/2013/12/identifying-https-or-ssl-connection-in.html
于 2017-02-18T10:51:28.310 回答