ruby-on-rails - 使用载波和雾将文件上传到 S3 时缺少要求

标签 ruby-on-rails amazon-s3 carrierwave fog

我收到此错误 Missing required arguments: aws_access_key_id, aws_secret_access_key。这看起来很奇怪,因为我已经在 initializers 文件夹中添加了 carrierwave.rb。当我使用 aws-sdk

时,访问/ key 完美运行
CarrierWave.configure do |config|
  config.fog_credentials = {
    provider: "AWS",
    aws_access_key_id: ENV["PUB-KEY"],
    aws_secret_access_key: ENV["SEC-KEY"]
  }
  config.fog_directory = ENV["mybucket"] 
end

最佳答案

这是我工作的样子:

CarrierWave.configure do |config|
  config.fog_credentials = {
    :provider               => 'AWS',
    :aws_access_key_id      => ENV['S3_KEY'],
    :aws_secret_access_key  => ENV['S3_SECRET'],
    :region                 => 'us-east-1'
  }
  config.fog_directory  = ENV['S3_BUCKET']
end

对于生产,我添加了 key S3_KEYS3_SECRETS3_BUCKET。对于开发和测试,我使用了 .gitignore 文件中的初始化程序:

# .gitignore
/config/initializers/app_environment_variables.rb

在初始化器中

# config/initializers/app_environment_variables.rb

ENV['S3_KEY'] = "********************"
ENV['S3_SECRET'] = "**************************..."
ENV['S3_BUCKET'] = "**********-dev"

关于ruby-on-rails - 使用载波和雾将文件上传到 S3 时缺少要求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14098275/

相关文章:

amazon-web-services - 设置 S3 存储桶策略

ruby-on-rails - 载波文件未从 S3 中删除

ruby-on-rails - 如何使用带有主干的超薄模板?

ruby-on-rails - 从 Rails 部分迁移到 Phoenix

javascript - 静态网站私有(private)内容 Amazon S3 和 Cloudfront - css、js 和图像不显示

amazon-s3 - 如何使用 sc.textFile ("s3n://bucket/*.csv") 将文件名映射到 RDD?

ruby-on-rails - 在 Rails Controller 中跳过多个过滤器

ruby-on-rails - 在 Docker 容器上进行远程调试时,无法使用 Visual Studio 代码中断任何断点

ruby-on-rails - 使用不带表格的Carrierwave保存文件

ruby-on-rails - 如何直接下载 pdf 文件而不是使用 carrierwave in rails 将其重定向到新页面