已准备好 TLS 证书、Route53、ALB 和 EC2,但浏览器阻止了我网站的部分内容以获取混合内容

Got TLS cert, ,Route53, ALB, and EC2 all ready but browser is blocking part of my website for mixed-content

所以我们今晚要完成这个项目。除了 TLS 证书部分,我们已经使用 Terraform 提供了所有必要的 AWS 服务。我们有 EC2、Route53、ALB、VPC。一切正常,但是一旦我们尝试访问我们的网站,浏览器就会阻止一部分。浏览器显示证书在那里并且有效。我们的 ALB conf 是我们将 http 重定向到 https,然后从 https 重定向到我们的 EC2。在 EC2 中,我们的 apache 虚拟主机文件有 80 和 443。我们无法找出问题所在。

这是我们的域名,git-legion.dev

我们尝试了所有不同的浏览器,它们都显示证书在那里,但由于内容混合,它们阻止了部分网站。

我们的网站应该是这样的

但浏览器是这样显示的

如果您查看 url 返回的文档(在随后的重定向之后),您会看到一些资源具有 http://` url。

$ curl -sL https://git-legion.dev | grep -F 'http://'
            <link rel="stylesheet" href="http://git-legion.dev/js/plugins/select2/select2.min.css">
            <link rel="stylesheet" href="http://git-legion.dev/css/dist/all.css?id=98db4e9b7650453c8b00">
                            <a href="http://git-legion.dev/setup" class="bs-wizard-dot"></a>
                            <a href="http://git-legion.dev/setup/migrate" class="bs-wizard-dot"></a>
                            <a href="http://git-legion.dev/setup/user" class="bs-wizard-dot"></a>
                                  <form action="http://git-legion.dev/setup/migrate" method="GET">
              <script src="http://git-legion.dev/js/dist/all.js?id=bf1b244d8cc9096e4a18" nonce="yn3lThimgEBlyTMj1FLCFRAIdVJuDCEYhXzPBNRD"></script>
                    url: "http://git-legion.dev/setup/mailtest",

这就是浏览器拒绝访问它们的原因,因为原始连接是安全的,但这些其他资源则不是。关于如何最好地构建这些 URL,没有唯一的答案,但您的应用程序框架应该能够帮助您。