Letsencrypt SSL证书错误

时间:2017-02-28 06:25:04

标签: ssl ssl-certificate lets-encrypt

所以我删除了证书,认为我需要这样做,因为我有一个新的域名。我目前遇到了当前的错误:

Root@Site:~$ certbot-auto --apache -d example.io -d www.example.io
Requesting root privileges to run certbot...
/home/maiale/.local/share/letsencrypt/bin/letsencrypt --apache -d example.io -d www.maiale.io
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Error while running apache2ctl configtest.
Action 'configtest' failed.
The Apache error log may have more information.

AH00526: Syntax error on line 35 of /etc/apache2/sites-enabled/000-default-le-ssl.conf:
SSLCertificateFile: file '/etc/letsencrypt/live/maialedesigns.com/cert.pem' does not exist or is empty

The apache plugin is not working; there may be problems with your existing configuration.
The error was: MisconfigurationError("Error while running apache2ctl configtest.\nAction 'configtest' failed.\nThe Apache error log may have more information.\n\nAH00526: Syntax error on line 35 of /etc/apache2/sites-enabled/000-default-le-ssl.conf:\nSSLCertificateFile: file '/etc/letsencrypt/live/example.com/cert.pem' does not exist or is empty\n",)

这是我尝试运行./certbot-auto./certbot-auto --apache时获得的结果。 有什么方法可以解决这个问题吗?

如果您需要更多信息,请与我们联系。

编辑:这是运行Ubuntu 14.04.4

1 个答案:

答案 0 :(得分:2)

在获得域SSL之前,您需要在Apache虚拟主机中注册您的域,该域可以是您将DNS设置为服务器IP的真实域,或者可以是您的Ubuntu hosts文件中定义的假域。

在两种方式中,您都需要将域添加到Apache虚拟主机,然后使其能够存储从sites-available到Apache的sites-enabled文件夹的符号链接。

要做到这一点,首先需要cd使用以下命令sites-available进入cd /etc/apache2/sites-available/ Apache目录,然后如果您从目录中ll有一个文件名为000-default.conf,它是Apache的默认设置和配置,在该目​​录中从中创建一个副本(最好将其命名为与您的域名相同),sudo cp 000-default.conf example.com.conf,({{1因为许可是必需的)。 复制文件后,使用sudonano或您熟悉的任何终端编辑器打开文件。 vim

打开文件时,请按以下方式配置域(使用正确的配置设置这些行):

sudo nano example.com.conf

完成配置后,保存文件并退出。然后使用以下命令启用您的网站,它将使符号链接进入您的ServerName www.example.com [You domain name] ServerAdmin webmaster@localhost [Email of webmaster] DocumentRoot /var/www/html [The root of you website's files which the domain will open] 目录:sites-enabled

然后您只需要重启Apache sudo a2ensite example.com.conf。然后,您可以通过网址获取您的域名,也可以从sudo systemctl restart apache2.service获得SSL证书。

P.S:您可以通过以下两个网址了解有关Apache虚拟主机的更多信息:Apache DocumentsDigitalocean Tutorials

PS:如果您删除了以前的域名和SSL,请确保已从包含letsencryptsites-available的所有文件以及与您相关的所有文件的Apache配置和虚拟主机中完全删除以前的域名。