[squid-users] Connection: close

From: Warrick FitzGerald <wfitzgerald@dont-contact.us>
Date: Sun, 19 May 2002 17:12:10 -0400

Hi All,

Just spent a very long and frustrating day trying to figure out why IE is
giving me such a hard time with ETags, as was hoping someone could shed some
light on my painfull day.

- I was initially running Version 2.4.STABLE1 but upgraded to Version
2.4.STABLE4.
- I am running my box as a reverse proxy with a single origin server on the
back end.
- client_persistent_connections and server_persistent_connections or "on"

I have configed apache with a .htaccess file that looks like this (Simply
for testing) :
-----------
Header append Content-Location: "http://my.test.proxy/"
Header append Last-Modified "Fri, 17 May 2002 23:56:14 GMT"
Header append ETag "\"1095d76dfefdc11:897\""
-----------

1. When my client (IE 6.0.26) connects directly to the server the server it
sends a HTTP/1.1 header and recieves a HTTP/1.1 in response.
2. The next time the client makes the request it send a "If-None-Match" in
the header with the ETag it recieved (as per HTTP/1.1 spec).

What had me VERY VERY confused today was that when I made this request
through my squid box, all of a sudden this stopped working as expected.
After a lot of playing arround I discovered that my squid box was making a
HTTP/1.0 request back to the origin server and even though the origin server
responds with a http/1.1 header, will still respond to the client with the
1.0 header.

My theory (pls. someone correct me if I'm wrong) is that this little problem
in turn causes IE not to send the "If-None-Match". I'm guessing that this
happens because IE sees the response as a 1.0 response and decides that the
ETag is not part of the spec, so just throws it away ?

I then found a param in squid.conf called httpd_accel_uses_host_header (Note
that I'm pulling straws at this point). Tried turning this on and still no
joy. I'm am no squid expert so I would appreciate if someone could please
explain what I'm doing wrong.

I have included my config below.

Thanks in advance
Warrick FitzGerald

[root@WarrickLinux squid]# cat squid.conf | grep -v "^#" | grep "\w"
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_dir ufs /var/spool/squid 100 16 256
debug_options ALL,9
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255 10.10.52.99/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
acl PURGE method PURGE
http_access allow PURGE all
http_access allow localhost
http_access allow all
icp_access allow all
httpd_accel_single_host on
httpd_accel_uses_host_header on
client_persistent_connections on
server_persistent_connections on
ie_refresh off
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
http_port 10.10.52.99:80
httpd_accel_host 10.10.52.129
Received on Sun May 19 2002 - 15:15:12 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 17:08:10 MST