我遇到某些iOS网页(在移动版Safari,Chrome以及app中的iOS网页中)与基于Wifi的网络问题,
此问题与之前由其他人发布的内容相同:
Mobile Safari Cellular Only Loading Error
很遗憾,尚未将答案发布到上述网址。
基本上,我一直在HTML中看到无关的随机垃圾字符,这些字符来自蜂窝数据,但同样的页面加载完全可以通过Wifi。这不是下载速度或连接问题,它似乎是蜂窝网络上一些无法解释的数据传输/解释故障。我已经能够在不同的位置和不同的设备上复制相同的问题。
通过Wifi加载错误但由于上述无关垃圾字符导致错误加载错误(由于上述无关垃圾字符导致的JavaScript和CSS错误)的页面示例如下:
还有其他人遇到过同样的问题吗?任何见解都非常感激。
答案 0 :(得分:7)
内容类型不是问题,但这让我更多地思考如何在我的服务器,网络和最终客户端之间转换页面。
经过一些试验和错误后,我删除了JQuery引用,之后页面正确加载到AT& T celullar数据上。这导致了另一个Google搜索,并最终根据以下网址找到问题的答案:
http://bugs.jquery.com/ticket/8917
...上面的JQuery错误报告引用了这两个URL的修复程序,其中一个实际上来自stackoverflow:
http://mobiforge.com/design-development/setting-http-headers-advise-transcoding-proxies
Web site exhibits JavaScript error on iPad / iPhone under 3G but not under WiFi
总之,问题在于AT& T蜂窝数据网络的最近变化,类似于上述URL中描述的变化。即AT& T以某种方式修改某些网页内容,然后再将其发送到iPhone和iPad。修复很简单,只需为不希望由AT& T网络更改/转换的页面设置Cache-Control“no-transform”标题。
我通过以下方式在PHP中为选择页面手动设置标题:
header(“Cache-Control:no-transform”);
....但我认为它可以全局设置在目录的.htaccess文件中,也可以设置在虚拟主机文件中的域或httpd.conf文件中的整个服务器中,例如:
标头设置Cache-Control“无变换”
我不知道设置“无变换”会如何影响性能,我远不是Apache配置设置或网络的专家,但上面至少现在解决了最初的问题。
答案 1 :(得分:0)
我遇到了同样的问题,并从另一篇文章中找到了解决方案 Remove wierd characters in xml output
您必须为AT& T的内容设置标题才能正常工作。在你的例子中,我认为它是text / html,因为它是html。
<head>
<title>Page name</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</head>
答案 2 :(得分:0)
我遇到了问题,发现我在DNS和FireWall上配置了IPv6,但没有在服务器上配置。
从DNS删除IPv6,一切正常。
您可以使用https://ipv6-test.com/validate.php对其进行测试。