通过user_agent实现现网灰度测试
User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。
Nginx web 服务器支持if条件表达式使用$http_user_agent变量. 这个参数常常被用来判断客户端信息,如浏览器类型等。
在灰度测试场景下,通过在chrome的F12-》F1(Settings)-》device-》Emulated Devices-》Add custom device 中添加自定义UA
在nginx配置中,根据此配置的判断,决定upstream的backend 地址。 这样就实现了测试人员自定义访问灰度机房还是现网机房。