首页 > 解决方案 > 应用程序负载均衡器重定向

问题描述

我有一个 EC2 实例,它托管在 IIS 中运行的网站。我还设置了一个带有 HTTPS 侦听器的 AWS Application Load Balancer,我在其中添加了我的网站的 SSL 证书(保存在 AWS Certificate Manager 中)。HTTPS 侦听器将流量重定向到我的目标组,该目标组又指向我的 EC2 实例。EC2 实例使用安全组仅允许来自负载均衡器的流量。

首先,我认为应用程序负载均衡器解密 SSL 流量是否正确,因此,它使用 HTTP 转发到我的目标组(换句话说,我的 EC2 实例的安全组只需要接受来自负载均衡器的 HTTP 流量我可以从 IIS 中删除我的 SSL 证书)?

其次,我目前遇到的主要问题是该站点具有某些资源(CSS、JavaScript 等)的相对路径。结果,当我浏览该站点时,我的 FireFox 控制台中出现混合内容错误。我在负载均衡器中设置了一个 HTTP 侦听器以将流量重定向到 HTTPS,但这似乎不适用于相对路径。

我不想特别编辑站点来更改完全限定的 HTTPS URL 的相对路径,因为它是一个非常复杂的内容管理系统。此外,在使用负载均衡器之前,该站点可以完美地提供内容(DNS 条目指向我的 EC2 实例的公共 IP 地址,并且 IIS 中有一个重写规则来处理非 HTTPS 流量)。

任何建议将不胜感激。

标签: amazon-web-servicesssliisload-balancing

解决方案


打开您的浏览器并单击“网络”选项卡并检查这些呼叫是否应该转到其他正在使用的地方HTTP,这些是来自您的应用程序的呼出呼叫,重定向不会解决这些问题。看截图

在此处输入图像描述

在您的情况下似乎是同样的错误,您从其他方面提供图像,而不是来自 EC2,这意味着 EC2 服务器应该回答的那些请求可以正常工作,但是您的代码尝试提取 JS 文件或其他资源的那些请求是拨出电话,这与 LB 重定向规则无关。

最好将您的应用程序和所有 URL 更新为 https。

当用户访问通过 HTTPS 提供的页面时,他们与 Web 服务器的连接使用 TLS 加密,因此可以免受大多数嗅探器和中间人攻击。包含使用明文 HTTP 获取的内容的 HTTPS 页面称为混合内容页面。像这样的页面只是部分加密,未加密的内容可供嗅探器和中间人攻击者访问。这使页面不安全。

在此处输入图像描述


推荐阅读