最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Nginx 中如何为二级域名设定独立的 SSL 证书路径
时间:2026-07-15 19:29:54 编辑:袖梨 来源:一聚教程网
核心是为每个二级域名创建独立server块并严格绑定专属SSL证书路径;需先确保DNS解析生效,再分别配置HTTP重定向与HTTPS服务块,证书路径唯一、私钥权限设为600,最后通过nginx -t验证并reload生效。
为二级域名配置独立的 SSL 证书路径,核心是让每个 server 块精准绑定对应域名,并指向专属证书文件。Nginx 不支持通配符证书自动匹配所有二级域名(除非用泛域名证书),所以不同二级域名必须各自指定证书路径。
确认 DNS 解析已生效
二级域名(如 api.example.com、admin.example.com)必须先在 DNS 中正确解析到服务器公网 IP。可用以下命令验证:
-
dig api.example.com +short或nslookup admin.example.com - 返回值应为你的 Nginx 服务器 IP
- 若未生效,请检查 TTL 设置并等待缓存刷新(通常几分钟至几小时)
为每个二级域名创建独立 server 块
不建议混用多个域名共用一个 server 块。推荐为每个二级域名新建配置文件(如 /etc/nginx/conf.d/api.example.com.conf),结构如下:
- HTTP 重定向块(监听 80 端口):
server_name api.example.com;+return 301 https://$host$request_uri; - HTTPS 服务块(监听 443 端口):
server_name api.example.com;,且只写这一行域名,不加其他 -
ssl_certificate和ssl_certificate_key必须明确指向该域名专用证书路径,例如:ssl_certificate /etc/nginx/ssl/api.example.com.crt;ssl_certificate_key /etc/nginx/ssl/api.example.com.key;
证书文件路径与权限管理
证书文件需满足两个硬性要求:
-
路径唯一且可读:每个二级域名证书应存放在独立子目录或带域名前缀的文件名中,避免混淆(如
/etc/nginx/ssl/admin.example.com/下放fullchain.pem和privkey.pem) -
Nginx 进程有读取权限:执行
sudo chown root:root /etc/nginx/ssl/*和sudo chmod 600 /etc/nginx/ssl/*.key,私钥严禁设为全局可读 - 证书内容需完整:.crt 或 .pem 文件应包含服务器证书 + 中间证书(如 Let’s Encrypt 的 fullchain.pem),不能只放根证书
验证与热加载
配置完成后务必逐项检查:
- 运行
sudo nginx -t:确保语法无误,且所有ssl_certificate路径真实存在、可访问 - 检查日志:
sudo tail -f /var/log/nginx/error.log,关注是否报SSL_CTX_use_certificate_chain_file() failed类错误 - 重载配置:
sudo systemctl reload nginx(不中断连接) - 浏览器访问
https://api.example.com,点击地址栏锁图标确认证书显示的是该域名,而非其他二级域名或主域名
相关文章
- 渝快办小升初报名怎样填写 07-22
- 腾讯文档如何转成Word还能保持格式不变 07-22
- 知网官网首页登录入口直达通道-知网官网首页登录入口快捷访问方法 07-22
- What is the meaning of seedance 07-22
- 洛克王国世界隐藏传送点怎么点亮 洛克王国世界隐藏传送点在哪点亮 07-22
- 哔哩哔哩漫画网页官网直达-哔哩哔哩漫画官网直达网页 07-22