NGINX-两个域名的 https 和 letsencrypt

NGINX-两个域名的 https 和 letsencrypt

我对 Linux 和 nginx 还是个新手,所以我的问题可能听起来很简单。

因此,我有两个域 domain1.com 和 domain2.com 都指向我的服务器。我已通过 letsencrypt 为这两个域分别获取了证书。我该如何为每个域安装证书?

我搜索了互联网,但一无所获。到目前为止,我想出了这个

配置 1:

server {
    server_name domain1.com;

    ssl_certificate path/to/cert;
    ssl_certificate_key path/to/cert/key;
}

配置二:

server {
    server_name domain2.com;

    ssl_certificate path/to/cert2;
    ssl_certificate_key path/to/cert/key2;
}

默认配置:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    listen 443 ssl default_server;
    listen [::]:443 ssl default_server;

    root /var/www/html;
}

我为两个域都创建了一个。一个域已配置完毕,运行良好。但第二个域无法通过 https:// 访问 domain2.com,而且域指向默认端。

TL;DR 如何在一个 nginx 实例上为两个域使用两个证书?

谢谢!

编辑:所有其他配置几乎都是安装时获得的基本配置。

答案1

您需要向每个服务器块添加绑定:

listen myipaddress:443 ssl http2;

第一个站点正在捕获流量。您可以使用相同的 IP,但只需检查 nginx 版本是否支持 SNI(如果是较新版本则应该这样做)

相关内容