【问题标题】:Browsers force HTTPS for my NGINX server serving a .app domain浏览器强制我的 NGINX 服务器使用 HTTPS,服务于 .app 域
【发布时间】:2018-05-15 18:53:07
【问题描述】:

我正在为我的网站创建 NGINX 配置,并且我想使用 Firefox 或 Chrome 浏览它,它们总是重定向到 HTTPS。

我之前为域启用了 HTTPS(由 certbot 配置的自动重定向),但我放弃了该配置以重新开始。它使用的唯一“浏览器”是 Postman。

这是我的配置文件:

# Setup for the mybarber.app domain. It serves a static frontend and a REST api.
# The domain should only be available on HTTPS and HTTP will be redirected.
# Certificates managed by Let's Encrypt.


# The config for the static frontend.
server {
    listen 80 default_server;
    server_name mybarber.app;

    location / {
        root /var/www/mybarber_app;
        index index.html index.htm;
    }
}

# The config for the REST api.
server {
    listen 80 default_server;
    server_name api.mybarber.app;

    location / {
        proxy_pass http://localhost:8080/;
    }
}

如您所见,我正在监听 HTTP。 nginx.conf 文件是安装中的标准文件。从我所见,浏览器甚至在向服务器询问某些内容之前就已将 HTTP 替换为 HTTPS。否则我会在开发控制台中看到某种重定向。

NGINX 服务器也没有收到任何东西。谷歌建议我右键单击我的域的历史记录并单击“忘记此网站”,但这似乎没有帮助。我目前的猜测是永久重定向仍然以某种方式有效。但我不确定从这里去哪里。

【问题讨论】:

    标签: http nginx https


    【解决方案1】:

    问题不在于 nginx,而在于您的浏览器。 他们可能缓存了您的域可以通过 https 访问的事实(因为过去发生过这种情况),因此出于安全原因,他们一直更喜欢 https 而不是 http。

    尝试通过浏览器中的私人会话或从以前从未访问过您的域的另一台计算机访问您的域。

    如果错误仍然存​​在,您可能启用了 HSTS,这让您更难让浏览器忘记它。

    如果是这种情况,请尝试按照此链接中的说明重置 HSTS 缓存:https://www.thesslstore.com/blog/clear-hsts-settings-chrome-firefox

    请注意,某些顶级域名(例如 .app)仅适用于 https。以https://hstspreload.org/?domain=mybarber.app 为例

    【讨论】:

    • 根据您的建议对 HSTS 进行了更多研究,我发现 TLD .app 已强制预加载了 HSTS (hstspreload.org/?domain=mybarber.app)。要拥有具有此 TLD 的域,需要通过 HTTPS 为其提供服务。谢谢!也许在你的答案中包含这个,我会将其标记为正确答案。
    猜你喜欢
    • 2023-04-05
    • 2012-02-21
    • 2016-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 2012-05-04
    相关资源
    最近更新 更多