2010-09-03 3 views
0

у меня есть мои настройки/код следующим образом (кстати, я после nettuts quick tip)Почему мой кэш приложений HTML5 не работает?

// index.html 
<!DOCTYPE HTML> 
<html lang="en-US" manifest="cache.manifest"> 

// cache.manifest 
CACHE MANIFEST 
# version 2 
index.html 
style.css 
scripts.css 

// httpd.conf (i tried having a local .htaccess too) 
AddType text/cache-manifest .manifest 
AddType text/cache-manifest manifest // i have this as its whats shown in the video. anyway even if i remove this it still fails. 

обновления:

журнала из живых заголовков HTTP @pastebin

http://localhost/cache.manifest 

GET /cache.manifest HTTP/1.1 
Host: localhost 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729; .NET4.0E) FirePHP/0.4 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-us,en;q=0.5 
Accept-Encoding: gzip,deflate 
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive: 115 
Connection: keep-alive 
Referer: http://localhost/ 
X-Moz: offline-resource 
Pragma: no-cache 
Cache-Control: no-cache 

HTTP/1.1 200 OK 
Date: Sat, 04 Sep 2010 03:14:16 GMT 
Server: Apache/2.2.16 (Win32) PHP/5.3.3 
Last-Modified: Sat, 04 Sep 2010 03:14:09 GMT 
Etag: "700000000238e-42-48f6670db41b9" 
Accept-Ranges: bytes 
Content-Length: 66 
Keep-Alive: timeout=5, max=94 
Connection: Keep-Alive 
Content-Type: text/cache-manifest 

делать я см. последнюю строку? Content-Type: text/cache-manifest или 6-го Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8.

Я думаю, что это работает сейчас, но если у меня есть jquery из google cdn, он не будет работать на втором обновлении, я думаю, он пытается использовать только локальные файлы?

+0

Вы проверили с помощью LiveHTTPHeaders (или аналогичных), что ваши правила AddType работают? – robertc

+0

Как использовать Live HTTP заголовки? Я вижу HTTP 200 в коде ответа. в панели панели firebug, я вижу GET localhost, style.css & jquery.min.js. но нет cache.manifest –

+0

Установите его здесь, в Firefox: http://livehttpheaders.mozdev.org/ Затем используйте его (Tools -> LiveHTTPHeaders), чтобы проверить, какой тип содержимого является манифестом, когда сервер отправляет его. – robertc

ответ

0

я думаю, что это работает, но если у меня есть JQuery от КДСА Google, он будет не работает на 2-ой обновлении, я думаю, что пытается использовать только локальные файлы?

Каждый внешний ресурс (будь то в вашем домене или другой) должен учитываться в манифесте. Если вы хотите использовать jQuery cdn google, вы должны ссылаться на него в файле манифеста. Что-то вроде этого:

https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js 

В конце моих манифестов, я обычно включают в себя следующую строку, чтобы учесть любые ресурсы, которые я не перечисленных, но могут быть использованы. Он используется только в том случае, если есть сетевое подключение: