I'd like to modify the destination port based on an incoming request header. It seems like
everything I need is available in the header_rewrite plugin except the value expansion in
the "set-destination port" directive. In the docs it says that this expansion only works for
add-header[1].
Is there a way to do something like the following via the existing plugin, maybe my syntax
is wrong?
cond %{READ_REQUEST_HDR_HOOK} [AND]cond %{CLIENT-HEADER:NEW-PORT} /^[1-9][0-9]*$/set-destination
PORT %{CLIENT-HEADER:NEW-PORT} [L]
When I test it I get this debug message: "Would set destination PORT to an invalid range,
skipping"
Which points me at this code[2]. It looks like the _value variable is set to the string "%{CLIENT-HEADER:NEW-PORT}"
so I guess there is no expansion...
Assuming header_rewrite doesn't support this yet, are there any objections to adding this
feature?
Thanks,Scott--[1] http://trafficserver.readthedocs.org/en/latest/reference/plugins/header_rewrite.en.html?highlight=header_rewrite#variable-expansion[2] https://git-wip-us.apache.org/repos/asf?p=trafficserver.git;a=blob;f=plugins/header_rewrite/operators.cc;h=5ce75f5985e3e42374814e5a46c361e450bdd779;hb=HEAD#l228
|