erreur nginx cannot load certificate path/fullchain.pem apparaît lorsque nous testons le service Nginx après avoir supprimé certifié Let’s Encrypt généré avec Certbot.
contenu
Dans le serveur, l'erreur apparaît comme:
nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/example.com/fullchain.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/live/example.com/fullchain.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /etc/nginx/nginx.conf test failed
Arrière-plan éroare nginx
Dans un article précédent, j'ai montré comment vous pouvez supprimer les champs hébergés dans le serveur mais qui ne sont plus actifs dans le passé. Supprimer les anciens domaines certificats CERTBOT (Certificat de crypte).
Lorsque vous supprimez les certificats SSL pour les champs actifs, qui sont toujours hébergés sur le serveur, par commande: sudo certbot delete
, le certificat est effacé automatiquement, mais il reste actif dans les séances jusqu'à ce que le service redémarre nginx
. À la commande Ningin -T (test de service), vous pouvez surprendre le test pour échouer avec l'erreur ci-dessus. Mais la solution est très simple.

Correction de Nginx: [émerge] Impossible de charger le certificat Fullchain.pem
Lors de l'installation d'un certificat SSL Let’s Encrypt Par querelle, dans le fichier de configuration du nginx pour le domaine, certaines lignes indiquent l'existence du certificat. Lorsque le certificat est supprimé, les lignes restent dans la configuration de Ningin et doivent être supprimées manuellement. Je veux dire les lignes ci-dessous:
.....
listen 443 ssl http2; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = www.example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
server_name example.com www.example.com;
listen 80;
return 404; # managed by Certbot
Après avoir supprimé ces lignes du fichier CONFG Ninx du champ pour lequel vous avez éliminé le certificat SSL, exécutez la commande nginx -t
Pour vérifier si tout va bien.
[root@server]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@server]#
Maintenant, vous pouvez redémarrer le service en toute sécurité nginx.