【发布时间】:2010-05-20 11:53:49
【问题描述】:
我试图将 Opera(在 Linux 下)伪装成另一个浏览器,在本例中是 iPad,用于某些测试目的。
现在我知道网站可以使用例如 PHP $useragent = $_SERVER['HTTP_USER_AGENT']; 和 JavaScript navigator.userAgent(或 navigator.platform)来检查哪个浏览器正在访问它。
在 Firefox 中,您可以使用插件轻松切换用户代理和其他相关信息,但在 Opera 中似乎有点难。
首先在opera.ini你可以这样做:
[User Agent]
Spoof UserAgent ID=1
但这仅限于预定义的 UserAgent 列表。没有自定义空间。
同样在opera.ini
[ISP]
Id=iPad
这会将 iPad 添加到 Opera 的用户代理中。这是一个开始,并且大部分时间都在网站上有效。
在opera.ini 中,您可以设置“用户 JavaScript 文件”以在加载网站之前加载自定义 JavaScript 文件:
[User Prefs]
User JavaScript File=/opera_dir/userjs/load.js
在load.js 你可以这样做:
navigator.userAgent = "Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10"
因为这个文件是在加载网站之前执行的,所以我可以修改 UserAgent,但这在网站通过 PHP 检查 UserAgent 时不起作用,但它适用于使用 JavaScript 检查的网站。
还有其他方法可以欺骗完整的自定义 UserAgent 吗?
【问题讨论】: