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

Ubuntu服务器用Certbot+Apache申请Let's Encrypt SSL证书失败

解决Certbot+Apache申请SSL证书时的验证失败问题

排查与修复步骤

  • 确认域名解析正确性
    执行ping mydomain.com或nslookup mydomain.com,确保域名已指向服务器公网IP,解析生效可能需要数分钟到数小时。

  • 检查端口连通性
    Let's Encrypt依赖80端口完成HTTP验证,先通过ufw status查看防火墙规则,若80/443端口未开放,执行:

    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    

    同时检查云服务商安全组,确保这两个端口已对外放行。

  • 修复Apache基础配置
    确保Apache默认站点配置(通常路径/etc/apache2/sites-available/000-default.conf)包含正确的域名指向:

    <VirtualHost *:80>
        ServerName mydomain.com
        DocumentRoot /var/www/html
    </VirtualHost>
    

    保存配置后重启Apache:sudo systemctl restart apache2,再重新运行Certbot命令。

  • 手动执行HTTP-01验证
    若自动配置验证失败,可手动完成验证流程:

    1. 创建验证目录:sudo mkdir -p /var/www/html/.well-known/acme-challenge
    2. 设置目录权限:sudo chown -R www-data:www-data /var/www/html/.well-known
    3. 运行手动模式命令:sudo certbot certonly --manual -d mydomain.com,按照提示创建指定内容的验证文件,确认http://mydomain.com/.well-known/acme-challenge/[文件名]可正常访问后完成验证。
  • 安装适配Apache的Certbot插件
    确保安装了官方Apache插件:sudo apt install python3-certbot-apache,之后重新执行证书申请命令:sudo certbot --apache -d mydomain.com

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 01:14:51