a month ago
Project:attractive-alignment (cf2d6cc8-e983-4326-805b-810117c29c18)
Service:web (f60ba5f2-d736-43e5-8910-679618542a25)
Environment:production (fc8bbd7a-2fe2-4fd7-8320-35de0db48f87)
Custom domains affected (both):
app.timsio.com— Railway target:ap8nhvo9.up.railway.appadmin.timsio.com— Railway target:5ndx2wax.up.railway.app
Issue:
The Railway edge does not route the assigned targets to any application. A direct curl to either CNAME target (or to the custom domain itself) returns a 404 with server: railway-edge:
$ curl https://ap8nhvo9.up.railway.app{"status":"error","code":404,"message":"Application not found","request_id":"Wd9bNCOgQ_2A5E-Y8u2xcg"}
$ curl http://app.timsio.com/.well-known/acme-challenge/test
HTTP/1.1 404
server: railway-edge
This means Let's Encrypt's HTTP-01 challenge gets a 404, validation never completes, and certs stay in CERTIFICATE_STATUS_TYPE_VALIDATING_OWNERSHIP forever.
Confirmed working from our side:
- DNS resolves correctly via 1.1.1.1 / 8.8.8.8 / Railway's own status (
currentValue == requiredValue, statusDNS_RECORD_STATUS_PROPAGATED) - No CAA records on
timsio.com - Cloudflare records are DNS-only (grey cloud, not proxied)
- The same web service serves correctly on its Railway-provided URL
web-production-acbb1.up.railway.app(HTTP 307 → /login)
What I tried:
- Original creation: cert stuck for ~30 min
- Deleted both custom domains and re-created — they got new CNAME targets, I updated Cloudflare to match. Same stall: 25+ min, no progress.
NOT trying again: I'm aware Let's Encrypt has a 5/week duplicate-cert rate limit per domain. We're at 2/5 on each.
Could someone on your side check the edge-routing config for these custom domains and either fix it or rebuild it? Looks like the customDomainCreate API succeeded but the edge-router rule was never written.
Pinned Solution
a month ago
You need to add TXT records.
To get the TXT record contents, you'll need to access the verificationToken property under status for the customDomainCreate mutation call.
1 Replies
Status changed to Open Railway • about 1 month ago
a month ago
You need to add TXT records.
To get the TXT record contents, you'll need to access the verificationToken property under status for the customDomainCreate mutation call.
Status changed to Solved brody • about 1 month ago