Skip to content
ssldays

Guide

WordPress site SSL certificate expired

WordPress admin and login break when the web server TLS expires. Renew at the host or reverse proxy, fix siteurl/home URLs, and clear caches that still reference broken https links.

Updated Mar 19, 2026 863 words

WordPress admin and front-end break when the web server or reverse proxy certificate expires—renew TLS, then fix URLs and caches.

siteurl and home must stay https after renewal; mixed databases strand admins on errors.

Plugins hardcode asset URLs; search-replace may be needed after TLS recovery.

First response

WordPress admin and login break when the web server TLS expires. Renew at the host or reverse proxy, fix siteurl/home URLs, and clear caches that still reference broken https links.

Search interest in wordpress ssl certificate expired rises when the leaf notAfter on the hostname customers type is already in the past. Clients cannot rewrite server certificate dates; they only accept chains that pass PKIX checks at handshake time.

For WordPress site SSL certificate expired, prove the failure from outside your office VPN before you change application code, purge caches, or ask end users to reboot. Capture the broken serial number and notAfter, renew on the listener that actually terminates that name, reload every node in the path, then re-run the same OpenSSL and browser checks that opened the incident.

Escalations for wordpress-ssl-certificate-expired should cite fresh openssl on the host defined in siteurl option output before anyone edits client code or blames Wi‑Fi. WordPress admin and login break when the web server TLS expires. Renew at the host or reverse proxy, fix siteurl/home URLs, and clear caches that still reference broken https links. When WordPress cannot loop back on https siteurl clusters around wp-admin and login flows, the expired material is usually bound to web server or reverse proxy TLS in front of PHP instead of a mysterious platform bug. Executive summaries need the public hostname and current notAfter, not screenshots from a VPN-split test laptop.

See also Ecommerce checkout down due to SSL expiry and SMTP TLS certificate expired (STARTTLS).

What this error means

Browsers block wp-admin when TLS fails, halting content fixes during the outage.

Managed WordPress hosts may auto-renew—self-hosted leaves expiry with you.

Renew at hosting panel or nginx fronting PHP-FPM, flush caches, verify login.

In PKIX terms, wp-admin and login flows treat the TLS Certificate message as authoritative: signatures must verify, each link must be within notBefore/notAfter, and only then does name matching run against CN and SAN. When the leaf expired, WordPress cannot loop back on https siteurl is expected even if the issuer is publicly trusted. Guides titled wordpress ssl certificate expired still require reading dates on every certificate the server sends, including forgotten cross-sign intermediates.

Triage for wordpress ssl certificate expired should reject quick myths: flushing DNS or rebooting laptops does not move server notAfter forward. It is not proof the whole internet is broken when other HTTPS sites load for wp-admin and login flows. It is not interchangeable with registrar billing lapses unless revalidation fails later. It is not fixed by turning off TLS at the load balancer while marketing keeps publishing https:// links. Validated externally, openssl on the host defined in siteurl option must show fresh dates on web server or reverse proxy TLS in front of PHP before you close the incident.

Common causes

These patterns appear often during wordpress ssl certificate expired incidents. They are not exhaustive, but they explain why renewal looked finished internally while strangers still received expired material.

Runbooks for wordpress ssl certificate expired most often break at handoff: certbot or a vendor portal issued new certs, but web server or reverse proxy TLS in front of PHP never received a reload. Teams tracked PEM files in git while production continued serving the previous listener binding. OV renewals waited on legal approvers until WordPress cannot loop back on https siteurl became customer-visible. Inventory spreadsheets omitted the hostname that wp-admin and login flows actually call during peak traffic.

Architecture amplifies wordpress ssl certificate expired: multiple regions, canary pools, or blue/green deploys can leave one ASG member presenting yesterday's fullchain. Shared IP default certificates silently terminate vanity hostnames without dedicated SNI rules. Mounted TLS secrets updated on disk while Envoy or nginx workers kept the old chain until signaled. WordPress admin and login break when the web server TLS expires becomes harder to debug when only a fraction of wp-admin and login flows hit the stale anycast node.

