【问题标题】:carrierwave image upload to s3 "hostname does not match certificate error"载波图像上传到 s3 “主机名与证书不匹配错误”
【发布时间】:2013-10-21 04:47:15
【问题描述】:

我首先按照这个 railscast 的指示让载波工作:

http://railscasts.com/episodes/253-carrierwave-file-uploads

然后我按照这里的说明连接了 s3:

http://railgaadi.wordpress.com/2012/06/03/saving-files-in-amazon-s3-using-carrierwave-and-fog-gem/

我的 image_uploader.rb 文件:

class ImageUploader < CarrierWave::Uploader::Base
  include CarrierWave::RMagick
  storage :fog

  def store_dir
    "development/uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

  version :iphone do
    process :resize_to_limit => [320, 160]
  end
end

还有我的 fog.rb 文件:

CarrierWave.configure do |config|
  config.fog_credentials = {
    :provider               => 'AWS',       # required
    :aws_access_key_id      => 'xxx',       # required
    :aws_secret_access_key  => 'xxx',       # required
  }
  config.fog_directory  = 'goodlife.carrierwave'                     # required

end

这是我得到的错误:

主机名“goodlife.carrierwave.s3-us-west-1.amazonaws.com”与服务器证书不匹配

有什么建议吗?谢谢!

【问题讨论】:

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


    【解决方案1】:

    向 config.fog_credentials 添加 :path_style => true 对我有用。我从一个答案中学到了 Amazon S3 - hostname does not match the server certificate (OpenSSL::SSL::SSLError) + rails.

    【讨论】:

      【解决方案2】:

      goodlife.carrierwave 是您存储桶的名称吗?

      编辑:

      从您的存储桶名称中删除句点。那应该解决它。

      来自亚马逊:

      如果您想使用虚拟托管样式访问存储桶 请求,例如,http://mybucket.s3.amazonaws.com 通过 SSL, 存储桶名称不能包含句点 (.)。

      【讨论】:

      • 是的,就是这个名字
      猜你喜欢
      • 2015-04-30
      • 2016-12-27
      • 1970-01-01
      • 1970-01-01
      • 2017-07-23
      • 1970-01-01
      • 2017-09-14
      • 2011-06-28
      • 1970-01-01
      相关资源
      最近更新 更多