如何使存储在Github存储库中的JS文件部署到Heroku,通过Amazon CDN提供服务

时间:2016-08-04 18:45:12

标签: heroku github amazon-s3 amazon-cloudfront

我有一个自动部署到Heroku的github存储库。基本上我想要做的是使用Amazon Cloudfront CDN为存储库中的所有静态文件提供服务。我是否需要将我的github存储库拉到Amazon S3以及如何在我的存储库自动部署到Heroku时实现CDN服务文件..

目前所有的静态资产都是从Heroku提供的,因为目前还没有涉及CDN ..

我想通过CDN提供静态文件,同时仍保留Heroku的自动部署功能......

如何实现上述功能?

我是否需要将静态资产单独上传到S3?

1 个答案:

答案 0 :(得分:0)

您需要做的是创建CloudFront Origin,然后更新您网站的DNS,将CNAME记录指向您的CloudFront原点而不是Heroku应用程序。

所以,现在,让我们说你的Heroku应用程序被称为:my-app。

这意味着如果您在Heroku上查看您的应用,您将转到http://my-app.herokuapp.com

如果您随后创建CloudFront原点并将其指向my-app.herokuapp.com,您将获得一个新的CloudFront域。像myid.cloudfront.net

这样的东西

接下来你要做的就是更新你网站的DNS(www.my-app.com)并创建一个CNAME记录,以便

www.my-app.com - > my-id.cloudfront.net

这将使您对网站的所有请求首先通过CloudFront - 这样,CloudFront CDN将有机会正确缓存您的静态资产,并在第一次请求后加快速度。

然后,您可以配置CloudFront以设置这些资产的缓存时间。