0
我試圖管理部署到運行在配置爲負載平衡器的nginx plus服務器後面的服務器。應用服務器使用proxy_pass指令從nginx發送流量,我想要做的是默認情況下將流量定向到一個上游,但是我們將部署到備用實例的流量定義爲另一個測試;我試圖通過讓開發人員在瀏覽器中設置一個頭來選擇這個,然後nginx查找併爲相關代理設置一個變量。基於標題的nginx條件代理傳遞
看來這一切都是明智的,但它根本行不通 - 我不確定是否誤解它是如何工作的,但它確實看起來很奇怪。
的上行流被配置爲
upstream site-cluster {
zone site 64k;
least_conn;
server 10.0.6.100:80 route=a slow_start=30s;
server 10.0.7.100:80 route=b slow_start=30s;
sticky route $route_cookie $route_uri;
}
upstream site-cluster2 {
zone site 64k;
least_conn;
server 10.0.6.30:80 route=a slow_start=30s;
server 10.0.7.187:80 route=b slow_start=30s;
sticky route $route_cookie $route_uri;
}
然後這個代碼是在位置/塊。
map $http_x_newsite $proxyurl {
default http://site-cluster;
"true" http://site-cluster2;
}
proxy_pass $proxyurl;
不管我是否設置標題,它總是發送流量的默認服務器。
任何想法?