Nginx灰度
跳到导航
跳到搜索
nginx通过cookie判断该指向那个环境。
- 首先创建两个项目huidu1、huidu2,分别创建index.html文件,内容分别为“huidu1”、“huidu2”
- nginx指向项目
server { listen 8086; root /data/docker/www/huidu1; } server { listen 8087; root /data/docker/www/huidu2; }
- curl访问确认配置正确
➜ curl http://127.0.0.1:8085/index.html huidu1 ➜ curl http://127.0.0.1:8086/index.html huidu2
- nginx配置cookie判断匹配server
server { listen 8085; #匹配cookie set $to "http://127.0.0.1:8086";# 默认huidu1 if ($http_cookie ~* "huidu=1"){ set $to "http://127.0.0.1:8087";# 匹配到cookie,更改为huidu2 } location /{ proxy_pass $to; break; } }
- curl访问确认配置正确
➜ curl http://127.0.0.1:8085/index.html huidu1 ➜ curl http://127.0.0.1:8085/index.html -H 'Cookie: huidu=1' huidu2
- 完成