Verstecke Amazon-URLs bei Verwendung von S3, Rails und Paperclip

8

Ich habe gerade Datei-Uploads auf Amazon S3 mit Rails 3 und Paperclip eingerichtet. All das funktioniert erstaunlich gut und läuft. Es gibt nur ein kleines Detail, das ich gerne aussortieren würde. Im Moment sind die URLs die Amazon-URLs (dh Ссылка ) und ich möchte, dass sie mit meiner Domain beginnen.

Ich habe bereits die erforderlichen CNAME-Datensätze zu meinem DNS hinzugefügt und sie funktionieren einwandfrei, sodass ich über eine Subdomain meiner Domain auf die Dateien zugreifen kann. Das Problem ist nur, dass die von Paperclip generierten URLs mit der Amazon Domain beginnen. Gibt es eine einfache Möglichkeit, die Büroklammer-Konfiguration zu ändern, um das zu umgehen?

Prost

    
Addsy 25.09.2010, 22:59
quelle

2 Antworten

5

Sehen Sie sich Paperclip::Storage::S3 an.

>     
yfeldblum 25.09.2010, 23:57
quelle
2

Hier finden Sie alles, was Sie brauchen, um die Amazon-URLs Ihrer S3-Assets zu verbergen:

  1. Benennen Sie Ihren S3-Bucket nach dem Domain-Alias, den Sie verwenden möchten. Wenn Sie also auf Ihre Assets unter http://assets.mysite.com/path/to/image.png zugreifen möchten, sollten Sie Ihren S3-Bucket benennen: assets.mysite.com

  2. Fügen Sie Ihren DNS-Datensätzen einen CNAME hinzu, so dass assets.mysite.com ein Alias ​​von assets.mysite.com.s3.amazonaws.com ist (Geben Sie nicht ".mysite.com" in das Feld "name" des DNS-Datensatzes ein.)

  3. Richten Sie den Büroklammer so ein, dass Ihr neuer Domain-Alias ​​im Standardpfad von S3 verwendet wird:

    %Vor%

Ich habe normalerweise verschiedene Buckets für Entwicklung, Staging und Produktion, und ich verwende nur den Domain-Alias ​​für den Prod-Bucket. Um sicherzustellen, dass es in jeder Umgebung funktioniert, gefällt mir meine :url Einstellung oft:

%Vor%     
Ryan Epp 06.01.2016 22:21
quelle