Hi there,
Sorry to hear you are experiencing some difficulties here.
A 524 error indicates a timeout after establishing a TCP connection and waiting for a response from your origin.
If your origin server does not return any data after 100 seconds, we will close the connection and serve a 524 error. This can happen if your server is simply taking too long because it has too much work to do - e.g. a large data query, or because the server is struggling for resources and cannot return any data in time. We recommend that you implement status polling of large HTTP processes to avoid hitting this error.
Here are the options we’d suggest to work around this:
-
Run the scripts via a grey-clouded subdomain.
-
Change the script so that it kicks off a long-running background process, and quickly returns a status which the browser can poll until the background process has completed, at which point the full response can be returned. This is the way most people do this type of activity these days - as keeping HTTP connections open for a long time is unreliable and can also be very taxing.
-
For Enterprise zones only, you can increase the 524 timeout up to 6000 seconds using the proxy_read_timeout API endpoint.
However, please be aware that increasing the timeout can potentially be an attack vector since Cloudflare is using more resources to maintain those connections. We do not recommend to simply jump to the maximum allowed: instead it’s better to try to aim for the minimum required by the application, or start by doubling the default 100 seconds value and then increment.
Please also note that the timeout change will affect the entire zone, and it is not possible to be applied only to a specific subdomain. You would need to use Cloudflare Subdomain Support to achieve that.
I hope this information was useful, let us know if we can further assist you in this matter.