在nginx的location配置中,在获取header配置时,须要在header名称前面加上固定前缀“http_“,并将header名称中的“-”中划线变为下划线,举例说明:

自定义的header名称为BRAND-MARK,那在nginx中使用$http_brand_mark 来获取到BRAND-MARK的值。

nginx 配置如下:

server {
  listen 80;
  server_name headerparam.xxx.com;
  access_log logs/dev-headerparamxxx.80.log main;
  charset utf-8;
  location / {
    default_type text/html;
    if ($http_brand_mark = 'ATK') {
      # proxy_pass http://127.0.0.1:8111;
      return 200 'atk';
    }
    if ($http_brand_mark = 'GFK') {
      # proxy_pass http://127.0.0.1:8112;
      return 200 'gfk';
    }

    return 200 'other';
  }
}

posted on 2022-07-12 16:32  何石-博客  阅读(796)  评论(0编辑  收藏  举报