答案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);