我在http://www.knuckledown.net设置了一个非常简单的html页面,如下所示:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
</head>
<body>
</body>
</html>
如果我尝试在Safari中加载此页面(在iPhone或Windows Safari桌面上),浏览器会显示加载微调器1分钟,直到超时为止。但只是每次加载页面。
这在IE,Chrome或Firefox中不会发生,并且脚本的名称或内容无关紧要。当我在本地计算机上托管文件时,它不会发生,只在我的Heroku托管上。如果它是相关的,它将由PlayFramework 1.2.4提供服务。我很难过 - 任何想法可能会发生在这里?
- 更新 -
heroku日志:
» 08:28:01.445 2013-05-29 22:28:01.378683+00:00 heroku router - - at=info method=GET path=/ host=www.knuckledown.net fwd="101.165.43.250" dyno=web.1 connect=13ms service=13ms status=200 bytes=115
» 08:28:01.868 2013-05-29 22:28:01.791882+00:00 heroku router - - at=info method=GET path=/js/jquery-1.7.2.min.js host=www.knuckledown.net fwd="101.165.43.250" dyno=web.1 connect=2ms service=45ms status=304 bytes=33732
答案 0 :(得分:1)
我发现它与我的响应标头有关。我为Play Framework实现了我自己的静态文件gzip,minify和缓存,我忘了这里:https://stackoverflow.com/a/10916904
我猜我使用的缓存标题对于除Safari之外的所有浏览器都是可以接受的。
它基于现有的Play框架缓存策略,所以我想我将禁用addEtag()方法,直到我能弄清楚如何修复它。