alibaba / tengine

A distribution of Nginx with some advanced features

Home Page:https://tengine.taobao.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Supports appending HTTP headers of the user response to client based on routing of header, cookie or query

lianglli opened this issue · comments

基于Header/Cookie/Query的路由匹配,向客户端转发时在响应中追加指定的Header。

在响应消息的header中追加header值

如果存在相同的header名,在已有的header值后增加'&'分割符,再追加header值

如果响应消息的header不存在,则直接增加

值格式:"header name:header value[||header name:header value]*

值校验:header以'||'分割,header名和header值以':'分割,header name和header value不允许包含':'和'||',默认最多允许追加2个header

无损动态生效,无需tengine reload。

虽然RFC2616默认使用','分割同一个header的多个header值,但是upstream可自定义不同的分隔符,例如'|','&'等等。
并且,对upstream的响应消息头追加header值存在的一定风险,此类场景应全权由后端upstream处理,反向代理网关不再提供此类流量染色规则。