Hi team,
My custom domain’s TLS handshake has been broken for ~4 hours. DNS verifies clean but the SSL renew endpoint is rejecting the request before it even reaches Let’s Encrypt. Looks like a stale CDN/edge routing entry that external tools can’t clear.
**Site:** `locale-web` (site ID `6ba56756-d542-43b4-a9ed-d5c40af126bd`)
**Team:** hello-u06bxuu
**Domain:** localeweb.co.uk (+ www.localeweb.co.uk auto-alias)
**Plan:** Starter
Symptoms
- Public TLS handshake to `https://localeweb.co.uk` fails with `unexpected eof while reading` from multiple resolvers and clients globally. TCP on 443 connects; server never sends the certificate.
- `https://locale-web.netlify.app` works fine (200 OK, valid `*.netlify.app` cert).
- The UI on Domain management says “Your project has HTTPS enabled ✓” with cert `Updated: Today at 9:16 AM` — but the edge isn’t serving it.
Config (all looks correct)
- Nameservers delegated to Netlify DNS (`dns1-4.p09.nsone.net`), fully propagated globally.
- Netlify DNS zone: `localeweb.co.uk` and `www.localeweb.co.uk` both NETLIFY records targeting `locale-web.netlify.app`.
- `other_sites: []` on the SSL endpoint — no other site in the account claims the domain.
API evidence of the bug
`POST /api/v1/sites/6ba56756…/ssl/verify_custom_domain`
→ `200 {“result”: true}` — DNS check passes.
`POST /api/v1/sites/6ba56756…/ssl/renew`
→ `200 {“renew_running”: false, “renewal_error_message”: “localeweb.co.uk doesn’t appear to be served by Netlify”}` — renewal rejected internally, never queues to Let’s Encrypt.
`GET /api/v1/sites/6ba56756…/ssl`
→ `state: “issued”` but `Updated` timestamp does not advance after clicking Renew.
So `verify_custom_domain` and `ssl/renew` disagree about whether the domain is served by Netlify — that disagreement is the bug.
What I’ve tried
- Clicked “Renew certificate” multiple times. Same API response every time, no rate-limit hit.
- Removed the primary custom domain from the project, waited 30s, re-added. Warning “domain doesn’t appear to be served by Netlify” reappears immediately on re-add. Subsequent renew attempts return the same rejected state.
- Verified nameserver delegation is complete against six public resolvers (Cloudflare, Google, Quad9, OpenDNS, Yandex, Freenom).
Ask
Could someone clear the stale CDN/edge routing state for `localeweb.co.uk` on this site and kick off a fresh Let’s Encrypt provisioning job? This looks like a case where the internal CDN routing table and the SSL service are out of sync, and self-service isn’t able to reconcile it.
Thanks!
— Luke