• 初次使用http打不开页面,使用https打开过后使用http协议又能正常访问


    http协议为什么打不开https站点

    在访问一个https的站点,比如 https://www.aaa.com,首次访问时,访问的地址是 http://www.aaa.com,(不加S),出现的是网站不可用,打不开,再次使用https进行访问,就能正常打开。随后在使用http协议进行访问,会自动重定向到https的域名,这是浏览器缓存之后自动重定向的行为,或者是服务器端没有做好http到https站点的重定向?

    其实是这样的,第一次访问http页面,由于服务器端没有做好301重定向,所以出现链接断开无法访问,第二次正常访问https站点时,支持HSTS的浏览器响应头含有Strict-Transport-Security: max-age=31536000;意思是在接下来的一年(即31536000秒)中,浏览器只要向xxx或其子域名发送HTTP请求时,必须采用HTTPS来发起连接。比如,用户点击超链接或在地址栏输入 http://xxx/ ,浏览器应当自动将 http 转写成 https,然后直接向 https://xxx/ 发送请求。

    浏览器支持

    HSTS对浏览器的支持不尽相同:

    Chromium和Google Chrome从4.0.211.0版本开始支持HSTS
    Firefox 4及以上版本
    Opera 12及以上版本
    Safari从OS X Mavericks起
    Internet Explorer从Windows 10技术预览版开始支持,之后微软又向IE11用户推送了支持HSTS的更新。
     
     
  • 相关阅读:
    git-for-windows 安装无图标的问题
    开源协议
    根据iframe获取window
    JS的checkbox状态切换dom无变化
    SQL条件!=null查不出数据
    jquery获取select选中项的文本
    泛型擦除
    树形菜单数据结构
    jqgrid动态填充select
    巨坑:jqgrid竟然取不到编辑模式下input的值
  • 原文地址:https://www.cnblogs.com/engeng/p/6733861.html
Copyright © 2020-2023  润新知