sudo certbot 删除创建的错误

sudo certbot delete created errors

我想删除我的 Certbot SSL,我 运行“sudo certbot delete”并做到了。重启 nginx 后,它给了我这个错误:

nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/fishymine.xyz/fullchain.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/live/fishymine.xyz/fullchain.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file).

我该如何解决这个问题?

问题是 certbot 在您添加证书时自动插入配置规则。所有插入的行都包含“Cerbot”,因此您可以执行此操作以删除这些行:

sudo sed -i '/Certbot/d' /etc/nginx/sites-available/*
sudo sed -i '/Certbot/d' /etc/nginx/sites-enabled/*

然后尝试

sudo nginx -t
sudo certbot --nginx

如果您仍然遇到错误,您可以手动检查 /etc/nginx/sites-* 中的文件,或者如果您不关心现有配置,只需删除它们的内容:

sudo chmod 777 /etc/nginx/sites-enabled/default
sudo echo '' > /etc/nginx/sites-enabled/default
sudo chmod 644 /etc/nginx/sites-enabled/default

sudo chmod 777 /etc/nginx/sites-available/default
sudo echo '' > /etc/nginx/sites-available/default
sudo chmod 644 /etc/nginx/sites-available/default