2019-11-18
描述
如果页面当前是 HTTP,把他重定向到 HTTPS。除此外,还应替换他的历史,以便按下返回按钮时,并不会让他返回 HTTP 页面。
提示
- 使用
location.protocol
获取当前使用的协议 - 如果不是 HTTPS,使用
location.replace()
将当前页面替换为 HTTPS - 使用
location.href
获取完整的地址,使用String.prototype.split()
将协议部分从 URL 中分离出去 - 当然你也可以在服务端使用 301 重定向
- 如果可以的话,HSTS 将会更棒
代码
const httpsRedirect = () => {
if (location.protocol !== 'https:') location.replace('https://' + location.href.split('//')[1]);
};
示例
如果你在 http://hacpai.com/activity/checkin,你将被重定向到 https://hacpai.com/activity/checkin
httpsRedirect();
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于