Squid 2.7.STABLE2 release notes

Squid Developers

$Id: release.html,v 2008/05/31 21:23:33 hno Exp $
This document contains the release notes for version 2.7 of Squid. Squid is a WWW Cache application developed by the Web Caching community.

1. Key changes from squid 2.6

2. Changes to squid.conf

3. Known issues & limitations

4. Windows support

5. Key changes in squid-2.7.STABLE2

1. Key changes from squid 2.6

This section describes the main news since the 2.6 release

2. Changes to squid.conf

This release has a number of changes and additions to squid.conf

2.1 Added directives

acl myportname

new acl matching the incoming port name


controls the new IP based authentication cache.


controls the Zero Penalty Hit support


optimization to skip updating on-disk headers


new log file daemon support


sas hardcoded to the first cache_dir


controls the new store URL rewrite functionality


controls the new builtin URL rewrite functionality


Experimental HTTP/1.1 support knobs


new helper to allow custom cache validations in accelerator setups


new way of using delay pools based on response size


optimization mainly targeted for accelerator setups


can now be set runtime. Was previously hardcoded at build time and further limited by ulimit


optimization to avoid waking Squid up until a request has been received


new tuning knob for high traffic conditions


tuning knob to disable a new optimization

2.2 Changed directives


Suggested defaults modified


the "read-only" option has been renamed to "no-store" to better reflect the functionality


new multicast-siblings option, enabling multicast ICP sibling relations

new idle=n option to keep a minimum pool of idle connections

new http11 option to enable experimental HTTP/1.1 support


New %URI format tag


Suggested defaults cleaned up, defines a new "localnet" acl with RFC1918 addresses

new "myportname" acl type matching the http_port name


Suggested defaults cleaned up, now requires configuration to use ICP


Suggested defaults cleaned up, now requires configuration to use HTCP


Suggested defaults cleaned up, using a new "localnet" acl.


Accelerator mode options cleaned up (accel, defaultsite, vport, vhost and combinations thereof)

new "allow-direct" option

new "act-as-origin" option

new "http11" option (experimental)

new "name=" option

nee "keepalive=" option


See http_port.


New format codes: oa (Our outgoing IP address), rp (Request URL-Path), sn (Unique sequence number)


Several new options: stale-while-revalidate, ignore-stale-while-revalidate, max-stale, negative-ttl

Suggested defaults adjusted to match the changes in the cache directive.


Future protocol change adding key=value pairs after the requests


Has several new modes, allowing one to finetune how/if the requesting client IP should be forwarded in X-Forwarded-For

2.3 Removed directives


the above tuning knobs no longer have any effect and has been removed.

3. Known issues & limitations

There is a few known issues and limitations in this release of Squid

3.1 Known issues

3.2 Known limitations

4. Windows support

This Squid version can run on Windows as a system service using the Cygwin emulation environment, or can be compiled in Windows native mode using the MinGW + MSYS development environment. Windows NT 4 SP4 and later are supported.

On Windows 2000 and later the service is configured to use the Windows Service Recovery option restarting automatically after 60 seconds.

4.1 Usage

Some new command line options was added for the Windows service support:

The service installation is made with -i command line switch, it's possible to use -f switch at the same time for specify a different config-file settings for the Squid Service that will be stored on the Windows Registry.

A new -n switch specify the Windows Service Name, so multiple Squid instance are allowed. "Squid" is the default when the switch is not used.

So, to install the service, the syntax is:

squid -i [-f file] [-n name]

Service uninstallation is made with -r command line switch with the appropriate -n switch.

The -k switch family must be used with the appropriate -f and -n switches, so the syntax is:

squid -k command [-f file] -n service-name
where service-name is the name specified with -n options at service install time.

To use the Squid original command line, the new -O switch must be used ONCE, the syntax is:

squid -O cmdline [-n service-name]
If multiple service command line options must be specified, use quote. The -n switch is needed only when a non default service name is in use.

Don't use the "Start parameters" in the Windows 2000/XP/2003 Service applet: they are specific to Windows services functionality and Squid is not designed for understand they.

In the following example the command line of the "squidsvc" Squid service is set to "-D -u 3130":

squid -O "-D -u 3130" -n squidsvc

4.2 PSAPI.DLL (Process Status Helper) Considerations

The process status helper functions make it easier for you to obtain information about processes and device drivers running on Microsoft® Windows NT®/Windows® 2000. These functions are available in PSAPI.DLL, which is distributed in the Microsoft® Platform Software Development Kit (SDK). The same information is generally available through the performance data in the registry, but it is more difficult to get to it. PSAPI.DLL is freely redistributable.

PSAPI.DLL is available only on Windows NT, 2000, XP and 2003. The implementation in Squid is aware of this, and try to use it only on the right platform.

On Windows NT PSAPI.DLL can be found as component of many applications, if you need it, you can find it on Windows NT Resource KIT. If you have problem, it can be downloaded from here: http://download.microsoft.com/download/platformsdk/Redist/4.0.1371.1/NT4/EN-US/psinst.EXE

On Windows 2000 and later it is available installing the Windows Support Tools, located on the Support\Tools folder of the installation Windows CD-ROM.

4.3 Registry DNS lookup

On Windows platforms, if no value is specified in the dns_nameservers option on squid.conf or in the /etc/resolv.conf file, the list of DNS name servers are taken from the Windows registry, both static and dynamic DHCP configurations are supported.

4.4 Compatibility Notes

4.5 Known Limitations:

4.6 Using cache manager on Windows:

On Windows, cache manager (cachemgr.cgi) can be used with Microsoft IIS or Apache. Some specific configuration could be needed:

IIS 6 (Windows 2003)

On IIS 6.0 all CGI extensions are denied by default for security reason, so the following configuration is needed:


On Windows, cachemgr.cgi needs to create a temporary file, so Apache must be instructed to pass the TMP and TEMP Windows environment variables to CGI applications:

ScriptAlias /squid/cgi-bin/ "c:/squid/libexec/"
<Location /squid/cgi-bin/cachemgr.cgi>
    PassEnv TMP TEMP
    Order allow,deny
    Allow from workstation.example.com

5. Key changes in squid-2.7.STABLE2