Hallo zusammen, ich hoffe, dies ist der richtige Abschnitt, um Hilfe zu diesem Thema zu erhalten.
Ich habe kürzlich den Reverse-Proxy geändert, den ich vor dem Discourse-Server habe.
Ich habe einen Server mit mehreren installierten Discourse-Instanzen und einen davor liegenden Reverse-Proxy, der Domains an den richtigen Webserver weiterleitet.
In beiden Fällen habe ich HA Proxy verwendet, der Unterschied liegt jedoch in der Plattform: Zuvor war es auf pfSense installiert, jetzt auf OPNsense.
Der Reverse-Proxy funktioniert einwandfrei, aber wenn ich mich einloggen möchte, erhalte ich einen CSRF-Fehler und kann nichts weiter unternehmen.
Am Discourse-Setup hat sich nichts geändert, und die HA-Proxy-Konfiguration wurde übernommen, also sollte alles in Ordnung sein.
Ich habe X-Forwarded-For und SSL aktiviert, aber Discourse scheint immer noch nicht dieselbe IP des Clients zu behalten, sondern sieht nur die des Proxys.
Ich weiß nicht, ob das das CSRF-Problem beheben wird (ich vermute, es hat mit HTTPS-Zertifikatsproblemen zu tun, bin mir aber nicht sicher), aber der weitergeleitete Header für den Boot-Prozess, den du erstellt hast, indem du dem Nginx im Container mitgeteilt hast, welche Adressen vertrauenswürdig sind. Du kannst hier nach X-Forwarded-For suchen und Beispiele finden, wie man das behebt.
Danke für deine Antwort.
Ich habe im Forum danach gesucht, konnte aber keine aktualisierten Informationen finden.
Es gibt einige alte Themen mit dem Hinweis auf Real_ip, die in Nginx innerhalb des Containers eingefügt werden sollen, aber ich habe keine Ahnung, wie das geht.
Nur zur Info: Es gibt viele Beispielkonfigurationen für Reverse-Proxy-Server vor der Discourse-App, einschließlich dieser. Fast alle behandeln “X-Forwarded-Proto”: