0

我需要告诉 nginx 以不同于所有其他浏览器的方式处理来自 IE 6 和 7 的请求。所以我写了一个小检查来重写nginx中的请求:

if (\$http_user_agent ~ "MSIE [67]\.") {
    rewrite ^ ${ROOT_ROOT}ancient/ last;
    break;
}

在工作中,我们使用 browserstack 进行跨浏览器测试。但由于这是一种在各种配置中测试小的更改的非常慢的方法,所以我编写了一个测试脚本,它使用不同的用户代理字符串执行一堆 cURL 请求,以确保服务器返回所需的内容。

这是一个带有 UA 欺骗的 curl 执行示例:

curl -LvA 'Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)' http://localhost:8008/"

无论如何,问题是,当我使用 cURL 和 Browserstack 环境中的确切 UA 字符串时,我没有看到相同的行为,就像我尝试使用 Browserstack 直接访问页面时一样。

这很奇怪。因为在 browserstack 上,服务器甚至无法识别请求(并且浏览器说存在连接问题),而使用 cURL 时,加载了正确的内容并且服务器返回 200。

我不希望有人在这里完全解决我的问题,但我试图弄清楚我不知道的 cURL 是否存在限制。

提前致谢。

4

0 回答 0