如何使用JavaScript将页面重定向到HTTPS?

HTTP是一种非常不安全且过时的协议,建议使用HTTPS代替。多年来,浏览器一直将HTTP网站标记为不安全,并在其上阻止某些功能。如果您的网站仍在使用HTTP,最好将其重定向到HTTPS

但是,如何使用JavaScript实现呢?您可以通过使用location.protocol轻松获取当前协议。如果不是HTTPS,则可以使用location.replace()将现有页面替换为页面的HTTPS版本。为了获取完整的地址,您可以使用location.href,使用String.prototype.split()将其拆分,并替换URL的协议部分。

const httpsRedirect = () => {
  if (location.protocol !== 'https:')
    location.replace('https://' + location.href.split('//')[1]);
};

httpsRedirect();
// 如果您在 http://mydomain.com 上,
//   您将被重定向到 https://mydomain.com

请注意,使用此方法时,按下返回按钮不会将其返回到HTTP页面,因为它在历史记录中被替换了。