Response Header IF statement problem

Roman Arutyunyan arut at
Wed Feb 14 15:00:32 UTC 2018

Hi Michael,

On Wed, Feb 14, 2018 at 02:09:57PM +0000, Friscia, Michael wrote:
> I’m at a loss on this. I am working on a cache problem where some pages need to be bypassed and others will be cached. So the web server is adding a response header (X-Secured-Page). I’ve tried multiple combinations of
> $http_x_secured_page and $sent_http_x_secured_page and even though I see the header when I inspect the page, the IF statements inside the location block are not getting fired off.
> What could I possibly be doing wrong?

If you want to disable caching for a specific response, you can use the
proxy_no_cache directive.  Pass it $upstream_http_x_secured_page if you want
to disable caching of responses having this HTTP header.

Using "if" directive for analyzing output headers like $sent_http_x_secured_page
will not work since "if" is evaluated at an early request processing stage
(rewrite phase) and no output is normally created by this time.

Roman Arutyunyan

More information about the nginx mailing list