Wenn ich manuell den Port 80 entferne oder das Protokoll von https auf http ändere, kann ich den Link manuell in einem neuen Browserfenster öffnen.
Irgendeine Idee, warum meine Discourse-Instanz :80 zu den Upload-Pfaden hinzufügt?
Ich habe die Website-Einstellungen nach “force https” durchsucht, aber es scheint, dass dies nicht aktiviert ist oder diese Einstellung nicht mehr existiert.
Ist etwas in meiner app.yml-Datei falsch? Ich habe folgende Vorlagen:
(Ich möchte Letsencrypt verwenden, da ich kein eigenes SSL-Zertifikat habe)
templates:
“templates/postgres.template.yml”
“templates/redis.template.yml”
“templates/web.template.yml”
“templates/web.ratelimited.template.yml”
Entkommentieren Sie diese beiden Zeilen, wenn Sie Lets Encrypt (https) hinzufügen möchten
“templates/web.ssl.template.yml”
“templates/web.letsencrypt.ssl.template.yml”
Sie können diese Anleitung zum Einrichten von HTTPS mit Let’s Encrypt hier aufrufen:
Mögliche Ursache: Versteckte „Port“-Einstellung
Manchmal bleibt eine versteckte port-Seiteneinstellung in der Datenbank nach einer Migration oder Wiederherstellung erhalten.
Dies kann dazu führen, dass Discourse eine falsche Portnummer (wie :80) an HTTPS-URLs anhängt.
So überprüfen und beheben Sie dies:
Betreten Sie Ihren Container:
./launcher enter app
Öffnen Sie die Rails-Konsole:
rails c
Überprüfen Sie den aktuellen Wert:
SiteSetting.port
Wenn 80 zurückgegeben wird, löschen Sie ihn:
SiteSetting.port = ""
Backen Sie dann alle Beiträge und Assets neu, um Links zu aktualisieren: