浅析opera的ua佯装识别功能
浅析opera的ua伪装识别功能
一些人认为opera是最符合网页标准的浏览器,同时很多网页没有遵循标准,导致opera访问会有问题,于是opera增加了浏览器伪装识别功能来冒充其他浏览器增强兼容性。
今天其实是想做个简单的实验,看看opera是不是仅仅通过改变ua来增强网页兼容性。没装opera就不必实验了,简单知道下,直接看末尾的结论就行。
实验版本为最新正式版opera 10.62 final 3500,替换我的修改文件。我修改opera.dll强制opera在“识别为opera”、“伪装为firefox”、“伪装为ie”、“识别为firefox”、“识别为ie”这五种情况下useragent全部统一为Mozilla/4.0 (compatible; MSIE 8.0),观察opera在ua一致、五种不同识别伪装设置的情况下(尤其是识别为opera和其他4种的对比)访问网站是否存在区别。
实验一步骤如下
1、备份原opera文件夹
2、下载压缩包opera.7z(2个链接都一样,随便选一个速度快的)
http://www.xun6.net/file/e15bdabd8/Opera.7z.html
http://good.gd/708047.htm
3、替换opera.exe、opera.dll到原opera文件夹
4、确定路由、hosts没有屏蔽任何站点,暂时移除opera的过滤脚本和urlfilter.ini(过滤了一些站点脚本就看不出接下来实验的区别),最好能恢复浏览器默认设置并启用js
5、打开opera设置为1(默认为1,如有更改,请重启)
6、(重启opera)打开http://user-agent-string.info/parse
7、检查网页框内的useragent是否为Mozilla/4.0 (compatible; MSIE 8.0)
8、打开任务管理器(看cpu占用率)
9、打开http://product.pconline.com.cn/并浏览,随意滚动并自己选择并点击任意一个产品
10、在所打开的产品新页面,依次点击参数、报价、图片。。。
11、观察cpu占用率并记录
实验二步骤如下:
1、打开opera设置为2(默认为1,如有更改,请重启)
2、(重启opera)打开http://user-agent-string.info/parse
3、检查网页框内的useragent是否为Mozilla/4.0 (compatible; MSIE 8.0)
4、打开任务管理器(看cpu占用率)
5、打开http://product.pconline.com.cn/并浏览,随意滚动并自己选择并点击任意一个产品
6、在所打开的产品新页面,依次点击参数、报价、图片。。。
7、观察cpu占用率并记录
实验三步骤如下:
1、打开opera设置为3(默认为1,如有更改,请重启)
2、其余同实验二2~7
实验结果很明确,几组设置的useragent同样都是Mozilla/4.0 (compatible; MSIE 8.0)
但实验一中当识别为opera(opera的缺省设置)时页面会卡死,其他实验识别或伪装为其他浏览器的页面正常,为什么呢?有人能解释下么?其实这答案也很简单,这里不多说了,关于ua的修改有兴趣也可以自己把opera.dll脱壳修改几个字符串
显然opera并不像某些人说的,冒充其他浏览器仅仅是通过更改ua使自己被网站识别。
opera的兼容性差也不是因为网站不能识别opera的ua
当opera通过识别为其他浏览器才得以访问一些站点时,仅仅是更改了下ua么?真的是这些站点的问题故意不让opera默认ua时正常访问么?opera有什么理由可以指责这些网站?opera有什么理由反对ie8的兼容性模式?在装无辜指责别人的同时,看看自己在干什么!
一些人认为opera是最符合网页标准的浏览器,同时很多网页没有遵循标准,导致opera访问会有问题,于是opera增加了浏览器伪装识别功能来冒充其他浏览器增强兼容性。
今天其实是想做个简单的实验,看看opera是不是仅仅通过改变ua来增强网页兼容性。没装opera就不必实验了,简单知道下,直接看末尾的结论就行。
实验版本为最新正式版opera 10.62 final 3500,替换我的修改文件。我修改opera.dll强制opera在“识别为opera”、“伪装为firefox”、“伪装为ie”、“识别为firefox”、“识别为ie”这五种情况下useragent全部统一为Mozilla/4.0 (compatible; MSIE 8.0),观察opera在ua一致、五种不同识别伪装设置的情况下(尤其是识别为opera和其他4种的对比)访问网站是否存在区别。
实验一步骤如下
1、备份原opera文件夹
2、下载压缩包opera.7z(2个链接都一样,随便选一个速度快的)
http://www.xun6.net/file/e15bdabd8/Opera.7z.html
http://good.gd/708047.htm
3、替换opera.exe、opera.dll到原opera文件夹
4、确定路由、hosts没有屏蔽任何站点,暂时移除opera的过滤脚本和urlfilter.ini(过滤了一些站点脚本就看不出接下来实验的区别),最好能恢复浏览器默认设置并启用js
5、打开opera设置为1(默认为1,如有更改,请重启)
6、(重启opera)打开http://user-agent-string.info/parse
7、检查网页框内的useragent是否为Mozilla/4.0 (compatible; MSIE 8.0)
8、打开任务管理器(看cpu占用率)
9、打开http://product.pconline.com.cn/并浏览,随意滚动并自己选择并点击任意一个产品
10、在所打开的产品新页面,依次点击参数、报价、图片。。。
11、观察cpu占用率并记录
实验二步骤如下:
1、打开opera设置为2(默认为1,如有更改,请重启)
2、(重启opera)打开http://user-agent-string.info/parse
3、检查网页框内的useragent是否为Mozilla/4.0 (compatible; MSIE 8.0)
4、打开任务管理器(看cpu占用率)
5、打开http://product.pconline.com.cn/并浏览,随意滚动并自己选择并点击任意一个产品
6、在所打开的产品新页面,依次点击参数、报价、图片。。。
7、观察cpu占用率并记录
实验三步骤如下:
1、打开opera设置为3(默认为1,如有更改,请重启)
2、其余同实验二2~7
实验结果很明确,几组设置的useragent同样都是Mozilla/4.0 (compatible; MSIE 8.0)
但实验一中当识别为opera(opera的缺省设置)时页面会卡死,其他实验识别或伪装为其他浏览器的页面正常,为什么呢?有人能解释下么?其实这答案也很简单,这里不多说了,关于ua的修改有兴趣也可以自己把opera.dll脱壳修改几个字符串
显然opera并不像某些人说的,冒充其他浏览器仅仅是通过更改ua使自己被网站识别。
opera的兼容性差也不是因为网站不能识别opera的ua
当opera通过识别为其他浏览器才得以访问一些站点时,仅仅是更改了下ua么?真的是这些站点的问题故意不让opera默认ua时正常访问么?opera有什么理由可以指责这些网站?opera有什么理由反对ie8的兼容性模式?在装无辜指责别人的同时,看看自己在干什么!