Custom domains stuck serving default wildcard cert (x-railway-fallback 404) despite ACTIVE sync status
jorgefuenmayorccn-boop
HOBBYOP

24 days ago

Custom domains stuck serving default wildcard cert (x-railway-fallback 404) despite ACTIVE sync status — public API mutation is a no-op

Project: dazs-barber

Project ID: 32ce5161-950a-43c2-9a21-c98b51571d00

Environment: production (ce147e69-89b0-4469-8899-1201f3270ec7)

Two custom domains are stuck in this state:

  1. chat.dazsbarber.com (custom domain id: 84ae247d-2f7e-4ea8-bdfb-45cee4a2a2a2)

    → service: chatwoot-web (e0ef99a8-29ae-410b-bee5-2a74c706b477), target port 3000

  2. n8n.dazsbarber.com (custom domain id: 7cfccb9f-c58c-47fc-90f8-e528bfbda120)

    → service: n8n (347cc500-4537-4f82-8d44-171dd431ba33), target port 5678

Both domains show in the API as fully configured and healthy: syncStatus ACTIVE, edgeId assigned, DNS record DNS_RECORD_STATUS_PROPAGATED with currentValue matching requiredValue exactly, and correct targetPort.

Both backend services are confirmed healthy — verified directly on their Railway-provided service domains with real 200 responses:

But the custom domains return a fallback 404 on every request:

HTTP/2 404

server: railway-hikari

x-railway-fallback: true

{"status":"error","code":404,"message":"Application not found"}

Traced to the TLS layer. Each custom domain resolves to its own dedicated edge IP (not the shared pool): chat.dazsbarber.com → 69.46.46.66, n8n.dazsbarber.com → 69.46.46.87. Connecting directly with the correct SNI, the certificate served is NOT domain-specific — it's the generic wildcard:

$ curl -v https://chat.dazsbarber.com/

  • subject: CN=*.up.railway.app
  • issuer: C=US; O=Let's Encrypt; CN=YE1

< HTTP/2 404

< x-railway-fallback: true

                                                                                                                                                                           Ruled out on our side: DNS is a single clean CNAME resolving exactly to Railirmed via system resolver + 8.8.8.8); not proxied through Cloudflare(grey-cloud, resolves straight to Railway IPs); no CAA record restricting issuance; no pending TXT ownership verification.                                                     

Called the public customDomainIssueCertificate mutation for both domains multiple times over ~20 minutes. Confirmed it's a no-op: customDomain.updatedAt did not change at all between calls (2026-09-12T02:55:24.883Z before and after). No lever left on nual re-trigger of cert issuance / edge route installation for these twodomains.

Could you manually re-trigger this? Happy to provide more logs/diagnostics.

Solved

1 Replies

Railway
BOT

24 days ago

Both domains have the traffic CNAME set correctly, but the TXT ownership-verification records are absent at both hosts, which is why certificates cannot issue and the edge serves the fallback. Add these two TXT records at your DNS provider (it appends the zone automatically, so use the labels as shown). For chat: host _railway-verify.chat, value railway-verify=6a92d4f8b8d15d9d662502f457204e90a06501464f740abb8a94c145d2d1bbc3. For n8n: host _railway-verify.n8n, value railway-verify=7008404591eea2ae9891bc1108c362037af483c45afb28200a2840716a6146be. Once propagated, verification and certificate issuance proceed automatically and the edge begins routing to your services.


Status changed to Awaiting User Response Railway • 24 days ago


Railway
BOT

17 days ago

This thread has been marked as solved automatically due to a lack of recent activity. Please re-open this thread or create a new one if you require further assistance. Thank you!

Status changed to Solved Railway • 17 days ago


Welcome!

Sign in to your Railway account to join the conversation.

Loading...