根据NGINX中的标头请求加载网站

时间:2020-06-25 07:00:07

标签: nginx

我有不同的静态站点托管在http://static.example.com/上, 我想基于发送到Nginx服务器的X-Site-version标头加载网站的不同版本。如果没有标题,则应加载默认版本。

伪代码

if header X-Site-version === 2
 load /www/static/v2

if header X-Siter-version === 1
 load /www/static/v1

else
 load /www/static/v0

1 个答案:

答案 0 :(得分:1)

当缺少标题时,可以尝试使用root指令设置内容解析目录,并尝试使用map指令设置默认目录。这样的配置应该可以工作:

map $http_x_site_version $site_directory {
    default    $http_x_site_version;
    ''         v0;
}

server {
        location / {
            root /www/static/$site_directory;
        }
}