Google chrome 如何在Google Chrome中从HSTS列表中永久排除localhost

Google chrome 如何在Google Chrome中从HSTS列表中永久排除localhost,google-chrome,localhost,hsts,Google Chrome,Localhost,Hsts,这是我们的后续问题 有人知道,如何在谷歌Chrome的HSTS列表中永久排除localhost 或者,任何其他不需要开发人员访问chrome://net-internals/#hsts和删除localhost每次从HTTPS项目切换到HTTP上的其他项目时?您可以按照解决方案进行操作 当Google Chrome从http://localhost至https://localhost,请执行以下操作: 打开“开发人员工具”面板(CTRL+SHIFT+I) 单击并按住“重新加载”图标 菜单将打开 从

这是我们的后续问题

有人知道,如何在谷歌Chrome的HSTS列表中永久排除
localhost


或者,任何其他不需要开发人员访问
chrome://net-internals/#hsts
和删除
localhost
每次从HTTPS项目切换到HTTP上的其他项目时?

您可以按照解决方案进行操作

当Google Chrome从
http://localhost
https://localhost
,请执行以下操作:

  • 打开“开发人员工具”面板(CTRL+SHIFT+I)
  • 单击并按住“重新加载”图标
  • 菜单将打开
  • 从该菜单中选择第三个选项(“空缓存和硬重新加载”)

  • 更新:

    如果你想免费的话,你可以为这些域安装一个合适的SSL证书,这样你就不需要再摆弄HST了。看一看


    您可以编辑系统的主机文件:

    • 在Windows上:
      C:\Windows\System32\drivers\etc\hosts
    • 在Linux上:
      /ets/hosts
    在其中,您可以为每个项目定义不同的域:

     127.0.0.1    project1.local
     127.0.0.1    project2.local
     127.0.0.1    projectN.local
    
    注意:我使用的是*.localdomains(您几乎可以使用任何东西),因为您已经将localhost设置为重定向到https,因此我们必须使用不同的域。尽管我强烈建议您安装一个真正的SSL证书,并将您在HST上所做的任何修改重置为默认值

    保存后,当您在任何浏览器中导航到这些域时,它将从
    127.0.0.1
    (localhost)加载。如果您使用apache/nginx作为服务器,您还可以选择为每个域定义VirtualHost,这样您就不必在每次切换项目时更改httpd文件夹


    当然,您必须为新域的这些项目重新颁发任何证书,但这些证书对于每个项目都是唯一的。在Chrome上,对于没有证书的项目,您不需要对每个域的网络内部结构进行多次修改(对于有证书的项目,修改次数为0次)。

    Chrome 78支持一个名为。您可以将“localhost”列为域以绕过HST。 要在Linux上配置Chrome策略,只需在/etc/opt/Chrome/policies/managed/policies.json上创建一个包含以下内容的文件:

    {
        "HSTSPolicyBypassList": [
            "localhost"
            ]
    }
    
    您可以看到Chrome加载的策略,键入chrome://policy/ 在地址栏

    非永久性修复(可能涉及安全问题) 我找到了一个“补丁”。一些有趣的东西,但不能是永久性的修复,因为它可能会导致多个安全问题

    以下是我所做的:

  • 打开谷歌浏览器
  • 在搜索栏中键入
    chrome://flags/#allow-不安全的本地主机
  • 已启用
    允许从本地主机加载的资源使用无效证书。
  • 如果重新加载应用程序,警告将消失


    PS我这样做是因为我需要重新创建一个认证,但没有时间。这就是我为什么这么做的原因。当我的认证在本地生效时,我将关闭此功能。

    酷!遗憾的是,如果没有开发工具,这些选项不会弹出。我仍然在寻找一个更“永久”的解决方案,但这肯定会有帮助!谢谢嗯,在windows上的Chrome
    79.0.3945.117上,这个解决方案不起作用。我继续执行307重定向。我仍然必须访问
    chrome://net-internals/#hsts
    并将其删除。第1.5步是切换回加载localhost页面的选项卡/path.Wow,非常感谢!这救了我一命。很好,但是这只有在省略
    .localhost
    部分时才有效。(如果我把它保留在那里,它仍然重定向到https。)你能编辑你的答案吗?编辑后,还添加了HSTS的替代方案。对我来说不起作用:Chrome仍然切换到https和端口8443。你清除了域的HSTS了吗?此答案提供了一种在本地主机中使用多个项目的替代方法。如果每个域使用多个具有不同安全要求的项目,则此选项将不起作用。请注意
    project1.dev
    local.dev
    和其他
    *.dev
    都不是好的选择,因为Chromium在Google购买.dev作为gTLD后不久就开始实施HST。