Utilisation de Discourse avec Cloudflare
Ce guide explique comment configurer et utiliser Discourse avec Cloudflare, y compris les meilleures pratiques de sécurité et les conseils de dépannage.
Niveau d’utilisateur requis : Administrateur
L’accès à la console est requis pour les installations auto-hébergées
Résumé
Cloudflare peut améliorer votre instance Discourse avec des performances améliorées grâce au CDN, des couches de sécurité supplémentaires comme la protection DDoS et la prise en charge HTTPS. Ce guide couvre le processus de configuration et les meilleures pratiques pour une configuration optimale.
Pourquoi utiliser Cloudflare avec Discourse
L’utilisation de Cloudflare avec votre instance Discourse offre plusieurs avantages clés :
- Performances : Le CDN de Cloudflare peut améliorer l’accès mondial aux actifs courants, améliorant l’expérience utilisateur à l’échelle mondiale (source)
- Sécurité : Couches de protection supplémentaires comprenant :
- Protection DDoS (source)
- Prise en charge HTTPS (source) (alternative à la configuration Let’s Encrypt de Discourse)
Pour les installations auto-hébergées, bien que Cloudflare offre ces avantages, cela ajoute de la complexité à votre configuration.
Configuration de Cloudflare
- Familiarisez-vous avec les Fondamentaux de Cloudflare
- Suivez les instructions de configuration pour configurer Cloudflare pour votre domaine et bénéficier des avantages en matière de sécurité, de performances et de fiabilité
Meilleures pratiques de configuration
Paramètres DNS
- Assurez-vous que les enregistrements DNS pointant vers votre instance Discourse sont proxysés
- Accédez aux paramètres DNS à l’adresse
dash.cloudflare.com/?to=/:account/:zone/dns
Configuration SSL/TLS
- Définissez le mode de chiffrement sur “Full (strict)”
- Accédez aux paramètres SSL/TLS à l’adresse
dash.cloudflare.com/?to=/:account/:zone/ssl-tls
Une configuration SSL/TLS incorrecte peut entraîner des boucles de redirection
Configuration de la mise en cache
- Définissez le niveau de mise en cache sur “Standard”
- Accédez aux paramètres de mise en cache à l’adresse
dash.cloudflare.com/?to=/:account/:zone/caching/configuration
Règles de page
Créez les règles de page suivantes à l’adresse dash.cloudflare.com/?to=/:account/:zone/rules :
- Définissez le niveau de mise en cache sur “Bypass” pour
community.example.com/session/* - Configurez les paramètres des règles pour normaliser les URL entrantes
Paramètres réseau
Configurez les éléments suivants à l’adresse dash.cloudflare.com/?to=/:account/:zone/network :
Activer :
- Compatibilité IPv6
- Géolocalisation IP
- Journalisation des erreurs réseau
- Routage Onion
Désactiver :
- Pseudo IPv4
- Mise en mémoire tampon des réponses
- En-tête True-Client-IP
- gRPC
Définissez la taille maximale de téléchargement conformément à la politique de votre site (100 Mo recommandés)
Paramètres du pare-feu d’applications Web (WAF)
Si votre plan Cloudflare prend en charge les règles gérées, créez les éléments suivants :
- Ignorer le WAF lors de la création/modification de publications :
(http.request.uri.path eq "/posts(/[0-9]+)?" and http.request.method in {"POST" "PUT"}) - Pour les utilisateurs du plugin Data Explorer, ignorer le WAF lors des requêtes d’administration :
(http.request.uri.path contains "/admin/plugins/explorer/queries/" and http.request.method eq "PUT")
Pour les deux règles :
- Choisissez “Ignorer toutes les règles restantes”
- Activez “Journaliser les requêtes correspondantes”
Accédez aux paramètres du WAF à l’adresse dash.cloudflare.com/?to=/:account/:zone/firewall/managed-rules
Optimisation du contenu
Configurez les éléments suivants à l’adresse dash.cloudflare.com/?to=/:account/:zone/speed/optimization :
- Activer Brotli
- Désactiver Rocket Loader™
- Désactiver la minification automatique
Discourse signale fréquemment des pannes de site en raison de l’activation de Rocket Loader™
Configuration supplémentaire pour les installations auto-hébergées
Pour garantir le transfert correct de l’adresse IP, ajoutez ce qui suit à la section des modèles dans votre containers/app.yml :
- "templates/cloudflare.template.yml"
Associé : Comment configurer Cloudflare ?
Ressources de support
Dépannage
Problèmes de politique de sécurité du contenu (CSP)
Si vous rencontrez des erreurs CSP :
- Vérifiez que Rocket Loader est désactivé
- Vérifiez que les scripts sont correctement ajoutés au paramètre de site
content security policy script src
Fonctionnalité OneBox
Si OneBox est bloqué :
- Vérifiez si le mode Super Bot Fight est activé
- Ajustez le paramètre “Certainement automatisé” s’il est défini sur “Géré” ou “Bloquer”
- Envisagez de créer une règle WAF personnalisée pour l’agent utilisateur OneBox



