gpt4 book ai didi

ruby-on-rails-3 - Rails 3 - Amazon S3 Paperclip EU 问题

转载 作者:行者123 更新时间:2023-12-04 01:17:10 25 4
gpt4 key购买 nike

我正在使用:

Paperclip 2.3.16
Rails 3.0.9
Ruby 1.9.2
AWS - S3 0.6.2

我正在尝试使用回形针上传到基于欧盟(爱尔兰)的存储桶。我的模型中有以下内容:
has_attached_file :image, :styles => { :grid => '90x128#', :list => '140x200#', :original => '400x548'},
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:url => 'flyers/:id/:style/:basename.:extension',
:path => 'flyers/:id/:style/:basename.:extension',
:bucket => 'fsight'

在我的 environment.rb 中,我使用以下方法将写入设置为使用 AWS/s3 默认主机到相关的 EU 主机:
require "aws/s3"
AWS::S3::DEFAULT_HOST.replace "s3-eu-west-1.amazonaws.com"

这工作正常,它允许我上传图像,我可以使用 AWS 管理控制台验证图像上传/删除。

但是,尝试在我的网站上显示图像时遇到问题。图像没有加载,我已经确定了原因,因为生成的 URL 使用旧的默认主机。例如:

它应该是什么:
https://s3-eu-west-1.amazonaws.com/fsight/flyers/50/full/4759543368588654950.jpg

它实际上是什么: http://s3.amazonaws.com/fsight/flyers/50/full/4759543368588654950.jpg?1314801178

如您所见,它使用旧的默认主机。

我尝试放置:
Paperclip.interpolates(:s3_eu_url) do |att, style|
"#{att.s3_protocol}://s3-eu-west-1.amazonaws.com/#{att.bucket_name}/#{att.path(style)}"
end

但随后开始收到以下错误:
 wrong number of arguments (0 for 1)

Extracted source (around line #9):

<img src= <%= @event.image.url(:original) %>

我知道 Paperclip 在使用 EU Buckets 时有一些问题,但有人可以帮我解决这个问题吗?

最佳答案

您是否尝试过这种解决方法?

Paperclip et les European S3 buckets

甚至这个?

Paperclip, S3, and European Buckets

关于ruby-on-rails-3 - Rails 3 - Amazon S3 Paperclip EU 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7257745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com