Configuration de Caddy et Cloudflare pour Discourse

Bonjour à tous,

J’ai configuré Discourse sur community.website.com et WordPress sur website.com. J’utilise Caddy comme proxy inverse avec Let’s Encrypt pour la gestion du SSL. Après quelques difficultés initiales, j’ai tout fait fonctionner correctement, y compris le SSL et les redirections. J’ai opté pour cette configuration après de nombreux échecs en tentant d’autres méthodes pour faire fonctionner le proxy inverse. Le problème sous-jacent était mon manque d’expérience avec Docker ou Discourse.

Je comprends également qu’il peut y avoir des problèmes de mise en cache avec Discourse, donc peut-être que moins c’est mieux, ou qu’il faut certaines règles pour éviter les problèmes.

Configuration actuelle :

  • Discourse : Fonctionne via Docker sur community.website.com.
  • WordPress : Installé sur website.com.
  • Caddy : Gère le proxy inverse et le SSL Let’s Encrypt.
  • Cloudflare : Configuration pour le DNS, le pare-feu et le CDN.

Le défi :

Lorsque j’utilise le DNS Cloudflare sans proxy (uniquement pour le DNS), tout fonctionne parfaitement : Caddy gère le SSL Let’s Encrypt et il n’y a aucun problème.

Cependant, lorsque je passe au DNS Cloudflare avec le proxy activé, la connexion échoue avec une erreur « Site inaccessible » de Cloudflare. J’ai mis à jour mon Caddyfile pour utiliser http:// pour les domaines racine et sous-domaines, et j’ai essayé plusieurs configurations SSL dans Cloudflare (Flexible, Full et Full Strict), mais je n’ai pas réussi à établir de connexion.

La question est : comment dois-je configurer cela pour que Caddy, Cloudflare avec SSL fonctionne bien avec Discourse ?

Toutes suggestions sont les bienvenues !

Si vous utilisez les services CDN et de sécurité de Cloudflare, vous n’avez pas besoin de configurer votre propre certificat SSL sur votre serveur d’origine. Au lieu de cela, accédez aux paramètres SSL/TLS dans votre tableau de bord Cloudflare et créez un « certificat d’origine ». Ce certificat sécurisera le trafic proxy de votre serveur d’origine vers Cloudflare. Installez ce certificat d’origine sur votre serveur d’origine, et tout sera opérationnel.

2 « J'aime »

Exécutez-vous Caddy et Wordpress sur la machine hôte ou en tant que conteneurs Docker ?

1 « J'aime »

Merci @shannon1024 ! C’est la première fois pour celle-ci mais c’est bien passé et ça fonctionne maintenant.

1 « J'aime »

Exécution sur Docker. J’ai créé un répertoire dans le répertoire Discourse pour les certificats. J’ai été surpris que cela fonctionne du premier coup :smile:

1 « J'aime »

Étape 5 : Configurer Discourse pour utiliser le certificat SSL

  1. Modifiez la configuration NGINX de Discourse pour utiliser le certificat SSL. Généralement, ce fichier se trouve à l’emplacement /etc/nginx/conf.d/discourse.conf ou dans le répertoire /var/discourse/containers/ si vous utilisez Docker.

  2. Modifiez ou ajoutez les lignes suivantes dans le bloc server :

https://developer.tenten.co/discourse-with-cloudflare-ssl

J’essaie de configurer le serveur d’origine CF et je suis bloqué à cette étape pour l’emplacement du fichier discourse.conf afin de pouvoir apporter les modifications nécessaires. Où se trouve-t-il normalement ?

Les instructions ne sont pas tout à fait correctes d’après ce que j’ai pu constater, car je n’ai rien trouvé à ces emplacements.

Merci d’avance pour toute aide.