javascript - 只有手机safari打不开页面,没有网络消息

标签 javascript php html css mobile-safari

起初,我没有 iPad,但一些客户报告说我的网站在 iPad 上出现了一些奇怪的问题。他们无法打开网站上的任何页面,最终会看到一个空白页面,并显示以下消息:“Safari 无法打开网页,因为它未连接到互联网”。

该消息有点奇怪,因为用户可以打开其他网站并且它们已连接到 Internet。有时您会在一瞬间看到网页,然后看到相同的消息。

昨天我的一个 friend (他不是程序员)带着他的带有 IOS7 的 iPad 3 来测试它,但我们无法弄清楚问题是什么,因为 Safari 不共享一些调试信息(至少你需要一个 mac 才能看到调试信息,我也没有 Mac)。

我在 Windows 机器上本地测试相同版本的网站,以确保它不是托管问题。在 iPad Safari 上出现同样的错误,因此提供的文件存在问题。

该网站是用 PHP 编程的。到目前为止我测试过的(并没有导致解决方案):

  • Safari:关闭 Cookie 和 Javascript
  • Safari:多次清空缓存
  • PHP:关闭发送 header 信息(禁用所有自定义缓存 header )
  • PHP:关闭浏览器的自定义 CSS
  • PHP:关闭 Sprite 嵌入(base64 数据嵌入)
  • PHP:关闭 HTML 缩小

问题依旧。如果没有 Safari 的任何调试信息,很难测试出了什么问题,有人可以看到导致此错误的 safari 浏览器中发生了什么吗?

网站: http://www.meezingeninrotterdam.nl

这个错误是否也发生在 MAC 版本的 Safari 上?

编辑: 向 Apple 报告错误: Apple Safari Error Bug Report

更新:

我想我找到了原因,另请参阅我的解决方案。如果你有一个 iDevice,你想测试它来确认吗?请参阅下面我的解决方案。

更新 2

查看答案,Apple 的回答。没有解决方案。如果您知道解决方案或解决方法,请告诉我。

最佳答案

我遇到了这个问题,Safari 会返回消息 Safari 无法打开页面,因为网络连接丢失。 我的客户端遇到了这个问题,但它对我来说工作正常。我最终能够在 iOS 10.2 上使用适用于 iPhone 7 的 iOS 模拟器重现该问题。

服务器正在使用 nginx 1.4.6 运行 Ubuntu 14.04(可信),站点正在使用来自 Let's Encrypt 的 SSL/TLS 证书.

我使用sudo tail -f/var/log/nginx/error.log监控错误日志

每次我在 iPhone 模拟器中刷新站点时,它都会在服务器上生成三个新的错误消息:

2016/12/22 17:48:39 [alert] 8071#0: worker process 12812 exited on signal 11 (core dumped)
2016/12/22 17:48:39 [alert] 8071#0: worker process 12848 exited on signal 11 (core dumped)
2016/12/22 17:48:40 [alert] 8071#0: worker process 12846 exited on signal 11 (core dumped)

经过一番挖掘后发现有 a bug with how nginx talks to OpenSSL .

Obvious workaround is to use the same session cache for all server blocks, e.g. to configure it on the http{} level.

我们在 /etc/nginx/sites-available/ 中每个虚拟主机的 server 范围内设置了以下 ssl_session_cache 选项:

ssl_session_cache shared:SSL:50m;

我从 /etc/nginx/sites-available/ 下的每个虚拟主机配置中删除了此配置行,并将其添加回 http 主范围内/etc/nginx/nginx.conf 配置文件。

sudo service nginx restart 重启 nginx 后,问题就解决了。 :)

关于javascript - 只有手机safari打不开页面,没有网络消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19340129/

相关文章:

javascript - 调整屏幕大小后重命名函数

php hex to dec with math functions 返回不同的结果

php - 为多个分组字段优化 PostgreSql 中的选择行数

javascript - 宽度缩放时透视变换不缩放?

javascript - 随内容扩展的背景图片

php - CodeIgniter 无法显示数据库中的数据

CSS 中 HTML 的 "<img align=top>"?

php - 拍卖网站如何运作?

javascript - 网格 loadMask 故障。设置 loadMask 目标配置

javascript - 在 ReactJS 迭代中插入 <br/>