我在某些iOS网页(包括移动版Safari,Chrome以及iOS应用中的Web浏览器)中遇到的问题超过了蜂窝数据与Wifi,
该问题与此前其他人发布的内容完全相同:
很遗憾没有答案发布到上述网址.
基本上,我一直在HTML中看到无关的随机垃圾字符,这些字符来自蜂窝数据,但同样的页面加载完全可以通过Wifi.这不是下载速度或连接问题,它似乎是蜂窝网络上一些无法解释的数据传输/解释故障.我已经能够在不同的位置和不同的设备上复制相同的问题.
可以通过数据加载Wifi但是因错误加载错误(由于上述无关的垃圾字符导致的JavaScript和CSS错误)的页面示例如下:
还有其他人遇到过同样的问题吗?任何见解都非常感谢.
内容类型不是问题,但这让我更多地思考如何在我的服务器,网络和最终客户端之间转换页面.
经过一些试验和错误后,我删除了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
网站在3G下的iPad/iPhone上展示JavaScript错误,但不在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配置设置或网络的专家,但上面至少现在解决了最初的问题.
| 归档时间: |
|
| 查看次数: |
4653 次 |
| 最近记录: |