簡體   English   中英

使用JavaScript修改混合內容HTML

[英]Modify Mixed-Content HTMLs using JavaScript

最初,我的網站中沒有任何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">

是否可以使用JavaScript將<img src="http://www.example.com/image.png">修改為<img src="https://www.example.com/image.png"> 如果我使用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"> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM