我需要告诉nginx处理来自IE 6& 7与所有其他浏览器不同。所以我写了一个小支票来重写nginx中的请求:
if (\$http_user_agent ~ "MSIE [67]\.") {
rewrite ^ ${ROOT_ROOT}ancient/ last;
break;
}
在工作中,我们使用browserstack进行跨浏览器测试。但是,由于这是测试各种配置中的小变化的一种非常缓慢的方法,我编写了一个测试脚本,该脚本使用不同的用户代理字符串执行一堆cURL请求,以确保服务器返回所需的内容。
以下是使用UA欺骗的卷曲执行示例:
curl -LvA 'Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)' http://localhost:8008/"
无论如何,问题是,当我使用具有Browserstack环境中的确切UA字符串的cURL时,我没有看到相同的行为,就像我尝试直接使用Browserstack访问该页面一样。
这很奇怪。因为在browserstack上,服务器甚至不识别请求(并且浏览器说存在连接问题),而使用cURL时,加载了正确的内容,服务器返回200.
我不希望任何人在这里完全解决我的问题,但我想弄清楚cURL是否存在我不知道的限制。
提前致谢。