从Cloudfront为Flask网站提供图像

时间:2016-11-15 17:18:15

标签: python flask jinja2 cdn amazon-cloudfront

我有一个包含大量图片的Flask网站,因此我想使用CDN从不同的地方为他们提供服务。

我想使用最简单的解决方案,避免使用Flask CDN库或任何需要在app.py文件中添加加代码的内容,因为我不想要任何复杂的功能。< / p>

所以我的想法是,我会将我的图片上传到CloudFront,并在这样的网址上提供:

http://images.mydomain.com/filename.jpg

不要只使用我的Jinja模板中的正确链接:

<img src="http://images.mydomain.com/{{filename}}.jpg" alt="Image">

取代当前版本:

<img src="/static/images/{{filename}}.jpg"  alt="Image">

所以我的问题是这是正确的解决方案吗?它会造成任何负面影响吗?我的目标是尽可能保持一切简单,并保持最佳性能。我认为这是一个合法的解决方案,但这是我第一次使用CDN,所以如果有经验的人可以告诉我这个解决方案是否有任何问题我会很感激。

1 个答案:

答案 0 :(得分:0)

从CDN提供静态媒体是所有Web应用程序框架(如Flask和Django)的预期方法。通过这些应用程序提供静态媒体的速度要慢得多,并且会消耗更多的服务器资源。

这是Serve static files from a CDN rather than Flask in production

的副本