What is the name of the domain?
thatch.ai
What is the error number?
404
What is the error message?
404 page not found
What is the issue you’re encountering
When Cloudflare proxying is enabled, some requests will occasionally fail with a 404 error.
What steps have you taken to resolve the issue?
Starting last week (Dec. 10th), we started observing some requests randomly failing with a 404 error.
These requests are legitimate and should not have failed. Additionally:
- no trace of these requests can be found in our application logs
- the response payload (a simple “404 page not found” plain text string) does not match our app’s 404 handler
- we also observed the same issue on a different service, a 3rd-party app that we’re running as is (Metabase)
We’ve reached out to our hosting provider, Render.com. Render thinks the issue is not on their end, because the response headers for the 404 responses does not include the x-render-routing
header that they inject. However, they’ve let us know that they are also using Cloudflare and suggested this could be an O2O issue.
They suggested that we disable Cloudflare proxying, and as far as we can tell that does seem to solve the issue for us. However this also removes our ability to monitor the issue (since the only place where we can see the 404 errors is in Cloudflare logs) and is not a viable long term solution for us.
I opened a ticket with Cloudflare last Friday (request # 01312293) but have not heard anything back. I am also unable to check the ticket’s status, possible due to this incident: Cloudflare Status - Support Ticket Migration - Case Access Issues. I have tried using chat support but it didn’t work. I’ve reached out over Cloudflare’s Discord server, where I was advised to post here.
Here are the full response headers for a request that returned an unexpected 404:
'cf-cache-status': 'DYNAMIC',
'cf-ray': '8f39f65b1e8fba36-SEA',
connection: 'keep-alive',
'content-length': '19',
'content-type': 'text/plain; charset=utf-8',
date: 'Tue, 17 Dec 2024 21:21:21 GMT',
nel: '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}',
'report-to': '{"endpoints":[{"url":"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=MaDL%2F9iuIyj0INKF3liSVTfy1y0ArgOTi%2FfvcMOPzG%2BP3E1sROy2sqQDlzM2SgaKmDDBW3PIi19Ar8TbhHagZYREMKcOLXi8DYhIFdFTu2FSE%2Fe0Y2eDHJfH%2BzuFmqhp7AX0OOImq5Ga%2Fw%3D%3D"}],"group":"cf-nel","max_age":604800}',
server: 'cloudflare',
'server-timing': 'cfL4;desc="?proto=TCP&rtt=7553&min_rtt=7550&rtt_var=2837&sent=5&recv=5&lost=0&retrans=0&sent_bytes=2849&recv_bytes=798&delivery_rate=557697&cwnd=128&unsent_bytes=0&cid=02423b005368cedf&ts=85&x=0"',
vary: 'Accept-Encoding',
'x-content-type-options': 'nosniff'
I’ve managed to reproduce the issue using Cloudflare’s tracing tool, and it looks like nothing in our Cloudflare setup is causing the issue.
I can also provide Cloudflare Ray IDs, or any other information.
What feature, service or problem is this related to?
DNS records
What are the steps to reproduce the issue?
The issue happens randomly when Cloudflare proxying is enabled. As far as we can tell, it can happen on any type of request (normal GET from a browser, AJAX requests, API requests sent from a remote server, etc.).
partners.thatchcloud.com is such a domain. I’ve reproduced the issue with simple GET /
requests to that domain.