Fehler nginx cannot load certificate path/fullchain.pem Es wird angezeigt, wenn wir den Nginx -Dienst testen, nachdem wir die Zertifizierung gelöscht haben Let’s Encrypt erzeugt mit Certbot.
Inhalt
Im Server erscheint der Fehler wie:
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
Hintergrund eroare nginx
In einem früheren Artikel habe ich gezeigt, wie Sie die auf dem Server gehosteten Felder löschen können, die jedoch in der Vergangenheit nicht mehr aktiv sind. Löschen Sie alte Domains -Zertifikate (Zertifikate für Verschlüsseln)..
Wenn Sie SSL -Zertifikate für aktive Felder löschen, die weiterhin auf dem Server gehostet werden, nach Bestellung: sudo certbot delete
Das Zertifikat wird automatisch gelöscht, bleibt jedoch in Sitzungen aktiv, bis der Service neu gestartet wird nginx
. Bei dem Befehl ningin -t (Service -Test) können Sie den Test überraschen, um mit dem oben genannten Fehler zu fehlschlagen. Aber die Lösung ist sehr einfach.

Fix Nginx: [Emerg] Certifical fullchain.pem kann nicht laden
Bei der Installation eines SSL -Zertifikats Let’s Encrypt Mit Quarrel gibt es in der Konfigurationsdatei des Nginx für die Domäne einige Zeilen, die die Existenz des Zertifikats anzeigen. Wenn das Zertifikat gelöscht wird, bleiben die Zeilen in der Ningin -Konfiguration und müssen manuell gelöscht werden. Ich meine die folgenden Zeilen:
.....
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
Führen Sie die Bestellung aus nginx -t
Um zu überprüfen, ob alles in Ordnung ist.
[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]#
Jetzt können Sie den Service sicher neu starten nginx.