javascript - 使用 JavaScript 修改混合内容 HTML

标签 javascript html mixed-content

起初,我的网站中没有任何 SSL 证书,因为托管提供商不允许。

因此,我已将域名转移到 CloudFlare 并为我的网站获取了 SSL 证书。

对于 SSL 证书,网站中的内容应类似于 <img src="**https**://www.example.com/image.png (不是 <img src="http://www.example.com/image.png"> ),否则它将显示有关混合内容的问题..

因此,通过遵循规则,我做了同样的事情。但在底部,一些第三方广告被放置在托管提供商拥有的位置,其中包含 http://联系。因此,我在浏览器中收到了不受信任的证书错误。

托管提供商不允许通过付费或其他方式编辑或删除这些项目。

但是CloudFlare已经有了一个可以改变一切的系统<script src="http://www.example.com/script.js"></script>进入<script src="https://www.example.com/script.js"></script>自动地。但我的问题是,它无法改变<img src="http://www.example.com/image.png">进入<img src="https://www.example.com/image.png"> .

是否可以修改<img src="http://www.example.com/image.png">进入<img src="https://www.example.com/image.png">使用JavaScript?如果我使用JavaScript会解决这个问题吗??

最佳答案

尝试在文档 HTML 上使用 String.replace。

编辑:经过更多研究,您可能想尝试使用:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

而不是 JavaScript 解决方案

document.documentElement.innerHTML = document.documentElement.innerHTML.replace("http://", "https://");
console.log(document.documentElement.innerHTML);
<html>
<head></head>
<body>
</body>
</html>
<img src="http://somethingsomething">

关于javascript - 使用 JavaScript 修改混合内容 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45540490/

相关文章:

html - 将箭头样式的列表元素包装在另一个箭头中

java - 如何编码混合内容节点?我遇到了 Marshal.Exception

https - 阻止所有混合内容

javascript - 下拉价格过滤器

javascript - 向 Google 发送 ajax 请求以确保计算机已连接到互联网

javascript - TypeScript AMD 到浏览器上的单个文件

html - 是否有一个轻量级的 Web 模板系统可以在部署到静态 HTML 之前进行编译?

javascript - 我不知道如何用 Qunit 测试这个?

jquery - Bootstrap 水平表格和表格的问题

css - 在 HTTPS 中加载 Google 字体,内容被阻止