Certbot无法通过域身份验证

时间:2019-10-16 19:31:16

标签: ssl nginx digital-ocean ubuntu-18.04 certbot

我很困惑。我尝试在Digital Ocean Ubuntu服务器上使用Certbot为2个不同的域安装SSL证书。这是我运行以获取SSL证书的最终命令:

sudo certbot --nginx -d mydomain1.com -d www.mydomain1.com

我为mydomain1.commydomain2.com运行完全相同的命令

这是没有道理的。 mydomain1.com的认证通过,但mydomain2.com的认证失败

我正在为两个域使用相同的Nginx Server块配置文件。是的,这包括Nginx配置文件中的根文件路径和服务器名称都相同。

我将两个配置文件都设置为以下内容:

listen 80;
listen [::]:80;

root /var/www/mydomain2.com;

index index.html index.htm index.nginx-debian.html;

server_name mydomain2.com www.mydomain2.com;

是的,两个配置文件(用于mydomain1.commydomain2.com的目录都设置为mydomain2.com的根路径,并且服务器名称为mydomain2.com,因为我需要Nginx来提供确切的信息我在该目录中拥有相同的内容。我的意图是将mydomain1.com重定向到mydomain2.com,但似乎无法正常工作,这是一个单独的问题。现在,我只是尝试验证mydomain2.com的SSL证书,然后找出重定向。

预先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果我正确理解了问题,答案如下:

certbot certonly --standalone --preferred-challenges http -d domain1.com -d www.domain1.com

您不需要修改nginx default.conf文件。请改用以下方法。

nano /etc/nginx/sites_available/domain1.com

server {
        listen 80;
        listen [::]:80;
        server_name domain1.com www.domain1.com;
        return 301 https://domain1.com\$request_uri;
}
server {
        listen 443 ssl;
        server_name domain1.com;
        ssl_certificate /etc/letsencrypt/live/domain1.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/domain1.com/privkey.pem;
}

启用了站点的符号链接

ln -s /etc/nginx/sites-available/domain1.conf /etc/nginx/sites-enabled

domain2.com中的内容相同