Konfiguration von Caddy und Cloudflare für Discourse

Hallo zusammen,

ich habe Discourse auf community.website.com und WordPress auf website.com eingerichtet. Ich verwende Caddy als Reverse-Proxy und Let’s Encrypt verwaltet SSL. Nach einigen anfänglichen Schwierigkeiten habe ich alles reibungslos zum Laufen gebracht, einschließlich SSL und Weiterleitungen. Ich habe mich für dieses Setup entschieden, nachdem zahlreiche Versuche, den Reverse-Proxy auf andere Weise zum Laufen zu bringen, gescheitert waren. Das zugrunde liegende Problem war, dass ich keine Erfahrung mit Docker oder Discourse hatte.

Ich verstehe auch, dass es Probleme mit Caching und Discourse geben kann, daher ist vielleicht weniger mehr oder es gibt Regeln, um Probleme zu vermeiden.

Aktuelles Setup:

  • Discourse: Läuft über Docker auf community.website.com.
  • WordPress: Installiert auf website.com.
  • Caddy: Verwaltet Reverse-Proxy und Let’s Encrypt SSL.
  • Cloudflare: Konfiguration für DNS, Firewall und CDN.

Die Herausforderung:

Wenn Cloudflare DNS ohne Proxy (nur für DNS) verwendet wird, funktioniert alles perfekt – Caddy verwaltet Let’s Encrypt SSL und es gibt keine Probleme.

Wenn jedoch Cloudflare DNS mit aktiviertem Proxy verwendet wird, schlägt die Verbindung mit der Fehlermeldung „Website Down“ von Cloudflare fehl. Ich habe meine Caddyfile aktualisiert, um http:// sowohl für die Root- als auch für die Subdomains zu verwenden, und mehrere SSL-Konfigurationen in Cloudflare ausprobiert (Flexible, Full und Full Strict), aber ich konnte keine Verbindung herstellen.

Die Frage ist, wie ich dies konfigurieren soll, damit Caddy und Cloudflare mit SSL gut mit Discourse zusammenarbeiten?

Jeder Vorschlag ist willkommen!

Wenn Sie die CDN- und Sicherheitsdienste von Cloudflare nutzen, müssen Sie kein eigenes SSL-Zertifikat auf Ihrem Ursprungsserver konfigurieren. Navigieren Sie stattdessen zu den SSL/TLS-Einstellungen in Ihrem Cloudflare-Dashboard und erstellen Sie ein „Origin Certificate“. Dieses Zertifikat sichert den vom Ursprungsserver zu Cloudflare weitergeleiteten Datenverkehr. Installieren Sie dieses Origin Certificate auf Ihrem Ursprungsserver, und alles wird betriebsbereit sein.

2 „Gefällt mir“

Führen Sie Caddy und Wordpress auf dem Host-Computer oder als Docker-Container aus?

1 „Gefällt mir“

Danke @shannon1024! Das erste Mal für dieses, aber schön und reibungslos und funktioniert jetzt.

1 „Gefällt mir“

Läuft auf Docker. Ein Verzeichnis im Discourse-Verzeichnis für die Zertifikate erstellt. Ich war überrascht, dass es beim ersten Versuch geklappt hat :smile:

1 „Gefällt mir“

Schritt 5: Discourse für die Verwendung des SSL-Zertifikats konfigurieren

  1. Bearbeiten Sie die Discourse NGINX-Konfiguration, um das SSL-Zertifikat zu verwenden. Normalerweise befindet sich diese Datei unter /etc/nginx/conf.d/discourse.conf oder im Verzeichnis /var/discourse/containers/, wenn Sie Docker verwenden.

  2. Ändern oder fügen Sie die folgenden Zeilen zum Serverblock hinzu:

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

Ich versuche, einen CF-Origin-Server einzurichten, und ich stecke an dieser Stelle für den Speicherort der Datei discourse.conf fest, damit ich die notwendigen Änderungen vornehmen kann. Wo befindet sich diese normalerweise?
Die Anweisungen sind meiner Meinung nach nicht ganz richtig, da ich an diesen Orten nichts gefunden habe.

Vielen Dank im Voraus für jede Hilfe.