需要帮助来理解 heroku 静态资产托管

Needs help to understanding heroku static assets hosting

我对 heroku 静态资产感到困惑。有一个听起来像 "restore data with static assets from production(not big data and static(images) about 200mb) to heroku staging" 的任务。我们在 heroku 之外的生产服务器。我们决定使用来自生产环境的真实数据和静态资产进行测试,这就是我们在 heroku 中创建免费应用程序的原因。

因此,当我们推送时,heroku 编译资产并将其移动到 S3 云的某个地方。 有没有办法愚蠢地将我们的静态资产上传到那个亚马逊云,当我们推送时默认情况下 heroku 上传?或者在这种情况下我不明白什么?

找到信息,我们可以在亚马逊中创建帐户并使用存储桶提供静态资产。但我很感兴趣使用默认的 heroku 资产主机而无需在亚马逊中创建帐户。

在 Rails 3.2 上用 Ruby 编写的项目,数据库:pgsql

我想,我正确地概述了我想要的东西

谢谢!

我不太确定你在问什么,但我很确定 Heroku 的默认操作是预编译静态资产并从那里的 Web 服务器提供它们。的确,Heroku 是对 AWS 的抽象,因此您的 Rails 网络服务器(例如 Thin、WEBrick、)位于某处云端。但这与使用 Amazon CloudFront 作为静态资产的 CDN 不同,后者是首选方法。

换句话说,从您的 Web 服务器(恰好在 AWS 上,但不应该是您的关注点 - 是的抽象)提供您的静态资产和从 CDN 提供您的静态资产之间存在差异在 AWS 上。

鉴于您的情况,我会设置一个 S3 存储桶和一个基于该存储桶的 Cloudfront 分布并相应地配置 AssetSync,以便 Heroku(或您手动)将您的资产推送到那里。