Le point d'architecture que tout le monde découvre trop tard

Shopify fait déjà tourner sa boutique en ligne sur une infrastructure edge Cloudflare : c'est invisible pour le marchand, mais cela change tout. Quand vous proxifiez (nuage orange) l'enregistrement de votre domaine vers Shopify, la requête traverse le proxy Cloudflare de votre zone pour rejoindre... l'edge Cloudflare de Shopify. La façon dont Cloudflare traite ce scénario dit « orange-to-orange » dépend entièrement du type d'enregistrement, et c'est là que la plupart des incidents commencent :

  • Enregistrement A proxifié vers une IP Shopify (typiquement 23.227.38.65) : le proxy refuse de relayer ce trafic (erreur 1000 « DNS points to prohibited IP »), et vos règles Cloudflare restent quasiment décoratives sur le trafic de la boutique.
  • CNAME proxifié vers shops.myshopify.com : Cloudflare détecte la cible comme un autre client Cloudflare et route la requête d'abord dans votre zone, puis dans celle de Shopify, dans cet ordre. C'est le routage orange-to-orange (O2O), partie de Cloudflare for SaaS, disponible depuis octobre 2021. Quand la détection s'active, une petite icône Shopify apparaît à côté de l'enregistrement dans le dashboard Cloudflare.

Techniquement, ce second montage fonctionne sur n'importe quel plan Shopify payant, pas seulement Plus. Mais la documentation officielle de Shopify indique que les configurations de proxy Cloudflare, y compris O2O, ne sont pas supportées et « peuvent casser à tout moment » : Shopify ne garantit, ne débogue et ne corrige pas une couche de proxy qu'il ne contrôle pas. Des pannes réelles sont rapportées dans les communautés de marchands (échecs DNS après des mois de fonctionnement stable, certificats SSL qui cessent silencieusement de se renouveler).

Les symptômes classiques d'une zone mal configurée : erreur 1000 « DNS points to prohibited IP », 403 intermittents quand la boutique répond mais rejette le trafic relayé, ou coupures aléatoires quand l'enregistrement pointe vers des IP Shopify qui changent. Ces symptômes alimentent des dizaines de fils sur le forum Cloudflare Community et sur les forums Shopify, avec un dénouement presque toujours identique.

La configuration qui fonctionne sur un plan standard

  1. La boutique en nuage gris, sans exception. L'enregistrement A du domaine (typiquement 23.227.38.65) et le CNAME www vers shops.myshopify.com restent en DNS only. Shopify termine le HTTPS sur son propre edge, avec son certificat et son CDN. Sauf besoin précis au niveau de l'edge (un WAF que vous contrôlez, du rate limiting, des logs au niveau requête, la visibilité des crawlers IA), il y a peu à gagner à placer un proxy devant : Shopify couvre déjà le CDN, le SSL et la protection DDoS.
  2. Cloudflare pour le DNS, les emails et les sous-domaines hors boutique. Ce que la zone apporte réellement : des serveurs de noms rapides, la gestion des emails (MX, SPF, DKIM, DMARC), les redirections de domaine via Redirect Rules sur les hostnames non-Shopify, et le proxy d'autres sous-domaines (application auto-hébergée, documentation, blog, API).
  3. Redirection de la racine vers www, la bonne méthode. La redirection du domaine racine vers www se fait avec une Redirect Rule, ce qui exige de proxifier la racine du domaine. Sur Shopify, la marche à suivre est de configurer le domaine principal côté Shopify (où la redirection est gérée nativement) plutôt que de forcer une proxification qui déclenche l'erreur 1000. Si le registrar gère déjà cette redirection, la laisser en place.
  4. Les emails se gèrent à part, sans risque pour la boutique. MX, SPF et DKIM vivent dans la zone DNS, pas dans la boutique Shopify : les recréer dans la zone Cloudflare, ou y brancher Email Routing, ne perturbe ni la boutique ni la messagerie. La seule règle à respecter : les hostnames de messagerie (MX, webmail) restent en nuage gris, jamais proxifiés.
  5. Orange-to-orange : techniquement possible, officiellement non supporté. Un CNAME proxifié vers shops.myshopify.com active le routage O2O sur n'importe quel plan Shopify payant (un enregistrement A proxifié n'en bénéficie pas). Si vous tenez à ce montage, il exige une configuration précise : mode SSL/TLS sur Full, Always Use HTTPS désactivé (il bloque le chemin ACME que Shopify utilise pour renouveler ses certificats et peut provoquer des boucles de redirection), et aucun cache sur le HTML de la boutique. Le setup étant officiellement non supporté par Shopify, traitez-le comme un choix délibéré et surveillé : testez d'abord sur un sous-domaine secondaire, et gardez la marche arrière (nuage gris) à portée de main.

