Ton site affiche “Error 524: A timeout occurred” ?

Un import de catalogue produit qui tourne depuis une minute et demie, et soudain, à la place de la page attendue : un écran orange Cloudflare avec “524 : A timeout occurred”. Rafraîchir ne change rien. La page reste bloquée, ou finit par tomber exactement au même endroit.

Bonne nouvelle : ce n’est pas une panne générale de ton hébergeur, et ce n’est pas non plus la même chose qu’une erreur 504 ou 502 classiques. Le 524 est une erreur spécifique à Cloudflare, qui a une cause précise et un mécanisme bien identifié. Une fois qu’on comprend ce mécanisme, la correction devient beaucoup plus simple à cibler — et ça se répare, sans forcément tout casser.

524, 502, 504 : ce n’est pas la même erreur

Un 502 Bad Gateway signifie que le serveur en amont (proxy, load balancer) a reçu une réponse invalide de l’origine. Un 504 Gateway Timeout signifie qu’un serveur intermédiaire classique a attendu une réponse et a abandonné. Le 524, lui, est propre à Cloudflare : Cloudflare a bien transmis la requête à ton serveur d’origine, mais celui-ci n’a rien renvoyé dans le délai imparti. Sur les plans Free et Pro, ce délai est fixé à environ 100 secondes, et il n’est pas configurable depuis ton compte Cloudflare. Passé ce délai, Cloudflare coupe la connexion et affiche 524 — même si ton serveur, lui, était encore en train de travailler.

C’est la nuance essentielle : le 524 dit “ton origine met trop de temps à répondre”, pas “ton origine est en panne”. Pour ça, voir plutôt les erreurs 520, 521 ou 523, qui décrivent des situations différentes (origine injoignable, port fermé, réponse vide).

Pourquoi ça arrive : ce qui fait dépasser les 100 secondes

1. Diagnostiquer : Cloudflare ou serveur ?

Avant de toucher à quoi que ce soit, isole la cause. Désactive temporairement le proxy Cloudflare (passage en “DNS only”, nuage gris au lieu du nuage orange dans le DNS) et recharge la même action. Si l’erreur disparaît et que le serveur répond directement (même lentement), le problème est côté origine, pas côté Cloudflare. Si tu veux revoir comment manipuler ces réglages proprement, notre guide pour configurer ses DNS sur Cloudflare détaille la marche à suivre.

En parallèle, consulte les logs serveur (accès et erreurs PHP) au moment exact du 524 : c’est souvent là que se trouve le vrai coupable — un plugin, une requête, un cron.

2. Optimiser le script ou la requête qui traîne

Dans la majorité des cas, un 524 récurrent pointe vers une action précise : un export CSV, une synchronisation, une recherche sans index. Utilise Query Monitor pour repérer les requêtes lentes et le plugin responsable — notre article sur trouver le plugin qui ralentit WordPress explique la méthode pas à pas. Si la lenteur vient de la base, un nettoyage avec WP-Optimize ou la mise en place d’un cache objet Redis peut suffire à faire tomber le temps de réponse sous la barre critique.

3. Sortir les tâches longues du parcours HTTP

C’est le levier le plus efficace, et souvent le plus durable : ne fais jamais dépendre une tâche longue (import massif, sauvegarde, génération d’un gros rapport, appel IA) d’une seule requête HTTP synchrone. Découpe-la en tâches plus petites traitées en arrière-plan via WP-Cron déclenché côté serveur (et non par visite), une file d’attente (queue) ou un traitement asynchrone qui renvoie immédiatement “en cours” à l’utilisateur puis notifie la fin du traitement. Le navigateur (et Cloudflare) n’attend alors plus une réponse unique de 3 minutes, mais plusieurs réponses courtes.

4. Ajuster les timeouts serveur — sans se tromper sur ce qui est réglable

Ici, il faut être honnête sur ce qui dépend de toi et ce qui ne dépend pas de toi.

Ce qui dépend de ton serveur :

Ce qui ne dépend pas de toi : la limite d’environ 100 secondes entre Cloudflare et ton origine, sur les plans Free et Pro, est fixe. Il n’existe pas de réglage dans le dashboard Cloudflare pour l’augmenter à ce niveau d’abonnement. Corriger le script ou déplacer la tâche en arrière-plan est donc la vraie solution — pas espérer un paramètre caché. Pour aller plus loin sur ces réglages, notre guide sur les directives PHP WordPress détaille chaque limite et où la modifier.

5. Sortir l’endpoint lent du proxy Cloudflare

