有什么方法可以强制 Chrome 在所有网站上使用 https?

有什么方法可以强制 Chrome 在所有网站上使用 https?

可能重复:
强制浏览器加载网站的“https”版本,而不是“http”版本?

如果可以的话,我愿意接受建议。

答案1

不可以,因为如果网站不支持 https。例如https://google.com踢你http://google.com https://amazon.com向您发出一个大红色警告。 https://apple.com甚至没有加载页面。

答案2

您所要求的已经是一个名为 HTTPS-Everywhere 的 Firefox 插件。Chrome API 似乎没有提供足够的控制来允许这样做URL 重写级别

即使你可以,也有原因导致不是每个人都使用 https、缓存和虚拟主机等。最近有一个slashdot 帖子涵盖一些原因。您无法盲目地说“http => https”,因此您需要一个像上面那样的智能插件,但 chrome 中没有这个插件。

答案3

这不是一个真正的答案,但是如果您有 FireBug 或 JavaScript 控制台可用,您可以这样做...使用 JavaScript 检查站点是否存在 HTTPS 版本,如果存在则转到该版本...否则,这只会​​警告()您该站点不存在 HTTPS 版本。

也许这只是对你问的问题的一个看法?我不知道……

var jQuery = jQuery || 空;

if (!jQuery){//在 jQuery 中加载
    (函数(){j=document.createElement("SCRIPT");j.src="http://code.jquery.com/jquery-latest.pack.js";document.getElementsByTagName("HEAD")[0].appendChild(j);})(
}
var timeout = window.setInterval(function() { // 等待 jQuery 加载
    如果(jQuery){
        window.clearInterval(timeout); // jQuery 加载后立即终止间隔
        (function($) { // 确保 $=jQuery
            $(document).ready(function() { // 文档准备就绪时...
                if(document.location.protocol != 'https:') { // 检查协议以查看我们是否已使用 https
                    var url = document.location.href.replace('http:','https:'); // 如果没有,请尝试加载 https 版本
                    $.ajax({
                        类型:'GET',
                        url: url,
                        成功:函数(r){
                            window.location = url; // 如果成功,则加载 https 版本
                        },
                        错误:函数(r){
                            alert('此站点不存在 https'); //
                        }
                    });
                }别的 {
                    alert('已在 https 上');
                }
            });
        })(jQuery);
    };
},1000);

相关内容