Root-CAs signieren Serverzertifikate nicht direkt, sondern über Zwischenzertifikate (Intermediates). Der Client kennt nur die Root aus seinem Trust Store. Damit er die Kette bilden kann, muss der Server sein eigenes Zertifikat und alle Intermediates ausliefern.
Bei Let's Encrypt ist das die Datei fullchain.pem, nicht cert.pem. Bei nginx gehört die vollständige Kette in ssl_certificate, bei Apache ab 2.4.8 ebenfalls in SSLCertificateFile.
Fehlt das Intermediate, funktioniert die Seite oft trotzdem im Desktop-Browser, weil dieser fehlende Zertifikate nachlädt oder zwischengespeichert hat. Android-Apps, curl, Java-Anwendungen und Mailserver scheitern dagegen mit unable to get local issuer certificate.
Beispiel
openssl s_client -connect example.com:443 -servername example.com -showcerts