Pour un endpoint précis et connu pour être long (un webhook d’import, une API interne), une option pragmatique : le faire passer en “DNS only” (nuage gris) via un sous-domaine dédié non proxifié. La requête va alors directement à ton serveur sans passer par la limite de 100 secondes de Cloudflare. Attention : cela retire aussi la protection DDoS et le cache Cloudflare sur ce sous-domaine précis — à réserver aux endpoints techniques, pas au site public.

6. Vérifier le pare-feu et whitelister les IP Cloudflare

Un pare-feu applicatif (WAF) ou une règle fail2ban trop agressive peut ralentir — sans totalement bloquer — les requêtes provenant des plages d’IP Cloudflare, ajoutant une latence qui pousse la réponse au-delà des 100 secondes. Vérifie que les plages IP officielles de Cloudflare sont bien autorisées sans limitation de débit sur ton serveur.

7. Contrôler la santé générale de l’origine

Un serveur au bord de la saturation répond lentement à tout, pas seulement au script fautif. Vérifie la charge CPU, la RAM disponible, le nombre de processus PHP-FPM actifs. Si le disque est presque plein, ça peut aussi ralentir les écritures — voir notre article sur l’erreur 507, disque plein. Pour un audit plus large de la lenteur du site, notre diagnostic complet, tous CMS confondus reste un bon point de départ.

Tableau récap

Cause probableSolution concrète
Script PHP lent (import, export, génération)Optimiser le code, découper en lots plus petits
Requête SQL lourdeAjouter un index, nettoyer la base, activer un cache objet
Tâche longue exécutée en directPasser en tâche asynchrone / queue / cron serveur
Serveur saturé (CPU, RAM)Monter en ressources ou réduire la charge (plugins, cron mal réglés)
Pare-feu qui ralentit les IP CloudflareWhitelister les plages IP officielles de Cloudflare
Endpoint spécifique connu pour être lentPasser ce sous-domaine en DNS only (nuage gris)
Limite fixe ~100 s Cloudflare (Free/Pro)Non modifiable : corriger la cause, pas le seuil

FAQ

Le 524 vient-il toujours de mon serveur ?

Dans l’immense majorité des cas, oui : c’est ton origine qui met trop de temps à répondre. Cloudflare ne fait qu’appliquer un délai d’attente fixe et couper la connexion au-delà. Rarement, un problème réseau entre Cloudflare et ton hébergeur peut aussi rallonger le temps de trajet, mais c’est beaucoup plus rare qu’un script ou une requête lente côté serveur.

Puis-je augmenter la limite de 100 secondes sur un plan Free ou Pro ?

Non, ce délai n’est pas configurable à ces niveaux d’abonnement. Il faut soit corriger la cause de la lenteur, soit sortir la tâche du parcours HTTP synchrone (arrière-plan, queue), soit passer l’endpoint concerné en DNS only pour contourner le proxy sur ce point précis.

Comment savoir si c'est un plugin qui cause le 524 ?

Désactive temporairement les plugins un par un (ou utilise Query Monitor) en reproduisant l’action qui déclenche l’erreur. Si le temps de réponse chute nettement après désactivation d’un plugin précis, c’est ton coupable.

Le 524 peut-il apparaître sur un site qui n'utilise pas WordPress ?

Oui, absolument. C’est une erreur liée au proxy Cloudflare et au temps de réponse de l’origine, quel que soit le CMS ou la stack technique derrière (WordPress, Node, une app custom). La logique de diagnostic reste la même.

Un import WooCommerce provoque un 524 systématique : que faire en urgence ?

Découpe l’import en fichiers plus petits en attendant une solution définitive, ou lance-le en ligne de commande via SSH plutôt que par le navigateur : la commande tourne côté serveur sans passer par le timeout Cloudflare.

Quand passer la main à un pro

Si le 524 revient régulièrement malgré l’optimisation du script identifié, ou si tu ne parviens pas à isoler la cause exacte entre serveur, base de données et pare-feu, c’est le signe qu’il faut un œil technique qui audite l’infrastructure dans son ensemble — pas juste rajouter un paramètre au hasard. Une maintenance régulière évite justement ce genre de blocage : surveiller les temps de réponse avant qu’ils ne franchissent la limite, c’est bien plus simple que de courir après un timeout une fois le client bloqué devant un écran orange.

Ce problème, Peechy s'en occupe

Plutôt que de tout gérer seul, confiez votre site à une agence qui s'occupe de tout — hébergement, sécurité, maintenance et corrections. Encore plus simple en abonnement : on règle les soucis avant même que vous les remarquiez.

Confier mon site à Peechy