0

Ich benutze Refile Gem zum Hochladen von Dateien und ich lade Dateien direkt in meine Amazon S3 Eimer. Die Dateien werden einfach gut zu folgenden URL hochgeladen:Schienen: Refil gem (attachment_image_tag druckt falsche URL)

https://s3.amazonaws.com/{bucket-name}/store/6309035935359dca1ef549170e7facac9ab3553ad53946cea0bcb8335475

ich Amazon Cloudfront bin mit dieser Vermögenswerte von s3 zu dienen, so dass die Cloudfront-URL, für den Vermögenswert oben angegebenen, ist so etwas wie folgt aus:

https://{distribution-name}.cloudfront.net/store/6309035935359dca1ef549170e7facac9ab3553ad53946cea0bcb8335475

Die beiden Urls, wenn direkt über Browser zugegriffen funktioniert gut. Ich verwende Refile gem folgende Hilfsfunktion dieses Asset in meiner app View-Datei anzuzeigen:

attachment_image_tag(@post, :profile_img, :fill, 350, 350)

Nun ist die Frage, diese Hilfsmethode druckt eine URL etwas wie folgt aus:

https://{distribution-name}.cloudfront.net/attachments/5845d0a97dc77a57b5b05742a1eb26d629d7cdaa/store/fill/350/350/6309035935359dca1ef549170e7facac9ab3553ad53946cea0bcb8335475/file

Da sich diese URL von der obigen Cloudfront-URL unterscheidet, wird das Bild nicht angezeigt. Wie erzwinge ich attachment_image_tag Funktion zum Drucken der richtigen Cloudfront-URL?

Antwort

0

Das Problem wurde behoben. Das Problem wurde durch einen anderen Mann auf Github wies darauf hin: https://github.com/refile/refile/issues/500#issuecomment-239784247

Es klingt wie Sie Ihre Cloudfront-Verteilung mit Ihre S3 Eimer als Ursprung gesetzt haben auf? Refil generiert jedoch keine URLs direkt in Dateien auf S3 (siehe README-Abschnitt 3. Rack-Anwendung). Sie sollten daher den Ursprung Ihrer Cloudfront-Distribution auf als URL Ihrer Anwendung festlegen. Auf diese Weise werden Dateien von Ihre Anwendung bei der ersten Anforderung gestreamt und von Cloudfront für zukünftige Anforderungen zwischengespeichert.

Verwandte Themen