AWS Elastic Beanstalk / S3 / CloudFront缓存控制标头

时间:2016-03-10 17:06:55

标签: amazon-web-services amazon-s3 flask elastic-beanstalk amazon-cloudfront

我使用AWS Elastic Beanstalk部署了Flask应用程序。我使用S3进行存储,将CloudFront用作cdn。如何将Cache-Control标头添加到Elastic Beanstalk应用程序提供的静态文件中?

1 个答案:

答案 0 :(得分:0)

Elastic Beanstack在静态文件方面采用了非常简单的设置。基本上假设您将从服务器本身为它们提供服务。

与您一样,大多数人使用S3和CloudFront,但不幸的是,这需要您手动部署这些静态文件(即没有eb)。

如果您的静态文件没有太大变化,您可以手动将它们上传到您的s3源。但是编写脚本可能更好。

我个人使用Gulp来管理我的所有静态文件。 Gulp有两个方便的软件包可以部署到S3,并设置Cache控件:

与Boto做同样的事情并不难,但Gulp也处理我的CSS / JS文件,包括创建一个缓存友好的部署名称(例如app-1234.css)。我对Elastic Beanstalk的部署是:

gulp deploy  # Where Gulp processes CSS/JS/Images and uploads to S3/CF
eb deploy    # To deploy my python code

希望这有帮助。