Ich stoße auf einen Fehler. Um ehrlich zu sein, halte ich es für ein Docker-Problem, aber da ich Docker nur für Discourse verwende, versuche ich hier mein Glück und denke, andere könnten daran interessiert sein.
Vor kurzem war meine Discourse-Installation (https://forum.domainname.com/) auf demselben Server wie meine Website (https://www.domainname.com/) mit Nginx als Reverse-Proxy.
Ich habe die Discourse-Installation auf einen neuen Server mit der gleichen Konfiguration (Nginx als Reverse-Proxy) verschoben. Alles war in Ordnung, bis ich meine Website auf den neuen Server verschoben habe.
Einige Leute sagten mir, dass die Onebox-Funktion nicht mehr funktionierte. Als ich untersuchte, stellte ich fest, dass sie nur für meinen Domainnamen nicht funktionierte.
Also habe ich versucht, in den Docker-Container zu gelangen, und das Problem ist, dass ich mich von innerhalb des Docker-Containers nicht mit meiner Website verbinden kann. Alle anderen externen IPs funktionieren, aber ich kann mich nicht mit der externen IP meines Servers oder localhost verbinden.
Ehrlich gesagt, ich verstehe nicht warum, die Konfiguration ist genau die gleiche wie auf dem alten Server.
Enthält Ihre /etc/hosts-Datei Ihren Hostnamen mit 127.0.0.1 als Adresse?
Wenn ja, entfernen Sie die lokale Host-IP, da der Container keine Verbindung dorthin herstellen kann. (Sie können auch die externe Host-IP in die Hosts-Datei des Containers aufnehmen.)
Es ist kein DNS-Problem, da der Docker-Container die richtige IP-Adresse des Domainnamens findet. Wenn ich vom Discourse-Container aus curl verwende, schlägt die Anfrage mit einem Timeout fehl, da keine Verbindung zu Port 443 hergestellt werden kann.