问题描述
我在 /etc/Nginx/sites-available/default
中实现了一个像这样的简单静态服务器,它将提供一堆文件
server {
listen 80;
server_name www.x.app x.app;
root /usr/share/app/front-end/build;
location / {
index index.html;
autoindex on;
autoindex_exact_size off;
}
}
但是当我浏览 http://www.x.app 时会立即被重定向到 https://www.x.app 但我想以 http 浏览并且我搜索了很多并找出了 chrome 获得的 Non-Authoritative-Reason: HSTS
标头(这将使用 307 Internal Redirect
重定向我)由于“HSTS”而发生安全
答案说在 Nginx 配置中使用 add_header Strict-Transport-Security "max-age=0";
但它没有用
P.S.1:我清除了我的 chrome 缓存,也不起作用
附言2:
在 Chrome 中查询 HSTS/PKP 域:
Found:
static_sts_domain: app
static_upgrade_mode: FORCE_HTTPS
static_sts_include_subdomains: true
static_sts_observed: 1613773712
static_pkp_domain:
static_pkp_include_subdomains:
static_pkp_observed:
static_spki_hashes:
dynamic_sts_domain:
dynamic_upgrade_mode: UNKNowN
dynamic_sts_include_subdomains:
dynamic_sts_observed:
dynamic_sts_expiry:
解决方法
当 Google 推出 .app 顶级域时,他们宣布它将仅通过 HTTPS 提供,因为它将在 Chrome(和其他浏览器)代码中预加载 HSTS,而不是依赖于站点在其网络服务器中配置它:
https://blog.google/technology/developers/introducing-app-more-secure-home-apps-web/
.app 域的一个主要优势是为您和您的用户内置了安全性。最大的不同在于,连接到所有 .app 网站都需要 HTTPS,这有助于防止广告恶意软件和跟踪 ISP 的注入,此外还可以防止对开放 WiFi 网络进行间谍活动。由于 .app 将是第一个具有强制安全性且可用于一般注册的 TLD,因此它将在很大程度上帮助网络向 HTTPS 迈进。
所以如果你不想使用HTTPS,你需要使用另一个域名。请注意,.dev 处于相同的情况。