nginx 多个域名使用同一个通配符证书,并使用 include 指令来避免在多个 server 块中重复配置 SSL 参数

1.创建 SSL 配置文件
首先,创建一个包含 SSL 配置的文件,例如 ssl_params.conf:

# ssl_params.conf  
  
ssl_certificate /path/to/your/wildcard_certificate.pem;  
ssl_certificate_key /path/to/your/wildcard_private_key.key;  
ssl_session_timeout 5m;  
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  
ssl_protocols TLSv1.2 TLSv1.3;  
# 其他 SSL 相关的配置...

注意替换 /path/to/your/wildcard_certificate.pem 和 /path/to/your/wildcard_private_key.key 为你的通配符证书和私钥文件的实际路径。

2.在 nginx 配置文件中使用 include 指令
在你的主 nginx 配置文件或任何 server 块中,使用 include 指令来引用这个 SSL 配置文件:

# nginx.conf 或某个 server 块中  
  
server {  
    listen 443 ssl;  
    server_name example.com www.example.com;  
  
    # 引入 SSL 配置  
    include /path/to/your/ssl_params.conf;  
  
    # 其他配置...  
}  
  
# 另一个 server 块,也使用相同的 SSL 配置  
server {  
    listen 443 ssl;  
    server_name another.example.com;  
  
    # 同样引入 SSL 配置  
    include /path/to/your/ssl_params.conf;  
  
    # 其他配置...  
}

注意替换 /path/to/your/ssl_params.conf 为你的 SSL 配置文件 ssl_params.conf 的实际路径。

3.重启或重新加载 nginx
完成配置更改后,你需要重启或重新加载 nginx 以使更改生效:
现在,所有引用 ssl_params.conf 的 server 块都将使用相同的 SSL 配置,包括通配符证书和其他 SSL 参数。这种方法可以确保你的配置保持整洁和可维护,并减少重复配置的工作量。

posted @ 2024-06-06 13:46  怀里的懒猫  阅读(200)  评论(0编辑  收藏  举报