S3 Uploads – Verwendung von CDN für PDFs?

Hallo zusammen,

ich habe gerade S3-Uploads auf meiner Discourse-Instanz aktiviert, die mit einem Cloudfront CDN konfiguriert ist. Ich habe gerade getestet, ein Bild und eine PDF-Datei als Anhänge in Beiträge hochzuladen, und sie werden korrekt in den S3-Bucket hochgeladen. Wenn ich jedoch die Seite inspiziere, auf der beide angezeigt werden, sehe ich, dass das PDF nicht den CDN-Link verwendet, das Bild aber schon.

Für das Bild verweist der img src auf das CDN, das der Browser zum Laden der Miniaturansicht verwendet.

Für die PDF-Datei verweist der Link src auf eine relative URL (/uploads/short-url/xxxxxxxxxxxxx.pdf), die anscheinend zur Datei in meinem tatsächlichen S3-Bucket (nicht zum CDN) weiterleitet.

Ist das zu erwarten? Dies ist das erste Mal, dass ich ein CDN verwende. Vielleicht werden größere Dateien normalerweise nicht darüber bereitgestellt? Ich möchte nur sicherstellen, dass alle meine Einstellungen korrekt sind und funktionieren, bevor ich alle älteren Beiträge zu S3 migriere.

Vielen Dank!

4 „Gefällt mir“

Interessante Beobachtung, etwas, das mir vorher nicht aufgefallen ist.

Ich habe ein paar Tests durchgeführt.

Einige vorhandene PDF-Uploads verlinken direkt zum CDN:

Einige vorhandene PDF-Uploads verwenden nicht das CDN:

Was ist der Unterschied? :thinking:

Ich weiß es nicht :man_shrugging: Ich müsste mehr Beispiele prüfen.

Ich habe einen schnellen Test gemacht, indem ich mir selbst und einem neuen Beitrag eine DM geschickt habe. Es wird /short-url/ angezeigt, wie in Ihren Details beschrieben:

Wenn man auf den Link klickt, wird er direkt aus dem S3-Bucket geladen, wieder wie in Ihrer Beschreibung:

Ich bin mir nicht ganz sicher, warum einige unserer Beiträge das CDN verwenden und andere nicht, aber ich kann einige der Dinge, die Sie sehen, reproduzieren.

1 „Gefällt mir“

Ich glaube, Sie müssen die Beiträge neu backen. Diejenigen, die hochgeladen wurden, bevor Sie das CDN hinzugefügt haben, werden nicht automatisch aktualisiert. Alle Beiträge, die einem Muster entsprechen, neu backen (es könnte einfacher sein, sie einfach alle neu zu backen)

1 „Gefällt mir“

Danke @pfaffman

Ich habe alle Beiträge neu gebacken und keine Änderung festgestellt. Nach dem erneuten Backen habe ich einige Testbeiträge erneut erstellt. Um zusammenzufassen, was ich sehe (und was @Richie zu sehen scheint):

  • Ein Bild in einem Beitrag verknüpft korrekt mit dem CDN für das inline angezeigte Bild im Beitrag.
  • Für das Bild verknüpft jedoch der „Download“-Link (unten rechts, wenn das Bild in voller Größe angezeigt wird) mit einer Kurz-URL, die zu meinem S3-Bucket weiterleitet (nicht zum CDN).
  • Für einen PDF-Upload verknüpft der Link mit einer Kurz-URL, die zu meinem S3-Bucket weiterleitet (nicht zum CDN).

Es scheint, dass jedes Mal, wenn eine Kurz-URL verwendet wird, das CDN nicht in der Weiterleitung verwendet wird.

Für mein Discourse-Setup verwende ich S3 sowohl für Uploads als auch für Backups. Ich habe noch nicht alle meine bestehenden Uploads nach S3 verschoben (werde ich tun, sobald ich dieses Problem gelöst habe). Ich habe auch keine sicheren Uploads aktiviert.

Danke!

4 „Gefällt mir“

Vielen Dank für die Meldung. Wir werden uns das nächste Woche ansehen und alle fehlenden CDN-Umgehungen beheben, die noch vorhanden sind. Wir sollten, wo immer möglich, das CDN erreichen, mit der Einschränkung, dass wir dies nicht einfach tun können, wenn Sie sichere Uploads aktiviert haben.

5 „Gefällt mir“

Das ist mir auch bei anderen Datei-Uploads aufgefallen:

1 „Gefällt mir“