.app domian Apache 指令仅添加到端口 80 配置未加载 - 适用于其他 gTLD

.app domian Apache directive only added to port 80 config not loading - works on other gTLDs

所以我在我的 apache http virtualhost :80 配置中有以下设置:

<Location "/analytics/">
    ProxyPreserveHost On
    ProxyPass "http://192.168.1.1/"
    ProxyPassReverse "http://192.168.1.1/"
</Location>

这在通过 http 连接时工作正常,甚至在使用 .com / .org 等普通 gTLD 时适用于 https。

但是在 .app gTLD 上使用它时,配置根本不起作用。似乎是因为 .app gTLD 的强制 SSL HTTPS 性质,它甚至没有加载 Apache :80 配置?

现在,当我将上面的配置也添加到 apache https virtualhost :443 配置中时,它就可以正常工作了。

我有一些问题:

  1. 我花了几个小时寻找关于您是否必须将位置/目录/别名指令应用于 Apache 中的 80 和 443 配置的答案?大多数时候只要将它们添加到 80,它们似乎就可以正常工作?但不是在这个 .app 案例中,但我似乎无法找到标准是什么 - 你是否必须将这些指令应用于 80 和 443 或者 80 是否足够并且 443 然后从 80 得到它?

  2. 为什么 .app 域需要 443 中的设置,而其他 gTDL 不需要?是因为浏览器只是从 apache 服务器更严格地加载吗? 443 配置仅适用于 .app,但在加载 https 时对其他 gTDL 不那么严格?

由于我在网上找不到太多关于它的信息,因此发布了其中一些内容以供其他人参考,但我也对其中一些问题的答案感兴趣。

当您注册您的 .APP 域时,您的注册商应该(由注册管理机构强制要求 - Google)向您显示一个片段,解释 "SSL certificate"(sic) 是需要 .APP 个域才能正常工作。

这意味着您只能对这个 TLD 中的服务器名称进行 HTTPS 查询,而不能进行 HTTP 查询。

为什么?因为 Google 在浏览器使用的 HSTS 预加载列表中注册了 TLD。出于安全原因,这使他们永远不会尝试 HTTP 查询,而只会尝试 HTTPS。您仍然可以在端口 80 上配置 Web 服务器,并让命令行客户端或 HTTP 库连接到端口 80。但是主流浏览器遵循 HSTS 预加载列表,因此无论您用它们做什么,都不会打开到端口 80 的连接。

您可以在我几个月前对同一问题的回答中找到详细信息: