Squid Web Cache wiki

Squid Web Cache documentation

๐Ÿ”— What is Squid?

Squid is a high-performance proxy caching server for web clients, supporting FTP, gopher, and HTTP data objects. Squid handles all requests in a single, non-blocking, I/O-driven process over IPv4 or IPv6.

Squid keeps meta data and especially hot objects and DNS entries cached in RAM, and implements negative caching of failed requests.

Squid supports SSL, extensive access controls, and full request logging. By using the lightweight Internet Cache Protocol, Squid caches can be arranged in a hierarchy or mesh for additional bandwidth savings.

Squid consists of a main server program squid, some optional programs for rewriting requests and performing authentication, and some management and client tools.

Squid is originally derived from the ARPA-funded Harvest project. Since then it has gone through many changes and has many new features.

๐Ÿ”— What is Internet object caching?

Internet object caching is a way to store requested Internet objects (i.e., data available via the HTTP, FTP, and gopher protocols) on a system closer to the requesting site than to the source. Web browsers can then use the local Squid cache as a proxy HTTP server, reducing access time as well as bandwidth consumption.

๐Ÿ”— Why is it called Squid?

Harrisโ€™ Lament says, โ€œAll the good ones are taken.โ€

We needed to distinguish this new version from the Harvest cache software. Squid was the code name for initial development, and it stuck.

๐Ÿ”— What is the latest version of Squid?

This is best answered by the the Downloads page where you can also download the sources.

๐Ÿ”— Who is responsible for Squid?

Squid is the result of efforts by numerous individuals from the Internet community:

๐Ÿ”— Where can I get Squid?

You can download Squid via FTP or HTTP from one of the many worldwide mirror sites or the primary FTP site

Many sushi bars and restaurants also serve Squid.

๐Ÿ”— What Operating Systems does Squid support?

The project routinely tests Squid on Linux, on several popular distributions including Debian and derivatives, and CentOS and other Red Hat inspired projects. We expect Squid to run and build on just about any modern Linux system.

We also test on FreeBSD and OpenBSD, and Squid is available on these platforms as a package or in the ports collection.

Squid is also available on MacOS X through HomeBrew

We expect Squid to run on commercial Unixen such as Solaris or AIX, and we know it has at some point in time, but we have no way to test it.

Squid is also known to run on Windows

If you encounter any platform-specific problems, please let us know by registering an entry in our bug database.

๐Ÿ”— What Squid mailing lists are available?

That question is best answered by the official mailing lists page at http://www.squid-cache.org/Support/mailing-lists.html

๐Ÿ”— What other Squid-related documentation is available?

๐Ÿ”— Whatโ€™s the legal status of Squid?

Squid is copyrighted by The Squid Software Foundation and contributors. Squid copyright holders are listed in the CONTRIBUTORS file.

Squid is Free Software, distributed under the terms of the GNU General Public License, version 2 (GPLv2). Squid includes various software components distributed under several GPLv2-compatible open source licenses listed in the CREDITS file.

Squid contributors and components change with Squid software. The appropriate CONTRIBUTORS and CREDITS files can be found in the corresponding Squid sources, available for download.

Official Squid artwork distribution terms are detailed on the website.

๐Ÿ”— How to add a new Squid feature, enhance, of fix something?

Adding new features, enhancing, or fixing Squid behavior usually requires source code modifications. Several options are generally available to those who need Squid development:

The best development option depends on many factors. Here is some project dynamics information that may help you pick the right one: Most Squid features and maintenance is done by individual contributors, working alone or in small development/consulting shops. In the early years (1990-2000), these developers were able to work on Squid using their free time, research grants, or similarly broad-scope financial support. Requested features were often added on-demand because many folks could work on them. Most recent (2006-2008) contributions, especially large features, are the result of paid development contracts, reflecting both the maturity of software and the lack of โ€œfreeโ€ time among active Squid developers.

๐Ÿ”— Can I pay someone for Squid support?

Yes. Please see Squid Support Services. Unfortunately, that page is poorly maintained and has many stale/bogus entries, so exercise caution. Please do not email the Squid Project asking for official recommendations โ€“ the Project itself cannot recommend specific Squid administrators or developers due to various conflicts of interests. However, if the Project could make official referrals, they would probably form a (tiny) subset of the listed entries.

Besides the Services page, you can post a Request For Proposals to Squid Users (Squid administration and integration) or Squid Developers mailing list. A good RFP contains enough details (including your deadlines and Squid versions) for the respondents to provide a ballpark cost estimate. Expect private responses to your RFPs and avoid discussing private arrangements on the public mailing lists. Please do not email RFPs to the Project info@ alias for the reasons discussed in the previous paragraph.

You can also donate money or equipment to the Squid project.

๐Ÿ”— Squid FAQ contributors

The following people have made contributions to this document:

Dodjie Nava, Jonathan Larmour, Cord Beermann, Tony Sterrett, Gerard Hynes, Katayama, Takeo, Duane Wessels, K Claffy, Paul Southworth, Oskar Pearson, Ong Beng Hui, Torsten Sturm, James R Grinter, Rodney van den Oever, Kolics Bertold, Carson Gaspar, Michael Oโ€™Reilly, Hume Smith, Richard Ayres, John Saunders, Miquel van Smoorenburg, David J N Begley, Kevin Sartorelli, Andreas Doering, Mark Visser, tom minchin, Jens-S. Vรถckler, Andre Albsmeier, Doug Nazar, HenrikNordstrom, Mark Reynolds, Arjan de Vet, Peter Wemm, John Line, Jason Armistead, Chris Tilbury, Jeff Madison, Mike Batchelor, Bill Bogstad, Radu Greab, F.J. Bosscha, Brian Feeny, Martin Lyons, David Luyer, Chris Foote, Jens Elkner, Simon White, Jerry Murdock, Gerard Eviston, Rob Poe, FrancescoChemolli, Reuben Farrelly AlexRousskov AmosJeffries

๐Ÿ”— About This Document

This FAQ was maintained for a long time as an XML Docbook file. It was converted to a Wiki in March 2006. The wiki is now the authoritative version.

๐Ÿ”— Want to contribute?

We always welcome help keeping the Squid FAQ up-to-date. If you would like to help out, see how to contribute

To the FAQ Index

Navigation: Site Search, Site Pages, Categories, ๐Ÿ”ผ go up