2011-10-04 56 views
4

我试图以基本方式获取HTML5脱机存储。我阅读了关于DiveIntoHTML5的信息,这似乎是有道理的,但它似乎并没有为我工作。我想知道是否有人可以帮我调试。HTML 5脱机存储缓存清单不起作用

基本上我为应用程序index.htm设置了一个主页。所以我的应用程序在网络上的http://www.mydomain.com/online/index.htm。用户将访问此页面,他们会在这里每天都在做他们所有的工作。访问此URL将创建一堆缓存文件,以便他们随后可以访问http://www.mydomain.com/offline并查看应用程序脱机时的工作版本。的代码在网上主页

最上面几行是:

<!DOCTYPE html> 
<html manifest="cache.manifest"> 
<head> 
    ...etc 

我生成一个名为“cache.txt”纯文本文件,并在记事本中增加了以下内容吧:

CACHE MANIFEST 
http://www.mydomain.com/offline/scripts/jquery-1.6.3.min.js 
http://www.mydomain.com/offline/scripts/jquery-ui-1.8.16.custom.min.js 
http://www.mydomain.com/offline/scripts/modernizr.min.js 
http://www.mydomain.com/offline/scripts/json2.min.js 
http://www.mydomain.com/offline/scripts/jquery.deserialize.js 
http://www.mydomain.com/offline/scripts/jquery.cookie.js 
http://www.mydomain.com/offline/scripts/main.js 
http://www.mydomain.com/offline/css/main.css 
http://www.mydomain.com/offline/css/structure-details.css 
http://www.mydomain.com/offline/css/ui-lightness/jquery-ui-1.8.16.custom.css 
http://www.mydomain.com/img/header.gif 
http://www.mydomain.com/offline/img/bg.png 
http://www.mydomain.com/offline/img/header_riser.gif 
http://www.mydomain.com/offline/img/logo.png 
http://www.mydomain.com/offline/img/offline.png 
http://www.mydomain.com/offline/index.htm 

我已经将这个文件重命名为'cache.manifest',并将它上传到在线应用程序的根目录(与我的主页相同),以便在http://www.mydomain.com/online/cache.manifest处可以访问它。

托管公司已经在IIS中为所有扩展名为.manifest的文件添加了“text/cache-manifest”的内容类型。我认为这是工作,因为当我认为在Firefox的文件在http://www.mydomain.com/online/cache.manifest萤火告诉我的内容类型是:

Content-Type cache-manifest 

或者这应该返回“文本/缓存清单”?也许这是问题?

当我查看我的系统上的脱机存储文件夹(C:\用户\我\应用程序数据\本地\ Mozilla的\火狐\ Profiles文件\ b12u6xza.default没有什么在那里与此相关的域名在所有

。任何人都可以提出什么可能是想错了 - 因为我有点难倒

回答

0

尝试添加在httpd.conf ..this这些线可以帮助你

AddType text/cache-manifest .manifest 

<IfModule mod_expires.c> 
ExpiresActive On 
ExpiresByType text/cache-manifest "access plus 0 seconds" 
</IfModule> 
+0

这是对Apache或IIS?我的环境是Windows/IIS。 – Dan

+0

这是阿帕奇.. –

1

首先,规格有已更改,您现在应该使用.appcache作为明显的扩展名

其次,应该像你说的那样定义mime类型text/cache-manifest。我真的不涉及IIS,但似乎像有两种方式来添加这个MIME类型,无论是低谷IIS administration UI或通过web.config文件

另外,我建议你用谷歌Chrome浏览器测试这个,因为它的控制台显示所有清单解析数据和错误,包括何时清单MIME类型未被正确识别。

+0

规范说该文件可以有任何扩展名 – pinoyyid

0

你最好使用Chrome的控制台更好的测试(你看不到这些在Chrome的网络)

我的榜样!(请访问:www.mustrank.com/views/1.php)。

查看下面的chrome控制台输出,首先创建清单文件“website.appcache”,然后输入“1.html”和“main”。CSS”下载

[创建应用程序缓存与舱单 www.mustrank.com/views/website.appcache 1.PHP:1

应用程序缓存检查事件1.PHP:1

应用缓存下载事件1.PHP:(2 0)1个

应用程序高速缓存进展事件 www.mustrank.com/views/1.html 1.ph号码:1个

应用程序高速缓存进展事件(2 1) www.mustrank.com/css/main.css 1.PHP:1

应用程序高速缓存进展事件(2/2)1。 PHP:1级

应用程序缓存中的事件]