Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Overwrite Cache-Control: Private in Nginx

Just wonder if there is any way to overwrite / drop the response back Cache-Control: private from a proxied remote server. The setup architecture looks like this (yes, it's a reverse-proxy set up):

[my server] --> [remote server]

The setting for my server site-available/default:

server {

        listen   80; ## listen for ipv4
        listen   [::]:80 default ipv6only=on; ## listen for ipv6

        server_name  localhost;


        location / {
            if ($arg_AWSACCESSKEY) {    
                proxy_pass http://localhost:8088;
            }
            try_files $uri $uri/ /index.php /index.html /index.htm;
        }
    # other setting goes here
}

The setting for my server site-available/remote:

server {
        listen   8088; ## listen for ipv4; this line is default and implied

        # Make site accessible from http://localhost/
        # server_name localhost;

        location / {
                proxy_pass http://remoteserver;
                proxy_set_header Host remoteserverhostname.com;
                proxy_ignore_headers Cache-Control Expires;
                proxy_pass_header Set-Cookie;

        }
}

But Firebug still report the header contains Cache-Control: private. Did I missed something?

Thanks.

like image 490
Ming Hsieh Avatar asked May 20 '11 19:05

Ming Hsieh


1 Answers

You want proxy_hide_header instead of proxy_ignore_headers

like image 56
kolbyjack Avatar answered Oct 31 '22 02:10

kolbyjack