Nginx 是一个高性能的 HTTP 和反向代理服务器,也用作邮件代理服务器。SSL(Secure Sockets Layer)是一种安全协议,用于在客户端和服务器之间建立加密连接。多域名 SSL 指的是在一个 Nginx 服务器上配置多个域名的 SSL 证书,使得每个域名都能通过 HTTPS 安全访问。
mail.example.com
、blog.example.com
),可以使用多域名 SSL 证书来保护这些子域名。以下是一个简单的 Nginx 配置示例,展示如何为一个服务器配置多个域名的 SSL 证书:
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /path/to/example.com.crt;
ssl_certificate_key /path/to/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;
location / {
root /var/www/example.com;
index index.html index.htm;
}
}
server {
listen 80;
server_name blog.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name blog.example.com;
ssl_certificate /path/to/blog.example.com.crt;
ssl_certificate_key /path/to/blog.example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;
location / {
root /var/www/blog.example.com;
index index.html index.htm;
}
}
ssl_protocols
和 ssl_ciphers
配置,确保它们与客户端兼容。通过以上配置和常见问题解决方法,您应该能够成功在 Nginx 上配置多域名的 SSL 证书。
领取专属 10元无门槛券
手把手带您无忧上云