On Wed, 14 Apr 2010 08:13:01 -0500, <senad.cimic@xxxxxxxxxxxxxxxxxx> wrote: > Hi, > > I am first time squid user and was wondering if could get some help. I > tried to find answers to these questions on-line, but unsuccessfully... > > I have 2 squid boxes setup as reverse proxies in a cluster (they're > using each other as siblings). On the backend I'm using single tomcat > server that both squid boxes use to retrieve content. Squid version I'm > using is 3.0. I'm running into couple issues: > > Issue #1: > Whenever squid box receives request for url that contains querystring > (e.g. - http://site1:8080/RSSSource/rss/feed?max=1) it does not contact > sibling cache for that resource, but it retrieves it from the backend > server right away. What's odd is that it works (sometimes...) when query > string is not present (e.g. http://site1:8080/RSSSource/rss/feed). > > Issue #2: > Let's say squidA receives request for some resource (e.g. > http://site1:8080/RSSSource/rss/feed). If squidA doesn't have it in its > cache, it will check if it's available from squidB. However, if squidA > has expired version of that resource, it doesn't contact squidB but > retrieves it directly from the backend server, which should not be the > case (it should check if squidB had valid copy available), correct? > > Here are relevant squid.conf lines for one of the squids (everything > else is unchanged, config for the second squid is the same except for > sibling references): Nope. The relevant lines are hierarchy_stoplist (prevent peers being asked for query-string URLs). and cache/no_cache controls (prevent "QUERY" ACL matches being stored locally.) Both of which need to be removed from your config. Amos