Script Valley
HTTP & The Web: How It Actually Works
HTTPS and TLS SecurityLesson 3.3

Common TLS errors and what they actually mean

ERR_CERT_DATE_INVALID, ERR_CERT_AUTHORITY_INVALID, ERR_SSL_PROTOCOL_ERROR, certificate mismatch, mixed content, HSTS, self-signed certificates

TLS Errors Decoded

TLS error types decision tree

When TLS fails, browsers show cryptic error codes. Here is what each one means and how to fix it.

Common errors

ERR_CERT_DATE_INVALID / Certificate expired. The certificate's notAfter date is in the past. Fix: renew the certificate. Let's Encrypt certificates expire every 90 days — automate renewal with certbot renew.

ERR_CERT_AUTHORITY_INVALID. The certificate is signed by a CA the browser does not trust. Usually caused by: a self-signed certificate, a missing intermediate certificate in your server's chain, or an internal/private CA. Fix: install the full chain (leaf + intermediate), or install the CA cert in the browser/OS for internal use.

ERR_CERT_COMMON_NAME_INVALID / SSL_ERROR_BAD_CERT_DOMAIN. The domain in the certificate's SAN does not match the hostname. Common cause: serving www.example.com with a cert for example.com only. Fix: use a wildcard cert (*.example.com) or a multi-domain SAN cert.

# Test certificate chain validity
curl -v https://your-domain.com 2>&1 | grep -E "SSL|certificate|verify"

# Check if cert includes www subdomain
openssl s_client -connect your-domain.com:443 2>/dev/null \
  | openssl x509 -noout -text | grep DNS:

Mixed content. An HTTPS page loads HTTP resources. Browsers block active mixed content (scripts, iframes) and warn on passive (images). Fix: serve all assets over HTTPS and use protocol-relative or absolute HTTPS URLs.

Up next

How HSTS prevents downgrade attacks

Sign in to track progress