问题:

Chrome会强制将http重定向到https,就算是在浏览器手动输入http://xxx也不可以。

解决方案:

1. 在chrome的地址栏输入chrome://net-internals/#hsts,在Query HSTS/PKP domain中查询指定的域是否有HSTS记录,如果存在,在Delete domain security policies中删除该域即可。
2. 如果完成第一步后仍不能访问,可以尝试清除浏览器缓存。

原因:

要解释上述情况产生的原因,则必须要先了解浏览器的HSTS功能。

HSTS强制要求浏览器与服务器进行HTTPS通信,例如,如果example.com站点开启了HSTS,则不管是在浏览器输入example.com或是http://example.com,亦或者在网页上点击http://example.com链接,浏览器都会自动将http替换为https,然后再发送请求。这样很大程度上避免了SSL剥离攻击的发生。

SSL剥离攻击其实是中间人攻击的一种,它基于用户很少直接在浏览器中输入https或者是用户经常通过重定向从http跳转到https,这样攻击者可以在用户访问http页面时替换所有的https开头的链接来阻止浏览器和服务器建立HTTPS连接。

之所以说是一定程度上避免,而不是完全避免,是因为HSTS也存在一定的漏洞,这个漏洞就是HSTS的开启方式。浏览器如果探测到一个https请求的response头部包含Strict-Transport-Security,则会为该站点开启HSTS功能。这意味每个站点的第一次请求仍有被攻击可能,所以大多数浏览器都会在本地维护一个HSTS域名列表,该列表默认会包含一些经常访问的域名,并且,在访问https站点时,也会将该站点添加到HSTS列表中。所以说,当用https访问过一个站点后,即使用http再次访问该站点,浏览器也会用https,而解决方法就是将该域名从HSTS列表中删除。

Chrome下强制http重定向到https的问题的更多相关文章

  1. Nginx下HTTP强制重定向至HTTPS

    Nginx下HTTP强制重定向至HTTPS 对于nginx来说,配置http强制重定向至https有多种多样的写法.可以直接rewrite,也可以用301重定向.但是直接拷贝网上的配置往往会出现问题, ...

  2. Apache环境下强制http跳转至https的配置总结

    一. 简单实例介绍一般来说,apache配置好http和https后,如果想要做http强转到https,需要设置url重定向规则,大致需要下面几个步骤即可完成配置: 1)在httpd.conf文件里 ...

  3. firefox chrome强制指定网址使用https

    chrome强制网站使用httpschrome://net-internals/firefox强制指定网站使用https使用noScript插件

  4. Nginx下配置网站ssl实现https访问

    第一步:服务器环境,lnmp即Linux+Nginx+PHP+MySQL,本文中以我的博客为例,使用的是阿里云最低档的vps+免费的Linux服务器管理系统WDCP快速搭建的lnmp环境(同类产品还有 ...

  5. http强制跳转到https

    原文地址:http://m.blog.csdn.net/article/details?id=8549290 需求简介 基于nginx搭建了一个https访问的虚拟主机,监听的域名是test.com, ...

  6. Nginx的https配置记录以及http强制跳转到https的方法梳理

    一.Nginx安装(略)安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块.Nginx安装方法: 1 2 # ./con ...

  7. (转)Nginx的https配置记录以及http强制跳转到https的方法梳理

    Nginx的https配置记录以及http强制跳转到https的方法梳理 原文:http://www.cnblogs.com/kevingrace/p/6187072.html 一.Nginx安装(略 ...

  8. k8s ingress路由强制跳转至https设置

    为ingress配置增加注解(annotations):nginx.ingress.kubernetes.io/ssl-redirect: 'true' 就可以实现http强制跳转至https 不过默 ...

  9. Springboot以Tomcat为容器实现http重定向到https的两种方式

    1 简介 本文将介绍在Springboot中如何通过代码实现Http到Https的重定向,本文仅讲解Tomcat作为容器的情况,其它容器将在以后一一道来. 建议阅读之前的相关文章: (1) Sprin ...

随机推荐

  1. IntelliJ IDEA 注释模版 输入/**后 不显示配置好的模板

    简单一句话就是 当你在live templetes里配置好以后,记住abbreviation:输入框里的字母 比如我的是cc ,我要想写注释怎么办? 在方法上输入 /*cc 然后按tab键就出来了

  2. [类和对象]4 C++ static & friend

    1.静态成员变量和成员函数 思考:每个变量,拥有属性.有没有一些属性,归所有对象拥有? 1.1 静态成员变量 1)定义静态成员变量 关键字 static 可以用于说明一个类的成员 静态成员提供了一个 ...

  3. Python-有名匿名函数、列表推导式

    介绍: 匿名函数:    匿名函数用lambda关键词能创建小型匿名函数.这种函数得名于省略了用def声明函数的标准步骤,节省开辟空间. 列表推导式: 有名函数 #1.有名函数(初始) def squ ...

  4. HDU 3874 Necklace 树状数组

    题意:求区间内不同的数的和 离线处理,按查询右端点从小到大排序,从左往右扫一遍. 记录每个数出现的上一个位置,如果该数之前没有出现过,就加上,否则就在上一个位置减去. #include <cst ...

  5. LeetCode(一)

    Q&A ONE Given an array of integers, return indices of the two numbers such that they add up to a ...

  6. CodeForces D. Concatenated Multiples

    http://codeforces.com/contest/1029/problem/D You are given an array aa, consisting of nn positive in ...

  7. Linux下磁盘管理

    设置密码mkpasswdmkpasswd -s 0mkpasswd -s 0 -1 15 规定密码的长度 1. 查看磁盘或者目录的容量df 查看磁盘各分区使用情况 不加参数以k为单位 df -i in ...

  8. user-select & css

    user-select & css https://developer.mozilla.org/en-US/docs/Web/CSS/user-select https://css-trick ...

  9. RabbitMQ高可用镜像队列

    ## RabbitMQ高可用镜像队列 在分布式系统中,通常使用多个术语来标识主要副本和辅助副本.本指南通常使用"主"来引用队列的主要副本,而对于辅助副本则使用"镜像&qu ...

  10. 真·APIO2018滚粗记

    有人说只有大佬才会说滚粗啊爆零啊…… 然而我真滚粗真爆零啊…… D1: 听课,然后夏眠. 咦折纸……哦好吧太神仙了. 咦AI……好妙啊好妙啊. 咦二分……哇还有wqs二分这种神奇操作,学学学. (我是 ...