2012-06-22 3 views
2

Я новичок в HTML 5 Хранилище приложений. Я пытаюсь попробовать образец автономного хранилища. У меня мало вопросов. Пожалуйста помоги.Кэш приложений в HTML5 не работает:

Файлы, используемые:

index.html

<html manifest="demo.manifest"> 
<head> 
<link rel="stylesheet" href="style.css" type="text/css" /> 
<script type="text/javascript" src="script.js" ></script> 
</head> 
<body> 
<h1>some text</h1> 
<p>Some text.</p> 
</body> 
</html> 

style.css

body{background-color: #333;} 
h1{color: #c94054;} 
p{color: #fff;} 

demo.manifest

CACHE MANIFEST 

CACHE: 
style.css 
index.html 

Я знаю, что тип demo.manifest MIME должен быть установлен в text/cache-manifest, и это должно быть сделано в файле * .htaccess. Я использую сервер apache tomcat 6.0 в среде Windows. Я не могу найти этот файл внутри сервера. Таким образом, я создал один (test.htaccess) в корневой директории моего проекта (который разрабатывается на eclipse helios), который находится в d:/eclipse-workspace/ProjectName /, и мой файл выглядит следующим образом:

test.htaccess

AddType text/cache-manifest .manifest 

Но кэш приложение не работает, когда я остановить сервер и попытался получить к нему доступ, как показано ниже:

http://localhost:8081/ProjectName/index.html 

Пожалуйста, дайте мне знать, что я сделал неправильно с этим. .. Также есть способ отладки Применение кэша

ответ

6

На сервере Tomcat типы MIME конфигурируются с помощью файла web.xml по умолчанию, conf/web.xml

К концу этого файла вы найдете кучу определенных типов MIME. Вы должны добавить

<mime-mapping> 
    <extension>manifest</extension> 
    <mime-type>text/cache-manifest</mime-type> 
</mime-mapping> 

как эквивалент того, что вы вложили .htaccess, используемый Apache и другими серверами.

+0

Привет .. Спасибо за информацию. Я сделал это, и все еще получаю ошибку ниже в журнале ошибок Google Chrome (открыл журнал браузера с помощью ctrl + shift + J). Ошибка «Ошибка кэша приложения». Недопустимый тип манифеста манифеста() « – CARTIC

+0

@ user1475068 прежде всего, проверьте Инструменты разработчика Chrome - вкладка «Сеть», что точно передается (например, тип MIME). Также проверьте http://stackoverflow.com/questions/7375514/chrome-reporting-html5-cache-manifest-mime-type-incorrectly, поскольку я думаю, что это связанная с этим проблема. Может быть, глупый вопрос, вы перезапустили Tomcat после добавления MIME-типа в свой центральный web.xml? – fvu

+0

Привет ... Я зарегистрировался на вкладке «Сеть», и я могу видеть файлы .css, .html и .js, но не мой файл .manifest. Я также перезапустил сервер, прежде чем тестировать его.Кроме того, в сообщении, которое вы сказали, сообщение об ошибке показывает «текст/обычное» внутри скобок, но в моем его просто пустое. Каким будет правильное расположение файла .htaccess в окнах. Должен ли я ссылаться на этот файл в другом месте? Пожалуйста, помогите .... – CARTIC

0

У меня была та же проблема. Все выглядело правильно: пути были правильными, манифест был в моем проекте, и я мог вручную перейти к нему, был задан тип MIME. Он просто не пытался получить этот файл из моего HTML. Проблема я не включили нужную строку в начале манифеста:

CACHE MANIFEST 

Не имеющее это причиняло браузер просто молча игнорировать манифест тега.

Смежные вопросы