Départager un 403 : qui le renvoie ?

Face à un 403, le premier réflexe est de regarder qui signe la page d'erreur :

  • Page d'erreur esthétique Cloudflare : le blocage vient de VOS règles (règles personnalisées, IP Access Rules). Vérifiez Security > Events à l'horodatage exact : la règle en cause est identifiée par son ID, et la correction est un ajustement de règle, pas une bascule DNS.
  • Page d'erreur Shopify : le 403 vient de Shopify, qui refuse le trafic qu'il reçoit via le proxy de votre zone au lieu du trafic direct attendu. La correction est de repasser l'enregistrement de la boutique en nuage gris. Aucun réglage Cloudflare ne rend cette proxification officiellement supportée par Shopify ; un montage O2O correctement configuré peut fonctionner, mais vous portez seul le risque.
  • Erreur 1000 (DNS points to prohibited IP) : même diagnostic, signature différente : le proxy refuse de relayer vers les IP Shopify. Repassez en nuage gris.

Les erreurs qui prolongent l'incident

  • Chercher une règle magique côté Cloudflare : le forum regorge de tentatives (exceptions de sécurité, changements de mode SSL/TLS, réglages de cache) pour « réparer » une proxification de la boutique que Shopify ne supporte pas au départ. Tant que l'enregistrement est en orange avec une configuration incorrecte, les symptômes reviennent.
  • Proxifier puis mettre en cache le HTML de la boutique : Shopify met déjà en cache son contenu à son edge avec des en-têtes maîtrisés. Empiler un cache Cloudflare devant la boutique ajoute un risque d'incohérence (prix, stocks) sans gain mesurable.
  • Oublier que le DNS a migré, pas la boutique : après le déplacement de la zone, tout changement de domaine doit se faire dans le dashboard Shopify ET dans la zone Cloudflare. Un domaine déclaré d'un seul côté produit des boucles de redirection ou des certificats invalides.
  • Basculer en orange « pour tester » en pleine journée : chaque activation du proxy devant la boutique est un changement de chemin réseau visible par tous les visiteurs. Testez sur un sous-domaine dédié, en heures creuses, avec la marche arrière prête.

Questions fréquentes

Pourquoi l'erreur « DNS points to prohibited IP » apparaît-elle avec Shopify ?

Parce qu'un enregistrement proxifié pointant vers Shopify, typiquement un A record vers une IP Shopify, ne peut pas être relayé par le proxy : la cible appartient à une autre zone Cloudflare, le proxy la refuse. Un CNAME proxifié vers shops.myshopify.com active le routage orange-to-orange et évite cette erreur, mais ce montage reste officiellement non supporté par Shopify. La correction fiable est de repasser l'enregistrement en nuage gris.

Peut-on mettre Cloudflare devant une boutique Shopify ?

Techniquement oui : un CNAME proxifié vers shops.myshopify.com active le routage orange-to-orange sur n'importe quel plan Shopify payant, pas seulement Plus. Mais la documentation officielle de Shopify déclare ce montage non supporté, y compris O2O, et précise qu'il peut casser à tout moment. Cloudflare apporte de façon fiable le DNS rapide, les emails, les redirections sur les hostnames non-Shopify et la proxification d'autres sous-domaines ; proxifier la boutique elle-même est un risque délibéré, pas un réglage recommandé par défaut.

D'où viennent les erreurs 403 entre Shopify et Cloudflare ?

Départagez selon la page d'erreur : un 403 signé Cloudflare vient de vos règles de sécurité (ajustement de règle), un 403 signé Shopify vient du refus de la boutique face à un trafic proxifié inattendu (retour au nuage gris). L'erreur 1000 suit le même dénouement.

Qu'apporte Cloudflare à une boutique Shopify, alors ?

Des serveurs de noms rapides, la gestion email (MX, SPF, DKIM, DMARC), les redirections de domaine via Redirect Rules sur les hostnames non-Shopify, et la proxification d'autres sous-domaines (app, docs, blog auto-hébergé). Un rôle de gestion du DNS, des emails et des sous-domaines hors boutique, pas de proxy sur la boutique.

Votre boutique Shopify déraille depuis la migration DNS ?

CF Garage remet votre zone en ordre : boutique en nuage gris, emails et redirections gérés proprement, fin des 403 et de l'erreur 1000. Tarif fixe, communication écrite, garantie de satisfaction.

Voir nos offres

Ressources et guides complémentaires