如何让应用程序缓存清单在Safari 7.0.3上运行?

Mar*_*ark 6 html5 caching html5-appcache

我已经迷上了两天了,这让我发疯了.希望有人可以对这件事情发表一些看法.

我正在跑步: 小牛队(MAC),Safari Versie 7.0.3(9537.75.14)

index.php看起来像:

<!DOCTYPE HTML>
<html manifest="manifest.php">
<head>
    <title></title>

    <meta charset="UTF-8" /> 
    <link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
    <p>The time is <time><?php echo time(); ?></time></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

style.css看起来像:

html, body
{
    margin      : 0;
    padding     : 0;
    font-size   : 100%;
    font-family : "Helvetica Neue", Helvetica, Verdana, Arial, sans-serif;
}

p
{
    text-align : center;
}

p time
{
    color : red;
}
Run Code Online (Sandbox Code Playgroud)

manifest.php看起来像:

<?php header('Content- Type: text/cache-manifest'); ?>
CACHE MANIFEST
CACHE:
style.css
Run Code Online (Sandbox Code Playgroud)

如果我跟踪时间输出,则表明它有效,因为除非清单发生变化,否则时间不会更新.我在Chrome中加载了网址并且它可以正常工作,我在Mobile Safari上加载了网址并且它可以运行!我在小牛队的Safari中加载了URL,发生了一些古怪的事情.

时间没有按预期更新.当我查看控制台时,我发现它有一个程序缓存.但是,当我从互联网断开连接重新加载页面时,一切似乎都很好.它确实重新加载页面而没有给出我离线的错误,但是没有加载任何像CSS这样的外部文件,并给出以下错误,包括清单本身:

无法加载资源:网络连接处于脱机状态.

同样,Chrome和Mobile Safari可以使用相同的网址正常运行.我看不出我错过了什么.

Ape*_*eli 0

尝试将清单文件扩展名更改为 .appcache:

<html manifest="manifest.appcache">
Run Code Online (Sandbox Code Playgroud)