Loss of website re:Apache cannot find fullchain.pem

Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. crt.sh | example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.

My domain is:duke.homelinux.net

I ran this command:apache2ctl restart

It produced this output:SLCertificateFile: file '/etc/letsencrypt/live/duke.homelinux.net/fullchain.pem' does not exist or is empty

My web server is (include version):Apache/2.4.63 (Ubuntu) Server built: 2025-03-07T13:40:17

The operating system my web server runs on is (include version):Kubuntu 22.04

My hosting provider, if applicable, is:my own computer via DynDNS

I can login to a root shell on my machine (yes or no, or I don't know):yes

I'm using a control panel to manage my site (no, or provide the name and version of the control panel):no

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you're using Certbot):certbot 1.21.0

This system has been running for > 5 years and the 'archive' has many renewals. About a week ago (2025/04/15 or so) my access stopped. Checked with 'apache2ctl status' and found that it was not running - restart gave me the above message. Don't know why because the file is there and populated. 'certbot certificate' yields:

Saving debug log to /var/log/letsencrypt/letsencrypt.log


Found the following certs:
Certificate Name: duke.homelinux.net
Serial Number: 4d92e32481be42beef81a28cbe47ff8e087
Key Type: RSA
Domains: duke.homelinux.net
Expiry Date: 2025-06-03 22:55:34+00:00 (VALID: 40 days)
Certificate Path: /etc/letsencrypt/live/duke.homelinux.net/fullchain.pem
Private Key Path: /etc/letsencrypt/live/duke.homelinux.net/privkey.pem


I should note that I did re-run a certificate install that the above result reflects.

Welcome @rons

Sometimes that message happens when a security setting on your server does not allow access to that file. Did anything change in your security setup?

What does this show?

ls -lR /etc/letsencrypt/live
1 Like

I needed to use 'sudo', but the result is:

rons@King:~$ sudo ls -lR /etc/letsencrypt/live
[sudo] password for rons:
/etc/letsencrypt/live:
total 0
drwxr-xr-x 2 root root 79 Apr 24 12:13 duke.homelinux.net

/etc/letsencrypt/live/duke.homelinux.net:
total 0
lrwxrwxrwx 1 root root 54 Apr 22 12:41 cert.pem -> /etc/letsencrypt/archive/duke.homelinux.net/cert43.pem
lrwxrwxrwx 1 root root 55 Apr 22 12:42 chain.pem -> /etc/letsencrypt/archive/duke.homelinux.net/chain43.pem
lrwxrwxrwx 1 root root 59 Apr 22 12:43 fullchain.pem -> /etc/letsencrypt/archive/duke.homelinux.net/fullchain43.pem
lrwxrwxrwx 1 root root 57 Apr 22 12:44 privkey.pem -> /etc/letsencrypt/archive/duke.homelinux.net/privkey43.pem

I have sort of resolved my problem - somehow my apache site conf file got replaced, I reverted it to my 2018 version and everything is working again. Now I need to do some investigation on why and what changed.

RonS