Measurement gaps complete the story for wordpress ssl certificate expired. Synthetic monitors that disable certificate verification greenlit deploys that fail for real wp-admin and login flows. Redirect maps hid which hop expired until operators ran openssl on the host defined in siteurl option per hostname. Dashboards celebrated TCP uptime while notAfter crossed midnight UTC without a page. Post-mortems should ask whether CT logs or stapled OCSP would have warned days earlier.

Confirm from the outside

OpenSSL

echo | openssl s_client -connect HOST:443 -servername HOST 2>/dev/null | openssl x509 -noout -dates -subject -issuer

Check both www and bare domain presented certs.

How to read the output

Start with openssl on the host defined in siteurl option against the live customer hostname, capturing the leaf presented after SNI selection. Interpret notBefore= and notAfter= first: past notAfter guarantees failure for WordPress cannot loop back on https siteurl regardless of pretty issuer branding. Next read subject= and any X509v3 Subject Alternative Name extension for alignment with the URL bar. Finally note issuer= so you know whether renewal changed intermediates; record serial numbers in the ticket for post-deploy diffing.

curl

curl -vI --connect-timeout 10 https://HOST/ 2>&1 | grep -Ei 'expire|SSL certificate|subject:|issuer:'

curl wp-login.php to see TLS layer failures.

Browser spot-check

Confirm padlock on admin and cookie domain alignment.

Fix checklist

Work this list in order for wordpress site ssl certificate expired. Each step should produce evidence (command output, timestamps, serial numbers) you can paste into the incident ticket.

  1. Renew cert on hosting control panel or proxy.
  2. Reload nginx/Apache/LiteSpeed.
  3. Verify siteurl/home options are https.
  4. Purge page caches and CDN.
  5. Search-replace http content links if needed.
  6. Test wp-admin login and REST API.
  7. Renew cert before auto-updates fail.
  8. Enable host-level TLS monitoring.

Roll out and verify

Procurement for wordpress ssl certificate expired begins with a reissue that lists every hostname wp-admin and login flows need, including forgotten admin and callback URLs. Validate CSR/key pairs, download CA bundles, and schedule work on web server or reverse proxy TLS in front of PHP during a staffed change window. If automation handles ACME, prove challenges use the same DNS names customers resolve publicly, not internal-only labels.

Installation for wordpress ssl certificate expired means concatenating leaf and required intermediates the way your stack documents, then touching every node that terminates the name. Reload web servers, recycle ingress pods, or update cloud listener objects so data planes read new bytes. For load balancers, sync default and per-host certificates so SNI cannot fall back to expired defaults. Repeat openssl on the host defined in siteurl option until fingerprints or serials change everywhere responders tested earlier.

Verification for wordpress ssl certificate expired must mimic strangers: external synthetics, mobile carriers, and CI jobs without corporate trust roots. Confirm WordPress cannot loop back on https siteurl disappeared for wp-admin and login flows on flows heavier than GET /. Restore any strict TLS, HSTS, or CDN SSL modes relaxed during firefighting. Feed the hostname into continuous notAfter monitoring with thresholds well before the next CA-enforced renewal cliff.

What to automate

Certificate files on disk lie. Automate live TLS checks on the exact hostname and port users hit, including redirects and the certificate presented after TLS terminates on a load balancer or CDN. Pair certificate notAfter with RDAP domain registration expiry so re-validation is not blocked by a lapsed registrar.

Monitor wp-admin URL specifically, not only homepage. Schedule alerts at 30, 14, 7, and 1 day before expiry so on-call has runway for ACME failures, manual OV revalidation, or change windows. Services such as ssldays can run external checks and renewal reminders without replacing your CA workflow.

Frequently asked questions

Cloudflare orange cloud?

Edge cert may be fine while origin expired.

Multisite?

Each domain mapping needs valid cert on listener.

Database http links?

Use trusted search-replace tools after backup.

Cron over HTTPS?

wp-cron remote calls fail on expired TLS.

See what the server presents right now

Free live certificate check — no signup.