2

我在 Heroku 上部署了一个 Ruby on Rails 应用程序,我意识到它们有一个只读文件系统 ( http://docs.heroku.com/constraints#read-only-filesystem )。例如,这意味着我无法在本地缓存图像。我正在使用一个名为“Rio”(Ruby 输入/输出)的 Ruby gem,它可以让我将文件保存到我的 /public/images 目录中。有没有允许这样做的好主机?具体来说,我在看 Rackspace Cloud。在我尝试部署其他地方之前提前知道真的很有帮助!

4

4 回答 4

1

我刚刚在 Google 上搜索“免费 ruby​​ 托管”,结果很多。我建议浏览其中的一些。

更新:我刚刚意识到 Heroku 名列榜首,但还有很多其他的。

我承认我不够勤奋,无法检查每个人是否允许您写入他们的文件系统。

我认为没有必要在“云”产品之后争先恐后。“云”解决了您(还没有)的问题。“云”使您的应用程序“无限”可扩展,如果您把它做得很大,您的网站会被 SlashDotted 或其他任何东西。

您正在寻找的是从便宜到免费的托管,这是由“做”虚拟托管(将很多人放在一个物理盒子上以降低每个人的成本)或为可怜的开源开发人员提供免费托管的提供商提供的。

于 2009-12-13T11:53:58.400 回答
1

如果您想使用 Heroku,一种解决方案是不要在它们的位置托管图像。但在亚马逊。
您的应用程序可以对图像执行必要的操作,然后将它们发送到 Amazon S3 平台。
然后,当您想要显示图像时,您可以在亚马逊上链接到它。

Paperclip允许您非常轻松地将图像发送到 S3。

于 2009-12-13T12:05:49.787 回答
0

您无需切换主机即可完成此操作。

使用 Heroku,您可以写入 RAILS_ROOT/tmp 目录。它们只是不能保证在请求之间停留,因为可以从不同的 dyno 提供不同的请求,并且 tmp 目录会定期清除。

因此,您可以将图像提取到该目录,进行任何您需要的处理,然后将它们上传到 S3(如果您还没有使用它,我建议您使用 Delayed::Job)。

于 2009-12-14T04:44:59.237 回答
0

我不确定heroku,但要回答您关于Rackspace cloudFiles的问题,cloudfiles没有公开块存储,而只是一个用于上传/检索/等......文件的API。

有人认为,至少在 Linux/Macosx 上,一些保险丝包装器会将您的云文件公开为文件系统:

https://github.com/redbo/cloudfuse/

还有 JungleDisk,它对云文件很严格,但它是一个完整的基础设施。

于 2011-03-29T05:54:40.103 回答