温馨提示×

如何用Nginx正则表达式动态设置响应头

小亿
127
2024-04-29 18:25:45
栏目: 编程语言

要使用Nginx正则表达式动态设置响应头,可以在Nginx的配置文件中使用map模块结合正则表达式来实现。

以下是一个示例配置,动态设置响应头X-My-Header的值为请求URL中的数字部分:

http {
    map $request_uri $my_header_value {
        ~*^/path/(\d+)$ $1;
        default "";
    }

    server {
        listen 80;
        server_name example.com;

        location / {
            add_header X-My-Header $my_header_value;
            # 其他配置
        }
    }
}

在上面的配置中,我们使用map模块将请求URI中的数字提取出来保存在变量$my_header_value中。然后在location块中使用add_header指令将该值设置为响应头X-My-Header的值。

通过这种方式,我们可以动态地设置响应头的值,根据请求的不同条件来设置不同的响应头内容。

0