【发布时间】:2015-07-20 23:52:48
【问题描述】:
我的 Safari 副本拒绝打开我的网站,example.com。
每次我尝试访问http://example.com Safari(不是服务器!)都会将我重定向到https://example.com,并立即告诉我:
“Safari 无法打开页面“https://example.com”,因为 Safari 无法连接到服务器“example.com”。
- 该网站没有启用 HTTPS 或安装证书(尽管曾经这样做过)
- 该网站在 Chrome 中完美运行
- 该网站在 iOS Safari 中完美运行
- 该网站在不同计算机上的 Safari 中完美运行
似乎我的 Safari 副本“缓存”了 HTTPS 重定向或其他内容。
这是我尝试过的:
- 清除 Safari 缓存
- 禁用 Safari 缓存
- 清除 OS X DNS 缓存
- 系统重新启动
- 故意访问 HTTPS 版本
- 故意访问 HTTP 版本
- 附加随机查询字符串
但每次我都会立即收到消息。它出现在几毫秒内,让我假设它缓存在某个地方。
尝试使用访客帐户时,问题就消失了。但是,我在家和工作中的 Mac 都受到了影响,大概是因为 iCloud 正在同步某种 Safari 缓存文件。
This thread here 似乎暗示它与 HSTS 有关(正如 @rluta 所认为的那样),或者与设置的 Strict-Transport-Security 标头有关。我已经确认,访问网页时没有设置Strict-Transport-Security 标头。
如果可能的话,我真的不想“重置”我的 Safari 副本,因为我每天都在使用它。有什么想法吗?
【问题讨论】:
-
您是否尝试在问题计算机上创建新的 Mac OS X 用户帐户? Safari 在新帐户中是否正常工作?
-
@null 在新帐户上,网站加载没有问题。但是我现在注意到,在我家里的 iMac 上——它通过 iCloud 同步 Safari——它不起作用。所以看起来导致损坏的任何东西都包含在同步数据中。
-
似乎 iCloud syncs HSTS entries。所以也许在删除
HSTS.plist然后restart your computer之前关闭iCloud?
标签: macos caching https safari dns