Nginx 'if' statement in http context?
- by andy
I want to set a variable in the http context of nginx so it applies to all my servers. However, 'if' is only supported in server & location.
How can I set a variable in the http context so it will affect all servers?
Might the lua module be able to help with this (although I'd rather have a pure nginx solution). If so, please provide an example.
I just want to set the following variable so it applies to all servers:
# only allow gzip encoding. For all other cases, use identity (uncompressed)
if ($http_accept_encoding ~* "gzip") {
set $sanitised_accept_encoding "gzip";
}
if ($http_accept_encoding != "gzip") {
set $sanitised_accept_encoding "";
}