|
|
1
8
我的解决办法是根本不用操心速度测试。原因如下:
只要发送数据,它就会被缓存。除非你有JS/CSS的MBs(在这种情况下你需要重新设计网站,而不是速度测试),否则下载时间是可行的。速度测试应该预留给流视频之类的东西。 |
|
2
3
我唯一能想到的是一个重定向。
虽然这不是一个好的解决方案,但它只需要测量用户的速度一次,所以我认为这是可以原谅的。 |
|
|
3
1
不如使用javascript来计算加载页面所需的时间。然后使用javascript设置cookie。 http://phpjs.org/functions/microtime:472 使用jQuery
-页面需要先开始加载。需要加载JQuery(或者您可以重新编写上述代码以避免JQuery) |
|
4
1
这里的问题是您不能很好地解决这个问题,而且可能不是用纯PHP。你所采用的方法将使用户下载(512x512)=262144字节无用数据,这比大多数完整的页面要大得多。如果用户的连接速度很慢,他们可能会认为你的网站在速度测试结束前就关闭了(以10 kB/秒的速度,在屏幕上显示任何感兴趣的内容之前需要半分钟!)。 那个 你可以创建一个“加载”页面(就像你在GMail上看到的,当你从一个慢速连接访问它的时候)来预加载数据,链接到低带宽版本(或者如果加载时间太长,可能会重定向)。 或者,您可以在cookie中保存“开始”时间,并在页面加载完成时发出AJAX请求——这将为您提供页面的实际加载时间;如果这超过10秒,您可能希望切换到低带宽版本。 然而,这些都不能让你在第一次访问时就获得速度;而且在前面发送一个大的空页面也不是一个很好的第一印象。 |
|
|
5
1
$会话[“开始时间”]=时间(); 当页面完成加载(jQuery window load或smth:)时,您将再次随时间发送请求, u计算速度(jQueryRequestTime-$_SESSION[“start_time”]/PageSize)并设置另一个SESSION变量,他单击的下一个链接可以包含为此批准的自定义css/js
|
|
|
6
0
确定用户速度后,将javascript发送到浏览器以设置cookie,然后在速度低于所需速度时执行刷新或重定向。 |
|
|
7
0
我唯一能想到的是订阅一个提供IP到网络速度查找的服务。这些服务的工作原理是建立一个IP地址数据库,并对其注册的预期用途进行编目。它们并不总是准确的,但它们确实提供了一个起点。根据其中一个查找用户的IP地址并查看它返回的内容。 Ip2Location.com 提供这样一个数据库,从它们的DB13产品开始。 当然,如果您的目标是站点的移动版本,则用户代理嗅探是更好的解决方案。 |