使用HTML5 App Cache为Firefox缓存OGG文件,为IE缓存MP3的最佳方法是什么?

时间:2011-11-30 19:43:49

标签: html5 html5-audio html5-appcache

如果您在一个浏览器中使用了一组资产而在另一个浏览器中没有使用资产集,那么有人建议如何最好地使用App Cache吗?

示例:适用于Firefox的OGG音频和适用于IE的MP3。我可以缓存这两种类型的文件,但音频很大,存储的文件数量是浏览器可以使用的两倍。

我最好的想法是创建几个不同的清单。例如,一个用于加载所有浏览器共有的资产,然后用于MP3的单独清单,并在我可以在客户端确定他们正在使用IE时,在iframe中加载调用此清单的页面。但是,如果我发现他们正在使用Firefox,我可以在iframe中加载另一个页面(带有附加的OGG清单)。

这会有效还是有更优雅的解决方案?

1 个答案:

答案 0 :(得分:0)

现在我只是使用像这样的nginx重写规则

location / {
    if ($http_user_agent ~ Firefox) {
        rewrite ^.*\/(app.manifest)$ $scheme://$http_host/moz.manifest redirect;
    }
}

大多数Web服务器都允许您定义类似的重写规则。这是一个很好的选择,因为它速度快,不需要进一步安装软件。

This guy正在检查哪个浏览器使用PHP,但是您可以使用任何框架来执行此操作,最好是像Node或者简单的ruby Rack那样。