Hallo Ich baue derzeit eine Website mit Rails und Heroku sowie GoDaddy für einen benutzerdefinierten Domänennamen.Carrierwave mit S3 und Cloudfront zeigt keine Bilder an
Ich benutze Carrierwave mit Nebel, Amazon S3 und habe eine Cloudfront mit meinem Heroku-Domain-Namen als Origin Domain eingerichtet. Derzeit lädt die Seite Bilder sehr langsam, weshalb ich eine Cloudfront einrichte, aber die config-Datei von carrierwave scheint die URLs nicht zu den Cloudfront-Gegenstücken zu ändern. Hier ist meine Carrierwave-Konfigurationsdatei. Ich möchte, dass Benutzer Bilder über Carrierwave hochladen und diese dann mit meiner Cloudfront zurückgeben können.
CarrierWave.configure do |config|
config.fog_provider = 'fog/aws' # required
config.fog_credentials = {
provider: 'AWS', # required
aws_access_key_id: 'acesskey', # required
aws_secret_access_key: 'secretkey', # required
region: 'us-east-1', # optional, defaults to 'us-east-1'
}
config.fog_directory = 'directory' # required
# config.fog_public = false # optional, defaults to true
config.asset_host = 'randomjunk.cloudfront.net'
config.fog_public = false
config.fog_attributes = { 'Cache-Control' => "max-age=#{365.day.to_i}" } # optional, defaults to {}
end
Es funktioniert so lange, wie config.fog_public falsch ist, aber wenn ich es ändern config.fog_public = true die Urls sind jetzt korrekt, aber die Bilder werden nicht gefunden. Hat das etwas mit meinen Konfigurationseinstellungen zu tun oder habe ich meine Cloudfront falsch mit Heroku eingerichtet?