如何将过期标头添加到Meteor静态资产

时间:2013-07-18 06:44:44

标签: javascript performance caching meteor

是否可以在流星中为静态资产添加过期标头?还是一种配置它们的方法?

谢谢!

1 个答案:

答案 0 :(得分:1)

为了在生产中使用,建议您始终在客户端和流星服务器之间使用nginx代理。

因此,从静态目录向文件添加缓存头的最佳方法是将它们添加到nginx配置中。

只需使用像David Weldon所做的那样的流星nginx配置:gist

然后添加以下位置:

location /static {
    proxy_pass http://localhost:3000/static;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $host;
    expires 365d;
    gzip on;
    gzip_min_length  1100;
    gzip_buffers  4 32k;
    gzip_types    text/plain application/x-javascript text/xml text/css;
    gzip_vary on;
}

作为奖励,我还添加了gzip,如果你不需要删除所有的gzip内容。

如果我们想让它更高级,我们也可以让nginx对从meteor中检索到的静态文件进行缓存。

这样meteor只会为每个静态文件接收一次静态请求,之后nginx会从它自己的缓存减少负载上为流星实例提供服务。

看起来像这样:gist

一些有助于在流星字体中设置nginx代理的资源: gentlenode.com meteorpedia Stackoverflow