http(s) 非 www 到 www 重定向 nginx

http(s) 非 www 到 www 重定向 nginx

这是我的配置:

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

#server {
#       listen          443 ssl;
#       server_name     domain.com;
#       return          301 https://www.domain.com$request_uri;
#}

server {
    listen 443 ssl;

    ssl on;
    ssl_certificate ...
    { ssl stuff }
    ...
    server_name www.domain.com;
    ...

使用此解决方案(注释第二个服务器块),我能够成功重定向http://domain.comhttp://www.domain.com到,https://www.domain.com并且两者都https://domain.com https://www.domain.com正常工作。当我取消注释第二个服务器块以启用从https://domain.com到的重定向时,问题就开始了https://www.domain.com。然后它就坏了。

Curl -v -I 输出:

$ curl -v -I https://www.domain.com
[15:08:42]
* Rebuilt URL to: https://www.domain.com/
*   Trying 8.8.8.8...
* Connected to www.domain.com (8.8.8.8) port 443 (#0)
* Server aborted the SSL handshake
* Closing connection 0

答案1

看起来你没有https://domain.com在第二个块中包含 SSL 证书等,因此它无法在 443 上运行

相关内容