免责声明: 我不想讨论使用用户代理嗅探检测移动浏览器是好还是坏!
有一个广泛采用的RegEx(正则表达式)来检测移动浏览器的用户代理字符串,您可以下载from a site like this。
它包含一个组/ht(c(\-| |_|a|g|p|s|t)|tp)/i
,匹配以&#34开头的字符串; HTTP"。
因此,使用PHP Pear模块HTTP_Request2
使用类似HTP_Request2/2.1.1 (http://pear.php.net/package/http_request2) PHP/5.3.2-1ubuntu4.15
的字符串的机器人或服务将被检测为移动浏览器并重定向到网站移动网址。
问题:检测到哪种移动浏览器?该移动浏览器的用户代理字符串是什么样的? (奖励:需要更改为与HTTP_Request2
不匹配的移动浏览器?)
答案 0 :(得分:1)
由于某种原因,它似乎与http://www.voxtel.ru/UAProf/Voxtel_*.xml
匹配,而这就是我所能看到的以http
开头的所有内容。您可以在该站点的useragents.txt文件中看到它们。但是,在字符串后面还有许多其他内容包含http
或HTTP
。
您可以更改模式,因为我不会依赖于用户代理字符串中某处的http
来确定它是否是移动设备:
/ht(c(-| |_|a|g|p|s|t))/i