为什么 Nginx HTTP 到 HTTPS 重定向对 www 子域名不起作用

为什么 Nginx HTTP 到 HTTPS 重定向对 www 子域名不起作用

我将 NGINX 配置为将所有 HTTP 流量重定向到 HTTPS,如下所示:

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name domain.com www.domain.com;
    return 301 https://$host$request_uri;
}

(不是字面上的 domain.com,而是我实际的域名)

对于 domain.com 来说,重定向工作正常,但是当我尝试访问 www.domain.com 时,仍然得到 HTTP 版本。

知道为什么会这样吗?

答案1

没关系,Let's Encrypt certbot 已向listen 80我的 HTTPS 服务器块添加了另一条指令。

通过让 Let's Encrypt 管理 HTTP -> HTTPS 规则(将“--redirect”传递给 cerbot 命令)来修复。

相关内容