首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Express.js的亚马逊S3的流媒体资产(JS/CSS/图像)

问使用Express.js的亚马逊S3的流媒体资产(JS/CSS/图像)
EN

Stack Overflow用户
提问于 2013-02-07 11:32:26
回答 2查看 1.7K关注 0票数 4

我最近在AppFog上部署了我的Node.js博客。我计划在亚马逊S3上使用一个存储桶来流式传输我的资源(javascript/样式表/图片)。

如何确保Express.js将静态资产放到我的亚马逊S3存储桶中,而不是常规的/public

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-07 11:47:01

我不会通过节点服务器流式传输资产-这是对资源的浪费,而且您将不得不处理HTTP缓存头。

相反,您的超文本标记语言应该直接链接到S3存储桶。而不是:

代码语言:javascript
复制
<script src="/js/script.js"></script>

执行以下操作:

代码语言:javascript
复制
<script src="//s3.amazonaws.com/bucket/js/script.js"></script>

鉴于您正在迁移,只需设置一个永久重定向即可。

代码语言:javascript
复制
app.get(/^\/(js|css|images)\/.*/, function(req, res) {
    res.redirect(301, '//s3.amazonaws.com/bucket' + req.path);
});

这会将js、css和images文件夹中的所有请求重定向到一个S3存储桶中。例如,/js/script.js将重定向到//s3.amazonaws.com/bucket/js/script.js。

这将有助于简化转换,但您仍然应该将站点的引用迁移到HTTP,以消除由重定向引起的不必要的S3往返。

票数 8
EN

Stack Overflow用户

发布于 2013-02-07 11:36:20

如果确实需要这样做,请使用请求库中的管道():https://github.com/mikeal/request#streaming

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14743053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档