API
The Gcore Customer Portal is being updated. Screenshots may not show the current version.
CDN
CDN
BillingCDN resources overviewOrigin groupPurgePrefetchReports
API
Chosen image
Home/CDN/CDN resource options/General/Connection and read timeouts

Customize connection and read timeouts

Custom connection and read timeouts are analogous features that let you specify how long Gcore edge nodes should wait when connecting to your origin server.

  • A custom connection timeout sets the duration allowed for establishing a connection.

  • A custom read timeout specifies the time allowed for receiving a response from your origin server. This timeout applies only between two successive read operations, not for the entire response transmission.

When designated timeouts are exceeded, users receive a “504 Gateway Timeout” error.

Configure custom timeouts

1. In the Gcore Customer Portal, navigate to CDN.

CDN page with a list of CDN resources

2. Click the CNAME of the required CDN resource to open Resource settings.

A new page will open. Perform the remaining steps there.

3. Click General to open nested features.

4. Click Custom connection timeout or Custom read timeout, depending on your task.

5. Enable the Customize connection timeout or Customize read timeout toggle correspondingly.

Resource settings with custom timeouts section open

6. Specify the desired value in the corresponding field. You can configure either feature individually or both at once. Values should be less than default Gcore values: <5 seconds for connection timeout and <30 seconds for read timeout. Learn more in our guide to CDN timeouts.

If you’re on the “Enterprise” plan, you have more flexibility in changing the default timeout values. To increase the connection timeout to over 5 seconds and read timeout to over 30 seconds, contact our Support team.

7. Save changes.

A dialog with enabled custom read and connection timeouts

Was this article helpful?

Not a Gcore user yet?

Learn more about our next-gen CDN

Go to the product page
// // Initialize a variable to undefined initially. // var growthBook = undefined; // (function() { // try { // var script = document.createElement('script'); // script.src = "https://cdn.jsdelivr.net/npm/@growthbook/growthbook/dist/bundles/auto.min.js"; // script.setAttribute("data-api-host", "https://cdn.growthbook.io"); // script.setAttribute("data-client-key", "sdk-truekA5wvhMYaqsu"); // document.head.appendChild(script); // script.onload = function() { // console.log("GrowthBook script loaded successfully."); // growthBook = window.GrowthBook; // Assuming GrowthBook attaches itself to window // }; // script.onerror = function() { // console.error("Failed to load the GrowthBook script."); // growthBook = undefined; // Explicitly set to undefined on error // }; // } catch (error) { // console.error("An error occurred while setting up the GrowthBook script:", error); // growthBook = undefined; // } // })(); // // Optional: Push to dataLayer if needed // window.dataLayer = window.dataLayer || []; // window.dataLayer.push({ // 'event': 'scriptLoadStatus', // 'growthBookStatus': growthBook ? "Loaded" : "Failed" // });