I set up a transparent proxy. Testing: # http_proxy=172.16.42.127:3128 wget -c http://www.ilyichevsk.net access.log: 1043831883.103 70 172.16.42.177 TCP_HIT/200 19955 GET http://www.ilyichevsk.net/ ...
so this works. # http_proxy= wget -c http://www.ilyichevsk.net access.log: 1043831679.469 25 172.16.42.177 NONE/400 1451 GET / - NONE/- text/html [] [HTTP/1.0 400 Bad Request... This does not. Let's see the details: # http_proxy=172.16.42.127:3128 wget -c http://www.ilyichevsk.net cache.log: 2003/01/29 11:18:03| parseHttpRequest: Method is 'GET' 2003/01/29 11:18:03| parseHttpRequest: URI is 'http://www.ilyichevsk.net/' 2003/01/29 11:18:03| parseHttpRequest: req_hdr = {User-Agent: Wget/1.7 Host: www.ilyichevsk.net Accept: */* } 2003/01/29 11:18:03| parseHttpRequest: end = {} 2003/01/29 11:18:03| parseHttpRequest: prefix_sz = 104, req_line_sz = 41 2003/01/29 11:18:03| parseHttpRequest: Request Header is User-Agent: Wget/1.7 Host: www.ilyichevsk.net Accept: */* 2003/01/29 11:18:03| parseHttpRequest: Complete request received 2003/01/29 11:18:03| conn->in.offset = 0 2003/01/29 11:18:03| clientSetKeepaliveFlag: http_ver = 1.0 2003/01/29 11:18:03| clientSetKeepaliveFlag: method = GET ... ... # http_proxy= wget -c http://www.ilyichevsk.net cache.log: 2003/01/29 11:14:39| parseHttpRequest: Method is 'GET' 2003/01/29 11:14:39| parseHttpRequest: URI is '/' 2003/01/29 11:14:39| parseHttpRequest: req_hdr = {User-Agent: Wget/1.7 Host: www.ilyichevsk.net Accept: */* Connection: Keep-Alive } 2003/01/29 11:14:39| httpAccept: FD 13: accepted 2003/01/29 11:14:39| clientReadRequest: FD 13: reading request... 2003/01/29 11:14:39| parseHttpRequest: Method is 'GET' 2003/01/29 11:14:39| parseHttpRequest: URI is '/' 2003/01/29 11:14:39| parseHttpRequest: req_hdr = {User-Agent: Wget/1.7 Host: www.ilyichevsk.net Accept: */* Connection: Keep-Alive } 2003/01/29 11:14:39| parseHttpRequest: end = {} 2003/01/29 11:14:39| parseHttpRequest: prefix_sz = 103, req_line_sz = 16 2003/01/29 11:14:39| parseHttpRequest: Request Header is User-Agent: Wget/1.7 Host: www.ilyichevsk.net Accept: */* Connection: Keep-Alive 2003/01/29 11:14:39| parseHttpRequest: Complete request received 2003/01/29 11:14:39| conn->in.offset = 0 2003/01/29 11:14:39| Invalid URL: / ... ... As you can see, wget sends different HTTP requests with and without http_proxy environment variable. Seems like squid dislike this request: GET / User-Agent: Wget/1.7 Host: www.ilyichevsk.net Accept: */* Connection: Keep-Alive Why???!! P.S. I verified that with telnet too. -- vda
