hi, when i use nginx as a forward prxoy, some page can not be downloaded
successfully.
example:
http_proxy=ip:port wget -O test.html
http://s1.ganjistatic1.com/css/base_ue3_house.__1276756225__.css--header='Proxy-Connection:
keep-alive’ -S
the received data length always less than response heade specificed
length,
so wget will retry again and again.
if use ie or firefox, the page load very slow, I guess the browser retry
many times like wget.
but if not sent header ‘Proxy-Connection: keep-alive’, the page can be
downloaded successfully.
Any one has idea?
thanks.
the nginx config file:
server { # simple load balancing
listen 9681;
resolver 202.106.0.20;
location / {
proxy_pass http://$http_host$request_uri;
}
}
the nginx version is 0.7.65-5 ,
os is debian Linux dev 2.6.30-1-amd64
Hello!
On Mon, Jun 21, 2010 at 04:08:25PM +0800, xuzheng wrote:
hi, when i use nginx as a forward prxoy, some page can not be downloaded
successfully.
nginx isn’t forward proxy, and it know nothing about
Proxy-Connection. If server you are connecting to happens to keep
connection alive due to “Proxy-Connection: keep-alive” header -
the behaviour you see is quite expected.
You have to manually remove this header from request via something
like
proxy_set_header Proxy-Connection "";
Or, much better, just don’t use nginx as forward proxy.
Maxim D.
xuzheng at 2010-6-21 16:08 wrote:
but if not sent header ‘Proxy-Connection: keep-alive’, the page can be
downloaded successfully.
Any one has idea?
Nginx does not support keepalive connection with backend server.
Maybe you should remove the header of “proxy-connection” like this:
proxy_set_header Proxy-Connection “”;
–
Weibin Y.
thanks, after remove the header, it works well.
2010/6/21 Weibin Y. [email protected]
thanks,Maxim D.
I must use your remove-header way, because I am building a test env like
online, for example,
when tester visits our site page( same to online url )with proxy, nginx
forward to test machine,
but when he visits outer-site page ,nginx forward to outer.
other forward proxy such as squid doesn’t seems to have such feature.
Indeed, in this case ,this nginx is a forward-reverse proxy.
2010/6/21 Maxim D. [email protected]