Jake Jacobson wrote:
Hi,
I am running Squid 4.6.13 stable on a Solaris 10 platform to reverse proxy a
Google search appliance. All search requests go through the squid proxy before
being passed to back to the Google appliance.
I noticed that my Squid access log starts having TCP_MISS/500 errors for all
URLs that are reversed proxied through it. To correct the error, I end up
killing the squid processes running and restarting them. After this the same
URL that was getting the 500 error returns the normal TCP_MISS/200
After reading http://www.squid-cache.org/mail-archive/squid-users/200512/0417.html and
following the example in this post I added "always_direct allow all" to my
configuration file. After restarting squid, I was getting TCP_MISS/403. This forced me
to comment out that line.
That message was regarding Squid 2.5. A number of changes were made to
how acceleration is handled in 2.6.
It seems like when the Google appliance goes down, squid starts returning
server 500 errors and continues to server these errors after the appliance is
back up and running. This forces me to have to manually stop and start the
squid processes. I was hoping that the always_direct allow all configuration
change would work. Does anyone have any other suggestions?
Assuming you've set the forwarding up according to
http://wiki.squid-cache.org/SquidFaq/ReverseProxy#head-7fa129a6528d9a5c914f8dd5671668173e39e341,
you can extend the cache_peer line using monitorurl, monitorsize,
monitorinterval and monitortimeout to have squid keep an eye on the GA,
which might help it "know" when the server is back up. Usage of these
directives is covered in the default squid.conf file, or at
http://www.squid-cache.org/Versions/v2/2.6/cfgman/cache_peer.html
You might also have a look at the negative_ttl directive
(http://www.squid-cache.org/Versions/v2/2.6/cfgman/negative_ttl.html).
Jake
Martin C. Jacobson (Jake)
Office of the DNI CIO
Intelligence Community Enterprise Services
Comm: (301) 317-7214 Secure: 369-6362
Chris