20 days ago
Plan: Pro
Symptom: external requests to my custom domain time out (HTTP 000, no response received). Container logs show clean startup with the Node server bound to 0.0.0.0:8080. No errors after startup, no SIGTERM, no crash logged. Restarted the container several times — same result.
GET / (root path) DOES respond — returns its expected content in ~280ms via server: railway-edge (us-west2). All /api/* paths time out.
Has been confirmed on my end:
Explicit app.listen(PORT, '0.0.0.0', ...) bind
Public Networking port set to 8080 (matches the container's listen port)
No custom healthcheck path configured
app.set('trust proxy', 1) set in Express
Rate-limit middleware passes module-load and request-time validation
No Stopping Container events after the latest startup other than expected deploy replacements
Suspect: edge proxy routing for this domain is wedged or pointing at a stale container instance. Please investigate the routing layer between the custom domain and the active deployment.
Deploy ID and project info: happy to share privately if needed.
3 Replies
20 days ago
This thread has been marked as public for community involvement, as it does not contain any sensitive or personal information. Any further activity in this thread will be visible to everyone.
Status changed to Open Railway • 20 days ago
20 days ago
Not pleased that my thread was marked as public without asking me. I specifically upgraded to Pro in order to ask Railway directly instead of the community and then their bot makes my inquiry visible to everyone???I had sensitive info included....
20 days ago
One extra data point: I tested this externally just now and /api/ no longer times out for me.
curl -I https://api.spareable.org/
# HTTP/2 200
curl -I https://api.spareable.org/api/
# HTTP/2 404
# server: railway-edge
# ratelimit-limit: 200
# ratelimit-policy: 200;w=900So at least from my side, the custom domain, TLS, Railway edge, and the request path into the Express app are working. Also, the rate-limit headers on /api/ show that your API middleware is being reached.
19 days ago
Hi bro,
If only /api/* routes time out, the issue is more likely happening inside the application layer, not the domain routing layer.
Please check which middleware or dependencies only run on /api/*, for example:
- database calls
- auth/session middleware
- rate-limit store
- Redis/cache connection
- external API calls
- request validation/body parsing
- route handlers that may not send a response
A good test is to add a very simple API route before all other /api middleware:
app.get('/api/ping', (req, res) => {
res.status(200).json({ ok: true });
});If /api/ping works, Railway routing is fine and the issue is inside one of the real API handlers or dependencies.
If /api/ping also times out, then please check whether any global /api middleware is hanging before the route is reached.
Because / works, I would not assume stale edge routing as the first cause.
