Set Incoming Request Headers (similar to mod_headers)
W. Andrew Loe III
andrew at andrewloe.com
Tue Nov 17 22:39:39 MSK 2009
I am trying to emulate an Apache mod_headers feature
(http://httpd.apache.org/docs/2.2/mod/mod_headers.html#requestheader).
I would like to set some headers before my content handler is run.
Specifically SSL related headers that I would like set before my
Passenger process picks up the request. I could do this with
proxy_set_header, but I am not proxying, the request is being picked
up and executed by Passenger.
Config looks like this:
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Client-Verify $ssl_client_verify;
proxy_set_header X-Client-DN $ssl_client_i_dn;
proxy_set_header X-SSL-Subject $ssl_client_s_dn;
proxy_read_timeout 75;
passenger_enabled on;
}
This however will not work, the headers are not set when the backend
runs. Do I need to setup a second server block listening on a
different port and then proxy the request to that so I can take
advantage of proxy_set_header, or is there a way to do it like Apache.
More information about the nginx
mailing list