【发布时间】:2010-10-16 13:16:33
【问题描述】:
我对 S3 有点陌生。我想知道将公共/图像放在 S3 存储桶中是否是个好主意,如果是的话,有没有一种简单的方法来进行移动?
【问题讨论】:
-
你不想使用本地图像目录的原因是什么?
-
这个链接可能会有所帮助stackoverflow.com/questions/20911776/…
我对 S3 有点陌生。我想知道将公共/图像放在 S3 存储桶中是否是个好主意,如果是的话,有没有一种简单的方法来进行移动?
【问题讨论】:
如果您查看 config/environments/production.rb,您将看到以下代码行(已注释掉):
config.action_controller.asset_host = "http://assets.example.com"
如果您想在 S3 上保留您的资产(图像、样式表等),只需将正确的 url 放在那里。您可能对亚马逊感兴趣:
http://developer.amazonwebservices.com/connect/message.jspa?messageID=159916
这在 Rails API 中:
http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html
如果您要提供一堆静态资产或在昂贵的服务器上存储大容量的资产,那么资产托管服务是很好的选择。如果您的交易量较小或提供小资产,那么 S3 可能没有意义。顺便说一句,Paperclip 了解 S3,因此它是处理此类事情的天然附件。
【讨论】:
除非您在 public/ 中存储非常大或非常频繁访问的资产,否则没有理由将其放在外部资产主机上。这将不必要地增加您的应用程序的复杂性。
如果您确实拥有大型或经常访问的资产,则除了 S3 之外,您可能还希望使用 Amazon 的 CloudFront 内容分发网络。
Steve Ross 的回答非常适合 Rails 方面的操作方法。
【讨论】: