$http_host
如果请求中的 cookie SHOW_BETA 设置为 true,我想将 www 替换为 beta 。
我已将其放入我的主机块中,但不确定如何进行实际替换。
map $http_host $cookie_SHOW_BETA {
// replace www with beta here if true. <---- Question: what to put in here
default $http_host;
}
此外,如果我想使用if
可以轻松分割的地方,$http_host
我不能使用并检查 cookie 的值。
答案1
您的使用map
存在问题:
- 地图的“来自”值应该是第一个,而要设置的变量应该是第二个
- 用作
$http_host
变量来设置可能不起作用
我认为,在 中甚至不可能进行替换map
。
最好的办法是尝试添加一个前缀:
map $cookie_show_beta $http_host {
true beta.$http_host;
default $http_host;
}