Voilà, c’est le genre d’erreur qui te tombe dessus un dimanche soir, sans prévenir. Tu lances ton site, et à la place de ta page d’accueil, tu tombes sur un écran blanc avec un message laconique : **« Error 521: Web server is down »**. Pas de panique. J’ai passé des heures à chasser ce code sur mes propres projets, des petits sites WordPress jusqu’à des applis un peu plus sérieuses. Et franchement, c’est souvent plus simple à régler qu’on ne le croit — à condition de savoir où chercher.

Points clés à retenir

  • L’erreur 521 signifie que Cloudflare ne parvient pas à établir une connexion avec ton serveur d’origine.
  • La cause la plus fréquente ? Le serveur est tout simplement hors ligne, ou son pare-feu bloque les IP de Cloudflare.
  • Un certificat SSL mal configuré ou expiré peut aussi provoquer cette erreur — c’est un piège classique.
  • Commence par vérifier si ton serveur répond bien en local, puis autorise les plages IP de Cloudflare dans ton pare-feu.
  • Sur WordPress, un plugin de sécurité trop zélé peut couper les ponts. Vérifie ça avant de tout démonter.
  • Bref : 80 % des cas se règlent en 10 minutes avec un accès SSH et un peu de logique.

C’est quoi exactement l’erreur 521 ? (Et pourquoi c’est pas la même chose que 520 ou 522)

Quand tu vois le code **521**, Cloudflare t’explique poliment qu’il a essayé de joindre ton serveur, mais que ce dernier a refusé la connexion — ou n’a pas répondu du tout. Le problème ? Beaucoup de gens confondent 521 avec ses copines : - **Erreur 520** : le serveur répond, mais Cloudflare ne comprend pas sa réponse (un truc bizarre dans l’en-tête HTTP, par exemple). - **Erreur 522** : le serveur est lent, Cloudflare attend, et au bout de 30 secondes il abandonne (timeout de connexion). - **Erreur 521** : la connexion est refusée **immédiatement**. Pas de timeout. Le serveur dit "non, je te parle pas". Et là, y a deux possibilités : soit le serveur est carrément éteint, soit il a décidé de ne pas accepter les requêtes de Cloudflare.

Un exemple concret qui m’est arrivé

J’ai un petit site vitrine hébergé chez un hébergeur mutualisé pas cher. Un jour, plus rien. Je vérifie le panneau d’admin — le serveur est vert, tout a l’air normal. Je lance un `curl -I https://monsite.com` depuis mon terminal : rien. Le serveur ne répond même pas sur le port 443. > Résultat : le pare-feu de l’hébergeur avait blacklisté toute la plage IP de Cloudflare après une mise à jour automatique. Un simple coup de fil au support, et c’était réglé.

Pourquoi Cloudflare bloque-t-il ton serveur ? (Les vraies causes, pas les mythes)

On va droit au but. Voici les causes que j’ai rencontrées le plus souvent : ### 1. Le serveur est hors ligne — et tu le sais pas C’est la cause numéro 1. Un redémarrage non programmé, une surcharge, une attaque DDoS, une maintenance de l’hébergeur… et paf, 521. **Comment vérifier :** depuis un terminal, tape `ping monsite.com` ou mieux, `nc -zv monsite.com 80` (ou 443). Si ça ne répond pas, le problème est chez ton hébergeur. ### 2. Le pare-feu bloque les IP de Cloudflare Cloudflare passe par des adresses IP spécifiques. Si ton pare-feu (iptables, CSF, ou même le pare-feu de ton hébergement) les bloque, adieu la connexion. **J’ai vu ça avec CSF :** après une mise à jour, le fichier `csf.allow` avait été réinitialisé, et mes IP Cloudflare n’y étaient plus. Un petit `curl -I` local fonctionnait, mais de l’extérieur, rien. **Solution :** whiteliste les plages IP de Cloudflare. Tu trouves la liste officielle ici : [Cloudflare IP ranges](https://www.cloudflare.com/ips/). À mettre dans ton pare-feu, sans oublier les ports 80 et 443. ### 3. Un certificat SSL mal foutu Ça, c’est le piège que j’ai mis le plus de temps à identifier. Cloudflare peut essayer de se connecter à ton serveur en HTTPS (mode Full ou Full Strict). Si ton certificat SSL est expiré, auto-signé, ou ne correspond pas au nom de domaine, le serveur refuse la connexion — et Cloudflare renvoie… 521. **Mon erreur :** j’avais un certificat Let’s Encrypt qui s’était renouvelé, mais le nouveau fichier n’était pas chargé par Nginx. Résultat : refus de connexion SSL, et 521 au lieu de mon site. **Vérification :** sur ton serveur, lance `openssl s_client -connect localhost:443 -servername monsite.com`. Si ça te renvoie une erreur de certificat, tu tiens la cause.

