我已经准备好了一个ASP.NET Web应用程序(ASP.NET V2.0),并在我的IIS(V7.5)中进行了配置。我在我的应用程序中使用Request.Url.AbsoluteUri,并且它在我的服务器上运行良好。我将Web应用程序部署到客户的服务器机器(2008 R2 Server)上。但是,在我的客户环境中,Request.Url.AbsoluteUri始终返回HTTP URL,即使他们启用了SSL。客户端的服务器机器是否配置了任何IIS设置?请指导我。
我已经准备好了一个ASP.NET Web应用程序(ASP.NET V2.0),并在我的IIS(V7.5)中进行了配置。我在我的应用程序中使用Request.Url.AbsoluteUri,并且它在我的服务器上运行良好。我将Web应用程序部署到客户的服务器机器(2008 R2 Server)上。但是,在我的客户环境中,Request.Url.AbsoluteUri始终返回HTTP URL,即使他们启用了SSL。客户端的服务器机器是否配置了任何IIS设置?请指导我。
我以前见过这种情况。原因是生产站点上的负载均衡器终止了SSL连接。它本身仅使用HTTP连接到IIS。这种方案是将SSL计算卸载到负载均衡器的一种方式。这意味着,尽管浏览器看到HTTPS协议,但IIS应用程序永远不会看到该协议。
正如spender在评论中指出的那样,请查看到达应用程序的HTTP头。负载均衡器很可能向其中添加信息,使您可以重构一切。
http://www.bugdebugzone.com/2013/12/identifying-https-or-ssl-connection-in.html