2014-06-27 2 views
0

J'utilise Rails 3.2 avec carrierwave et sitemap_generator.sitemap_generator et Carrierwave - Modification de la permission S3, mais seulement temporairement

Le fichier est correctement téléchargé, mais les autorisations ne sont pas publiques sur S3.

  • Comment puis-je définir l'autorisation pour ce fichier "sitemap.xml.gz" seulement?

Mon S3 Bucket est normalement ouvert uniquement pour les jetons:

CarrierWave.configure do |config| 

    config.storage = :fog 

    config.fog_credentials = { 
     :provider => 'AWS', # required 
     :aws_access_key_id => ENV['S3_KEY'], 
     :aws_secret_access_key => ENV['S3_SECRET'] 
    } 
    config.fog_directory = ENV['S3_BUCKET_NAME'] 

    # -> THIS is what sitemap_generator likes: 
    # -> config.permissions = "0666" 
    # here I set my permissions: 
    config.fog_public = false 
    config.fog_attributes = {'Cache-Control' => 'max-age=315576000'} 
end 

et mon petit bijou de sitemap_generator initalizer est:

# WaveAdapter: carrierwave 
SitemapGenerator::Sitemap.adapter = SitemapGenerator::WaveAdapter.new 

SitemapGenerator::Sitemap.sitemaps_host = "http://s3.amazonaws.com/#{ENV['S3_BUCKET_NAME']}/" 

SitemapGenerator::Sitemap.public_path = 'tmp/' 

SitemapGenerator::Sitemap.sitemaps_path = 'sitemaps/' 

Merci!

Répondre

0

Il semble que config.fog_public a la valeur false; vous devez le définir sur true pour activer la visualisation publique sur S3.

Questions connexes