为什么 Google Chrome 会自动将 `http://app` 重定向到 `https://app` 但不会重定向到 `http://app2` 或 `http://napp `?

Why does Google Chrome automatically redirect `http://app` to `https://app` but doesn't do that to `http://app2` or `http://napp`?

环境:

我做了什么:

127.0.0.1   app
127.0.0.1   app2
127.0.0.1   napp

我在 Google 上搜索并看到了谈论从 http 自动重定向到 https 的帖子,例如 How to Stop Chrome from Automatically Redirecting to https。我通过删除域 app 的安全策略并清除所有时间的浏览器缓存来关注帖子,但我仍然从 http://app 重定向到 https://app。 (实际上,我使用的是新安装的 OS 和 Google Chrome,并且在进行测试之前从未打开过 任何 网站。)

为什么 Google Chrome 会自动将 http://app 重定向到 https://app 但不会重定向到 http://app2http://napp?

我也了解到Chrome & Firefox now force .dev domains to HTTPS via preloaded HSTS and Google rolls out .app domains with built‑in HTTPS。所以看起来浏览器正在使用 preloaded/builtin HSTS 来强制使用 HTTPS但是 http://app 算作 .app 域的情况吗?

我认为应该是一些浏览器设置,因为 FireFox 没有进行重定向。

简单地说,Chrome 使用 a HSTS preload list to automatically redirect certain domains from HTTP to HTTPS. This preload list is "a list of sites that are hardcoded into Chrome as being HTTPS only." app is already included into this preload list, as shown by this link:“状态:应用当前已预加载。”因此,当输入 http://app 时,Chrome 会自动将其重定向到 https://app。但是 app2napp 不包括在内,所以 http://app2http://napp 没有被触及。

我写了文章 Why does Google Chrome automatically redirect http://app to https://app but doesn't do that to http://app2 or http://napp? 来解释更多细节和其他相关链接。