下面这个是能判断的,但是出现一个问题,就是ios版本的UC浏览器出现了一个极速模式,切换到了极速模式就判断不出来了。现在想单独判断UC浏览器下进行跳转。$userAgent = $_SERVER['HTTP_USER_AGENT'];
if(strpos($userAgent,"iPhone") || strpos($userAgent,"iPad") || strpos($userAgent,"iPod")){
header("location:http://www.baidu.com");
}else if(strpos($userAgent,"Android")){
header("location:http://www.google.com");
}
if(strpos($userAgent,"iPhone") || strpos($userAgent,"iPad") || strpos($userAgent,"iPod")){
header("location:http://www.baidu.com");
}else if(strpos($userAgent,"Android")){
header("location:http://www.google.com");
}
解决方案 »
- nginx+php5.3.20下,file_get_contents无法使用,求助
- php+apache+oracle配置问题
- iis7 php session 问题,急!急!急!!!
- 信息及时提示
- TUTOS+Apache+MySQL+PHP4or5安装,老是出错,不能正常访问,有没有人装过?
- mysql数据从4.1.20导入到3.23.54 乱码问题怎么解决啊?
- 请问一个通过连接传值的问题~~~~~~~~~
- 字节怎样转化为kb?
- 我想生成PDF文件,但出现这样的错误怎么办?
- 请教一个关于数组的问题!高手请进!
- Host 头信息(新人请教)
- 对file_get_contents()函数的疑惑
1.部分版本UC浏览器在第一次访问和第二次访问的IP有所不同,一般认为是浏览器设置的问题,UC一般默认开启软件设置中的中转或web压缩等情况.safari或其他手机自带浏览器则不会有这问题.可使用跳转(不是页面301),是JS的延迟跳转或wml中的延迟跳转.可以获取到不同的IP.你可以自己做试验.2.UC浏览器大部分都默认开启代理等设置. 你所说的极速模式,估计也类似代理.访问后的IP和手机的CMWAP或CMNET或WIFI形式链接下的IP不一致(可用自带浏览器作比较),大部分为广东或北京等地区IP,记得以前推断是UC中转服务器的IP.你可以做个数据表记录下这些IP,如果是通过这些IP访问的,基本上都可判断为UC浏览器3.通过UA来判断的精确度十分低,如果做开发的精确度要求较高,那么编写起来的逻辑也不能太简单.不止是UA.还可以通过HTTP_X_NETWORK_INFO,HTTP_X_UP_CALLING_LINE_ID,DEVICEID,HTTP_X_UP_SUBNO,HTTP_VIA等等希望对你有帮助.
if(strpos($userAgent,"iPhone") || strpos($userAgent,"iPad") || strpos($userAgent,"iPod") || strpos($userAgent,"iOS")){
header("location:http://www.baidu.com");
}else if(strpos($userAgent,"Android")){
header("location:http://www.google.com");
}