我已经成功实现了一个 HTML5 缓存清单文件,以在本地存储我的 Web 应用程序的页面和资源,以便在用户离线时可以查看其中的一部分。
我遇到的问题是,如果用户从那里开始www.example.com/
然后从那里导航到www.example.com/products/
,页面上的链接www.example.com/products/
被破坏(缺少 URL 路径的一部分)并恢复到我的FALLBACK
离线页面,表明它们不是存储在 中CACHE
,尽管我明确告诉他们要存储。
这是我的 cache.manifest 文件的一部分:
CACHE MANIFEST
# Version 0.0.1
http://www.example.com/
http://www.example.com/products/
http://www.example.com/products/item-page/
FALLBACK:
/ http://www.example.com/offline.php
当我从主页导航到产品页面时,一切正常。当我然后单击链接导航到 时item-page
,浏览器会显示我的offline.php
页面,表明该页面http://www.example.com/products/item-page/
未存储在缓存中。
我错过了什么吗?或者为什么这不起作用?请帮忙,并提供代码/解释:)
编辑- 我有.htaccess
文件将我的index.php
页面重定向到directory/
(index.php
从 URL 中删除)。这似乎是导致缓存问题的原因,因为当我将 HTML 中的链接从 更改item-page/index.php
为时,item-page/
它可以工作。有任何想法吗??