我一直在與我的網站爭取一個良好的一週,現在試圖讓該網站可以脫機訪問,並且我終於承認失敗。任何人都可以看到我做錯了什麼?或者給我一些關於我應該測試什麼的想法?HTML5網站不會緩存到iPad
我的index.html文件的開頭爲:
<!DOCTYPE HTML>
<html manifest="cache.manifest">
<head>
我在說同一個文件夾中的文件.htaccess.txt:在同一文件夾
AddType text/cache-manifest .manifest
我cache.manifest文件說:
CACHE MANIFEST
# version 0.4
# If any of the files you list here isn't available, nothing gets cached.
# The cache limit for Mobile Safari is 10 MB. Only 5MB for Chrome.
CACHE:
/assets/primary.css
/assets/primary.js
/assets/jquery-1.7.1.min
/assets/content/home.html
/assets/images/background_banner.jpg
/assets/images/background_content.jpg
/assets/images/background_content_home.jpg
/assets/images/icon.png
/assets/images/leaves_banner.png
/assets/images/leaves_nav.png
/assets/images/logo.png
/assets/images/startup_landscape.jpg
/assets/images/startup_portrait.jpg
NETWORK:
*
我已經仔細檢查,我的緩存文件中的文件沒有輸入錯誤,文件大小我小於10 MB。緩存文件使用ANSI格式保存。
當我連接到互聯網時,該網站在我的iPad上正常加載。但是當我打開飛行模式時,我只是得到了橫向加載屏幕(在index.html文件中指出的startup_landscape.jpg文件)。
我試過將文件引用爲cache.appcache(儘管我不知道區別是什麼)。它似乎無法解決問題。
我被困在這裏。任何想法將不勝感激。
更新:10月25日
我試圖用一個HTML頁面,CSS文件和(空)創建一個簡單的網站.js文件。 index.html文件離線顯示,但.CSS未應用;所以我認爲緩存仍然無法正常工作。
我嘗試添加一個圖像到頁面,而不是緩存它。該網站仍然在離線模式下工作 - 它只是在圖像應該顯示的地方顯示一個空框。但如果我試圖將圖像名稱添加到緩存中,我甚至無法使index.html頁面以離線模式進入 - 我只是得到一個空白的白屏。
您確定所有資產都在緩存中嗎? – SheetJS
我拿出一些資產。我認爲它的工作方式是您可以在緩存中列出一些資產。我是否需要列出每個頁面上的所有內容? –
鑑於你說其餘來自網絡,是的,你必須枚舉所有的靜態資產 – SheetJS