„Nginx“ negali įkelti sertifikato fullchain.pem – „CertBot“ pataisymas
klaida nginx cannot load certificate path/fullchain.pem pasirodo, kai išbandome NGINX paslaugą ištrynę sertifikatus Let’s Encrypt sukurta su Certbot.
turinys
Serveryje klaida atrodo taip:
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
Fonas eroare nginx
Ankstesniame straipsnyje parodžiau, kaip iš Certbot galite ištrinti domenus, kurie anksčiau buvo priglobti serveryje, bet šiuo metu nebėra aktyvūs. Ištrinkite „Old Domains CertBot“ sertifikatus („Encrypt“ sertifikatas).
Ištrindami aktyvių domenų SSL sertifikatus, kurie vis dar yra serveryje, komanda: sudo certbot delete, sertifikatas ištrinamas automatiškai, bet išlieka aktyvus per seansus, kol paslauga nebus paleista iš naujo nginx. Naudodami komandą nginx -t (tikrinate paslaugą) galite nustebti, kad bandymas nepavyksta dėl aukščiau nurodytos klaidos. Tačiau sprendimas yra labai paprastas.

Pataisyti nginx: [emerg] negali įkelti sertifikato fullchain.pem
Kai įdiegiate SSL sertifikatą Let’s Encrypt per Certbot domeno nginx konfigūracijos faile pridedamos kelios eilutės, nurodančios sertifikato egzistavimą. Ištrynus sertifikatą, eilutės lieka nginx konfigūracijoje ir turi būti ištrintos rankiniu būdu. Tai yra, žemiau esančios eilutės:
.....
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
Ištrynę šias eilutes iš domeno, kurio SSL sertifikatą pašalinote, nginx confg failo, paleiskite komandą nginx -t patikrinti, ar viskas gerai.
- Ištrinkite „Old Domains CertBot“ sertifikatus („Encrypt“ sertifikatas)
- Kaip įdiegti SSL sertifikuotą svetainę rankiniu būdu be „CPANEL / VESTACP“ [Ningx]
- TLS / SSL sertifikatas – Nuo 2020 m. rugsėjo mėn. nustatytas naujas galiojimo laikas
- „WP Super Cache“ ir „W3 Total Cache“ („WordPress“ puslapio įkėlimo greitis)
- Kaip perkelti tinklaraštį ar „WordPress“ svetainę iš HTTP į HTTPS (NGINX)
[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]#
Dabar galite saugiai iš naujo paleisti paslaugą nginx.
„Nginx“ negali įkelti sertifikato fullchain.pem – „CertBot“ pataisymas
Kas naujo
Apie Stealth
Aistruolis technologijai, nuo 2006 m. su malonumu rašau StealthSettings.com. Turiu didelę patirtį operacinėse sistemose: macOS, Windows ir Linux, taip pat programavimo kalbose bei tinklaraščių platformose (WordPress) ir internetinėms parduotuvėms (WooCommerce, Magento, PrestaShop).
Peržiūrėkite visus Stealth įrašusGalbūt jus taip pat domina...