使用Apache Web Server 2在iPad上测试cache.manifest

时间:2011-04-12 01:06:04

标签: ipad html5 manifest offline

我正在尝试为iPad构建一个离线Web应用程序,我正在尝试验证Apache Web Server 2正在正确提供cache.manifest,并且正在运行。我已经为.manifest扩展添加了一个'AddType'到Apache Web服务器的mime-types配置文件。

如果我查看访问日志,则返回对cache-manifest的第一个请求,其中包含200个HTTP响应代码,任何进一步的请求都将通过304提供,即“未修改”。我认为这意味着它正在发挥作用。资产(html,图像)返回两者的组合(200,然后如上所述304),因此表明它正在工作。

当我将它加载到iPad上时,我得到了该页面,但是当我离线并重新加载时无法加载,因为它没有连接到互联网。

我在Mac的Apache网络服务器上提供服务,因此无法用我的Mac可靠地测试它。关于出了什么问题或如何验证它的任何想法都有效?

1 个答案:

答案 0 :(得分:0)

一般来说,测试缓存清单有点痛苦,但有一些有用的技术。

首先,直接在Mac上使用Safari进行测试。如果要在离线模式下检查Apache,请关闭Apache。

在Safari中,打开“活动”监视器并查找列为“已取消”的所有资源 - 这些资源通常是清单中缺少的资源。

还可以使用Web Inspector检查清单文件的响应类型。

在大多数情况下,问题是您在应用程序中拥有未在清单中指定的资源;这会导致整个缓存操作失败。不幸的是,HTML5 API中没有方法列出哪些资源失败;这对开发人员来说是非常有帮助的。