24 days ago
My Node.js service (mas-erp-platform-live) is Active and serving the root / path correctly — static HTML/JS load fine and reflect the latest deploy.
However, ANY request to a path under /api/ (e.g. /api/setup/status) returns a generic HTTP 404 with an empty body, even when I type the URL directly in the browser (no client-side JS involved). My app's own code always returns a JSON body on 404 ({"error": "..."}) — this response has no body at all, so I don't believe it's reaching my application.
Public domain: mas-erp-platform-live-production.up.railway.app
Region: US West
Volume attached at /app/mas-erp
Confirmed via HTTP/Network logs in the dashboard: zero entries for these requests during testing
Deploy logs only ever show "Starting Container" — no application startup log line after it
Is there a known routing table issue that could cause only some paths on a domain to reach the container while others don't? Happy to share Project/Service/Deployment IDs privately.
6 Replies
24 days ago
This thread has been opened as a bounty so the community can help solve it.
Status changed to Open Railway • 24 days ago
Status changed to Solved msalam73-droid • 24 days ago
24 days ago
Waiting your kind support
Status changed to Open Railway • 24 days ago
24 days ago
Your API is working fine on my end, and it's returning a response from the route you provided (/api/setup/status).
Attachments
13 days ago
The fact that / works but /api/* returns a Railway-level 404 with no application logs strongly suggests the request may not be reaching the container. I’d first check the domain’s target port and routing configuration, then test the service directly with curl from inside the container. Railway’s HTTP logs should also show requests handled at the edge, so the absence of entries is a useful clue that this is routing-related rather than an Express/Node route issue.
13 days ago
The fact that / works while /api/* returns an empty 404 still points toward routing rather than your Node.js app. I’d check the Railway domain’s target port and HTTP logs first, since Railway records the path and upstream details for requests reaching the edge. You can also test with X-Railway-Debug to see where the request is being routed.
13 days ago
The fact that / works while /api/* returns an empty 404 still points toward routing rather than your Node.js app. I’d check the Railway domain’s target port and HTTP logs first, then test the service directly from inside the container.
msalam73-droid
Waiting your kind support
9 days ago
Hi bro
