Ich habe mein Forum kürzlich von einem Server auf einen anderen migriert. Die aktuelle Version ist 2.6.0.beta2. Alles andere funktioniert einwandfrei, jedoch sind die zuvor hochgeladenen Bilder nicht sichtbar, und Benutzer können keine neuen Bilder hochladen. Außerdem können Benutzer ihre Profilbilder nicht aktualisieren.
Ich habe einige in diesem Forum erwähnte Lösungen ausprobiert, doch keine davon hat bei mir funktioniert. Ich brauche Hilfe!
Ich habe S3 auf diesem Server noch nie verwendet, auch nicht zum Testen.
Ich musste den Server wechseln, weil ich die Region ändern wollte. Der neue Server ist in jeder Hinsicht identisch mit dem alten, außer der Region. Ich habe Cloudfront CDN verwendet, habe aber nach der Migration den gesamten Cache invalidiert.
Die alten Bilder sind auf dem neuen Server verfügbar, da sie im Backup enthalten waren, aber das Problem besteht weiterhin.
Ja, auf beiden Servern war alles identisch. Ich habe die richtigen Schritte für die Migration befolgt und mich auch über Probleme informiert, die andere Benutzer während der Migration hatten.
Das Problem besteht nicht nur darin, dass ich alte Bilder nicht anzeigen kann; Benutzer können auch keine neuen Bilder hochladen. Ich vermute, es liegt an einem Bild-Handler (entschuldigen Sie die vage Vermutung).
Ok, um zusammenzufassen: Dein alter Server befand sich auf einer Standardinstallation. Du hast auf einem System neu installiert, das auf die gleiche Weise aufgebaut wurde, und das Backup wiederhergestellt.
Wenn du dir den Quellcode einer Seite ansiehst, wie sehen dann die Bild-URLs aus? Wie unterscheiden sie sich von den Uploads in /var/discourse/standalone/web-only/uploads/default?
Was passiert, wenn du versuchst, einen Bildlink direkt zu öffnen?
Handelte es sich bei einer dieser Installationen um eine Zwei-Container-Installation?
Ich kategorisiere dies von bug zu Support um, da es derzeit keine klaren Schritte zur Reproduktion gibt. Sobald wir die Grundursache identifizieren können, muss der Fall möglicherweise als Bug eingereicht werden, aber das ist im Moment nicht der Fall.
Es sieht so aus, als wären die Bilder für mein Forum im Verzeichnis /var/discourse/shared/standalone/uploads/default/optimized/1X hochgeladen worden. Es sind viele Bilder mit mehreren Auflösungen gespeichert, aber der Dateiname des Bildes im Forum und im Verzeichnis stimmen nicht überein.
Ich erhalte einen 404-Fehlercode für https://forumcdn.domain.com/uploads/default/optimized/1X/55cfd1bf40edcb3ac19d3e412a5ad63f93c0a854_2_225x250.png, aber wenn ich den Dateinamen des Bildes durch einen Dateinamen aus dem Verzeichnis ersetze, funktioniert es. Alle Bilddateien sind intakt und können direkt geöffnet und angesehen werden. Nur die Dateinamen im Forum sind anders.
Ist Miniaturansichten in Sicherungen einbeziehen auf der Quell-Instanz aktiviert?
Falls nein:
Generierte Miniaturansichten in Sicherungen einbeziehen. Wenn Sie dies deaktivieren, werden die Sicherungen kleiner, aber nach einer Wiederherstellung ist ein erneutes Erstellen aller Beiträge erforderlich.
Das bedeutet, dass Sie rake posts:rebake ausführen müssen.
Thumbnails in Backups einbeziehen war auf der Quellinstanz deaktiviert. Ich habe gerade im Discourse-Container rake posts:rebake ausgeführt und folgendes Ergebnis erhalten:
root@vps-app:/var/www/discourse# rake posts:rebake
Rebaking post markdown for 'default'
628 / 628 (100.0%)
628 posts done!
Um ganz sicherzugehen, habe ich den CDN-Cache invalidiert, kann aber immer noch keine Bilder anzeigen. Außerdem kann ich keine Bilder hochladen, sodass ich bezweifle, dass diese Lösung das Problem beheben kann.