如何向Certbot生成的Let's Encrypt SSL证书追加新子域名?
如何为现有Let's Encrypt证书追加子域名
嘿,这个需求我之前处理过好几次,Certbot其实提供了专门的参数来解决这个问题,不用每次都重复列出所有已有域名!
你只需要使用--expand参数,它的作用就是告诉Certbot要扩展现有的证书,而不是创建一个新的证书。具体命令如下:
sudo certbot --nginx --expand -d xyz.com -d www.xyz.com -d blog.xyz.com
几个关键点要注意:
--expand:核心参数,确保Certbot更新你已有的xyz.com证书,而不是生成新证书- 这里列出所有域名是为了明确告诉Certbot:保留原有两个域名的同时,新增blog.xyz.com(如果只列新域名,Certbot会生成仅包含blog.xyz.com的新证书,这不是你想要的结果)
- 执行命令前,确保你的Nginx已经配置了
blog.xyz.com的server块(哪怕是最基础的配置),并且DNS解析已经把blog.xyz.com指向你的服务器,否则Certbot无法完成域名验证
执行命令后,Certbot会自动完成以下操作:
- 验证blog.xyz.com的域名所有权
- 更新现有证书,把blog.xyz.com加入到证书的域名列表中
- 自动配置Nginx的blog.xyz.com server块,启用SSL并设置跳转(和你之前配置主域名的逻辑一致)
如果之后还需要添加其他子域名,同样用这个命令,把新的子域名加到-d参数后面就行。
内容的提问来源于stack exchange,提问作者Abdu Taviq
相关产品推荐
相关产品推荐

