En bref, cela s’explique par le fait que CloudFlare n’est pas un CDN classique.
Le nuage gris indique que CloudFlare ne gère que le DNS pour cette adresse.
Si vous activez le nuage orange, l’adresse IP visible par le monde extérieur est modifiée et tout le trafic est acheminé via son réseau. Cela permet à la fois de « protéger » le serveur et de mettre en cache des ressources telles que les images et les fichiers JavaScript.
Le modèle est nécessaire car, une fois que CloudFlare s’interpose entre votre site et le monde extérieur, votre serveur ne verra que des adresses IP CloudFlare se connecter à lui. En utilisant ce modèle, votre site retrouvera la visibilité des adresses IP des clients, que CloudFlare transmet dans l’en-tête CF-Connecting-IP.
Sans cette configuration correcte, vous rencontrerez des erreurs liées aux limites de connexion et des problèmes concernant les adresses IP d’enregistrement, car tout le trafic utilisateur semblera provenir d’un petit nombre d’adresses.
Si vous décidez d’activer le CDN CloudFlare (nuage orange), vous devez effectuer une étape supplémentaire : créer une règle de page pour l’adresse de votre instance Discourse. Cette règle doit désactiver les performances (« Disable Performance »), ce qui désactivera les fonctionnalités CloudFlare connues pour interférer avec Discourse.
Notez que si vous utilisez CloudFlare comme point d’entrée pour votre site plutôt qu’un bucket S3, vous ajoutez des sauts réseau supplémentaires entre votre serveur et les clients sur Internet. N’oubliez pas que Discourse n’est pas un site web classique, mais une application JavaScript. Une fois Discourse chargé dans le navigateur, il ne télécharge plus de pages lorsque les utilisateurs cliquent sur des liens. Ces sauts réseau supplémentaires introduiront un délai, bien que faible, mais perceptible, à chaque clic.
À moins que votre site ne soit sous attaque, la méthode intelligente pour utiliser CloudFlare consiste à migrer vos ressources vers S3 (stockage objet, et non CDN), puis à placer CloudFlare devant ce stockage S3. Ainsi, les communications avec les clients restent réactives, la bande passante de téléchargement des ressources est réduite, et surtout, vous libérez de l’espace de stockage local sur votre serveur Discourse.