Comment corriger l’erreur 521 rapidement ? (Guide pratique)

Bon, assez de théorie. Voici ma checklist, dans l’ordre.

Étape 1 : vérifie que ton serveur est en vie

Depuis la machine serveur elle-même (via SSH), lance : ```bash curl -I http://localhost ``` Si ça répond, ton serveur tourne. Si non, redémarre-le (ou contacte ton hébergeur). Ensuite, vérifie que le serveur écoute bien sur les bons ports : ```bash sudo netstat -tulpn | grep -E ':(80|443)' ``` Si rien n’apparaît, ton service web (Apache, Nginx, etc.) ne tourne pas.

Étape 2 : autorise les IP de Cloudflare dans ton pare-feu

Si tu utilises iptables, un exemple de règles : ```bash for ip in $(curl -s https://www.cloudflare.com/ips-v4); do sudo iptables -I INPUT -p tcp -s $ip --dport 80 -j ACCEPT sudo iptables -I INPUT -p tcp -s $ip --dport 443 -j ACCEPT done ``` Pour CSF (ConfigServer Security & Firewall), ajoute les IP dans le fichier `/etc/csf/csf.allow` et relance `csf -r`.

Étape 3 : vérifie la configuration SSL/TLS

Dans le panneau Cloudflare, essaie de passer le mode SSL en **Flexible** (temporairement) pour voir si l’erreur disparaît. Si oui, c’est que ton certificat pose problème. Corrige-le, puis repasse en Full ou Full Strict.

Étape 4 : pour WordPress, désactive les plugins de sécurité

J’ai déjà vu Wordfence bloquer net les IP de Cloudflare après une mise à jour. Désactive-le depuis le panneau d’admin (ou via FTP en renommant le dossier du plugin). Si tu utilises Sucuri, même combat.

Étape 5 : appelle ton hébergeur (et sois précis)

Quand tout le reste échoue, contacte le support. Donne-leur le **Ray ID** que Cloudflare affiche sur la page d’erreur, et explique que le serveur refuse la connexion. Ça leur évite de te poser 15 questions.

Que signifie le code 521 ? (Réponse courte pour les pressés)

Le code 521 signifie que **Cloudflare a essayé de se connecter à ton serveur web, mais que celui-ci a refusé la connexion ou était hors ligne**. C’est un problème côté serveur, pas côté Cloudflare. En clair : Cloudflare est le messager, et le messager te dit "j’ai sonné, personne n’a répondu".

Erreur 520 vs 521 vs 522 : comment les différencier ?

| Code | Nom | Ce qui se passe | |------|-----|-----------------| | 520 | Réponse inattendue | Le serveur répond, mais Cloudflare ne comprend pas la réponse (ex : en-tête HTTP mal formée) | | 521 | Serveur hors ligne | Le serveur refuse la connexion ou ne répond pas du tout | | 522 | Délai de connexion dépassé | Le serveur est joignable, mais trop lent (plus de 30 secondes) | **Mon conseil :** si tu vois 521, commence par le serveur. Si tu vois 522, commence par le réseau. Si tu vois 520, commence par les logs d’erreur du serveur.

Pour finir : ne laisse pas traîner une 521 trop longtemps

Une erreur 521, c’est frustrant, mais c’est rarement un mystère insoluble. Dans 80 % des cas, c’est juste un serveur qui a planté, un pare-feu mal configuré, ou un certificat SSL qui a expiré. J’ai mis des heures à comprendre pourquoi mon site tombait toutes les nuits à 3h du matin (c’était une tâche cron qui redémarrait Apache sans prévenir). Une fois diagnostiqué, réglé en 30 secondes. Alors si tu te retrouves face à ce message, prends une grande inspiration, suis les étapes ci-dessus, et surtout : ne laisse pas traîner. Google n’aime pas les sites qui tombent trop souvent, et tes visiteurs non plus.