You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在AWS EC2配置Let's Encrypt证书遇域名标签不足错误求助

解决Let's Encrypt "DNS name does not have enough labels" 错误

这个错误的核心原因很直接——你使用的域名格式不符合DNS系统的标准要求!Let's Encrypt在签发证书时,要求申请的域名必须是完整的合格域名(FQDN),简单来说就是域名得包含至少两个用点分隔的“标签”,比如example.com(example是一个标签,com是另一个),而你命令里写的sitename是单个标签的裸名,这种格式在DNS体系里是不被认可的。

具体修复步骤:

  • 修正Certbot命令:把命令里的sitename替换成你实际注册的完整域名,比如你的域名是myapp.com,命令应该改成:
    sudo certbot --nginx -d myapp.com -d www.myapp.com
    
  • 同步更新Nginx配置:打开/etc/nginx/conf.d/default.conf,将server_name字段也改成对应的完整域名:
    server_name myapp.com www.myapp.com;
    
    修改完成后重启Nginx让配置生效:
    sudo systemctl restart nginx
    
  • 验证域名解析:确保你的完整域名已经正确指向EC2实例的公网IP,可以用以下命令检查:
    nslookup myapp.com
    
    输出结果里应该能显示你EC2实例的公网IP地址。

额外提醒:哪怕是测试用的域名,也得符合DNS规范(比如用localhost.localdomain这类带后缀的名称,或者Let's Encrypt提供的测试域名后缀),不能只用单个单词的裸名。

内容的提问来源于stack exchange,提问作者null

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:37:51