]> git.ipfire.org Git - thirdparty/squid.git/blame - src/cf.data.pre
* add a header containing an Id tag
[thirdparty/squid.git] / src / cf.data.pre
CommitLineData
3a278cb8 1
9cef6668 2#
d08a99eb 3# $Id: cf.data.pre,v 1.239 2001/11/13 06:38:27 hno Exp $
9cef6668 4#
5#
2b6662ba 6# SQUID Web Proxy Cache http://www.squid-cache.org/
9cef6668 7# ----------------------------------------------------------
8#
2b6662ba 9# Squid is the result of efforts by numerous individuals from
10# the Internet community; see the CONTRIBUTORS file for full
11# details. Many organizations have provided support for Squid's
12# development; see the SPONSORS file for full details. Squid is
13# Copyrighted (C) 2000 by the Regents of the University of
14# California; see the COPYRIGHT file for full details. Squid
15# incorporates software developed and/or copyrighted by other
16# sources; see the CREDITS file for full details.
9cef6668 17#
18# This program is free software; you can redistribute it and/or modify
19# it under the terms of the GNU General Public License as published by
20# the Free Software Foundation; either version 2 of the License, or
21# (at your option) any later version.
96d88dcb 22#
9cef6668 23# This program is distributed in the hope that it will be useful,
24# but WITHOUT ANY WARRANTY; without even the implied warranty of
25# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26# GNU General Public License for more details.
96d88dcb 27#
9cef6668 28# You should have received a copy of the GNU General Public License
29# along with this program; if not, write to the Free Software
30# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
31#
32
0f74202c 33COMMENT_START
448cd7c7 34 WELCOME TO SQUID 2
35 ------------------
3a278cb8 36
cf5cc17e 37 This is the default Squid configuration file. You may wish
2b6662ba 38 to look at the Squid home page (http://www.squid-cache.org/)
6b8e7481 39 for the FAQ and other documentation.
3a278cb8 40
debd9a31 41 The default Squid config file shows what the defaults for
42 various options happen to be. If you don't need to change the
43 default, you shouldn't uncomment the line. Doing so may cause
44 run-time problems. In some cases "none" refers to no default
efd900cb 45 setting at all, while in other cases it refers to a valid
debd9a31 46 option - the comments for that keyword indicate if this is the
47 case.
48
0f74202c 49COMMENT_END
3a278cb8 50
0f74202c 51COMMENT_START
3a278cb8 52 NETWORK OPTIONS
53 -----------------------------------------------------------------------------
0f74202c 54COMMENT_END
3a278cb8 55
934b03fc 56NAME: http_port ascii_port
7e3ce7b9 57TYPE: sockaddr_in_list
f53b06f9 58DEFAULT: none
59DEFAULT_IF_NONE: 3128
7e3ce7b9 60LOC: Config.Sockaddr.http
934b03fc 61DOC_START
7e3ce7b9 62 Usage: port
63 hostname:port
64 1.2.3.4:port
934b03fc 65
7e3ce7b9 66 The socket addresses where Squid will listen for HTTP client
67 requests. You may specify multiple socket addresses.
68 There are three forms: port alone, hostname with port, and
69 IP address with port. If you specify a hostname or IP
70 address, then Squid binds the socket to that specific
71 address. This replaces the old 'tcp_incoming_address'
72 option. Most likely, you do not need to bind to a specific
73 address, so you can use the port number alone.
74
75 The default port number is 3128.
76
efd900cb 77 If you are running Squid in accelerator mode, then you
7e3ce7b9 78 probably want to listen on port 80 also, or instead.
79
80 The -a command line option will override the *first* port
81 number listed here. That option will NOT override an IP
82 address, however.
934b03fc 83
efd900cb 84 You may specify multiple socket addresses on multiple lines.
934b03fc 85DOC_END
86
1f7c9178 87NAME: https_port
88IFDEF: USE_SSL
d193a436 89TYPE: https_port_list
1f7c9178 90DEFAULT: none
91LOC: Config.Sockaddr.https
92DOC_START
9690f3c5 93 Usage: [ip:]port cert=certificate.pem [key=key.pem] [options...]
1f7c9178 94
d193a436 95 The socket address where Squid will listen for HTTPS client
96 requests.
d6827718 97
1f7c9178 98 This is really only useful for situations where you are running
99 squid in accelerator mode and you want to do the SSL work at the
100 accelerator level.
1f7c9178 101
d193a436 102 You may specify multiple socket addresses on multiple lines,
9690f3c5 103 each with their own SSL certificate and/or options.
820feeed 104
105 Options:
106
107 cert= Path to SSL certificate (PEM format)
108
109 key= Path to SSL private key file (PEM format)
110 if not specified, the certificate file is
111 assumed to be a combined certificate and
112 key file
113
114 version= The version of SSL/TLS supported
115 1 automatic (default)
116 2 SSLv2 only
117 3 SSLv3 only
118 4 TLSv1 only
119
120 cipher= Colon separated list of supported ciphers
121
122 options= Varions SSL engine options. The most important
123 being:
124 NO_SSLv2 Disallow the use of SSLv2
125 NO_SSLv3 Disallow the use of SSLv3
126 NO_TLSv1 Disallow the use of TLSv1
127 See src/ssl_support.c or OpenSSL documentation
128 for a more complete list.
1f7c9178 129DOC_END
130
79d4ccdf 131NAME: ssl_unclean_shutdown
e1d9c13c 132IFDEF: USE_SSL
79d4ccdf 133TYPE: onoff
134DEFAULT: off
135LOC: Config.SSL.unclean_shutdown
1f7c9178 136DOC_START
79d4ccdf 137 Some browsers (especially MSIE) bugs out on SSL shutdown
138 messages.
1f7c9178 139DOC_END
140
934b03fc 141NAME: icp_port udp_port
142TYPE: ushort
143DEFAULT: 3130
144LOC: Config.Port.icp
145DOC_START
78a0e865 146 The port number where Squid sends and receives ICP queries to
934b03fc 147 and from neighbor caches. Default is 3130. To disable use
148 "0". May be overridden with -u on the command line.
934b03fc 149DOC_END
150
459f1836 151NAME: htcp_port
152IFDEF: USE_HTCP
153TYPE: ushort
154DEFAULT: 4827
155LOC: Config.Port.htcp
156DOC_START
78a0e865 157 The port number where Squid sends and receives HTCP queries to
459f1836 158 and from neighbor caches. Default is 4827. To disable use
159 "0".
160
6b8e7481 161 To enable this option, you must use --enable-htcp with the
162 configure script.
459f1836 163DOC_END
164
934b03fc 165
166NAME: mcast_groups
167TYPE: wordlist
168LOC: Config.mcast_group_list
1273d501 169DEFAULT: none
934b03fc 170DOC_START
cf5cc17e 171 This tag specifies a list of multicast groups which your server
78a0e865 172 should join to receive multicasted ICP queries.
934b03fc 173
174 NOTE! Be very careful what you put here! Be sure you
175 understand the difference between an ICP _query_ and an ICP
176 _reply_. This option is to be set only if you want to RECEIVE
177 multicast queries. Do NOT set this option to SEND multicast
a95856a0 178 ICP (use cache_peer for that). ICP replies are always sent via
934b03fc 179 unicast, so this option does not affect whether or not you will
180 receive replies from multicast group members.
181
182 You must be very careful to NOT use a multicast address which
efd900cb 183 is already in use by another group of caches.
934b03fc 184
cf5cc17e 185 If you are unsure about multicast, please read the Multicast
2b6662ba 186 chapter in the Squid FAQ (http://www.squid-cache.org/FAQ/).
cf5cc17e 187
934b03fc 188 Usage: mcast_groups 239.128.16.128 224.0.1.20
189
cf5cc17e 190 By default, Squid doesn't listen on any multicast groups.
934b03fc 191DOC_END
192
193
934b03fc 194NAME: udp_incoming_address
195TYPE: address
196LOC:Config.Addrs.udp_incoming
270b86af 197DEFAULT: 0.0.0.0
934b03fc 198DOC_NONE
199
200NAME: udp_outgoing_address
201TYPE: address
202LOC: Config.Addrs.udp_outgoing
270b86af 203DEFAULT: 255.255.255.255
934b03fc 204DOC_START
205 Usage: tcp_incoming_address 10.20.30.40
206 udp_outgoing_address fully.qualified.domain.name
207
934b03fc 208 udp_incoming_address is used for the ICP socket receiving packets
209 from other caches.
210 udp_outgoing_address is used for ICP packets sent out to other
211 caches.
212
efd900cb 213 The default behavior is to not bind to any specific address.
934b03fc 214
6b53c392 215 A *_incoming_address value of 0.0.0.0 indicates that Squid should
216 listen on all available interfaces.
217
218 If udp_outgoing_address is set to 255.255.255.255 (the default)
219 then it will use the same socket as udp_incoming_address. Only
220 change this if you want to have ICP queries sent using another
221 address than where this Squid listens for ICP queries from other
222 caches.
223
5a3f6538 224 NOTE, udp_incoming_address and udp_outgoing_address can not
6b53c392 225 have the same value since they both use port 3130.
934b03fc 226
7e3ce7b9 227 NOTE, tcp_incoming_address has been removed. You can now
228 specify IP addresses on the 'http_port' line.
934b03fc 229DOC_END
230
0f74202c 231COMMENT_START
3a278cb8 232 OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHM
233 -----------------------------------------------------------------------------
0f74202c 234COMMENT_END
934b03fc 235
40a1495e 236NAME: cache_peer
237TYPE: peer
1273d501 238DEFAULT: none
0153d498 239LOC: Config.peers
934b03fc 240DOC_START
241 To specify other caches in a hierarchy, use the format:
242
6b53c392 243 cache_peer hostname type http_port icp_port
934b03fc 244
d0d41f07 245 For example,
934b03fc 246
247 # proxy icp
248 # hostname type port port options
249 # -------------------- -------- ----- ----- -----------
cf5cc17e 250 cache_peer parent.foo.net parent 3128 3130 [proxy-only]
251 cache_peer sib1.foo.net sibling 3128 3130 [proxy-only]
252 cache_peer sib2.foo.net sibling 3128 3130 [proxy-only]
934b03fc 253
254 type: either 'parent', 'sibling', or 'multicast'.
255
256 proxy_port: The port number where the cache listens for proxy
257 requests.
258
259 icp_port: Used for querying neighbor caches about
260 objects. To have a non-ICP neighbor
261 specify '7' for the ICP port and make sure the
262 neighbor machine has the UDP echo port
263 enabled in its /etc/inetd.conf file.
264
265 options: proxy-only
266 weight=n
267 ttl=n
268 no-query
269 default
270 round-robin
271 multicast-responder
b3264694 272 closest-only
46b034a4 273 no-digest
223213df 274 no-netdb-exchange
95e36d02 275 no-delay
c3b33cb7 276 login=user:password | PASS | *:password
3f62decd 277 connect-timeout=nn
7e3ce7b9 278 digest-url=url
987de783 279 allow-miss
e79a6f05 280 max-conn
934b03fc 281
282 use 'proxy-only' to specify that objects fetched
283 from this cache should not be saved locally.
284
285 use 'weight=n' to specify a weighted parent.
286 The weight must be an integer. The default weight
287 is 1, larger weights are favored more.
288
289 use 'ttl=n' to specify a IP multicast TTL to use
78a0e865 290 when sending an ICP queries to this address.
934b03fc 291 Only useful when sending to a multicast group.
292 Because we don't accept ICP replies from random
293 hosts, you must configure other group members as
294 peers with the 'multicast-responder' option below.
295
296 use 'no-query' to NOT send ICP queries to this
297 neighbor.
298
299 use 'default' if this is a parent cache which can
300 be used as a "last-resort." You should probably
301 only use 'default' in situations where you cannot
302 use ICP with your parent cache(s).
303
304 use 'round-robin' to define a set of parents which
305 should be used in a round-robin fashion in the
306 absence of any ICP queries.
307
308 'multicast-responder' indicates that the named peer
309 is a member of a multicast group. ICP queries will
310 not be sent directly to the peer, but ICP replies
311 will be accepted from it.
312
b3264694 313 'closest-only' indicates that, for ICP_OP_MISS
314 replies, we'll only forward CLOSEST_PARENT_MISSes
315 and never FIRST_PARENT_MISSes.
316
46b034a4 317 use 'no-digest' to NOT request cache digests from
318 this neighbor.
319
223213df 320 'no-netdb-exchange' disables requesting ICMP
321 RTT database (NetDB) from the neighbor.
322
95e36d02 323 use 'no-delay' to prevent access to this neighbor
324 from influencing the delay pools.
325
c68e9c6b 326 use 'login=user:password' if this is a personal/workgroup
327 proxy and your parent requires proxy authentication.
4472c779 328 Note: The string can include URL escapes (i.e. %20 for
329 spaces). This also means that % must be written as %%.
c68e9c6b 330
94439e4e 331 use 'login=PASS' if users must authenticate against
332 the upstream proxy. Note: To combine this with
333 proxy_auth both proxies must share the same user
334 database as HTTP only allows for one proxy login.
335 Also be warned that this will expose your users proxy
336 password to the parent. USE WITH CAUTION
337
c3b33cb7 338 use 'login=*:password' to pass the username to the
339 upstream cache, but with a fixed password. This is meant
340 to be used when the peer is in another administrative
341 domain, but it is still needed to identify each user.
342 The star can optionally be followed by some extra
343 information which is added to the username. This can
344 be used to identify this proxy to the peer, similar to
345 the login=username:password option above.
346
3f62decd 347 use 'connect-timeout=nn' to specify a peer
348 specific connect timeout (also see the
349 peer_connect_timeout directive)
350
7e3ce7b9 351 use 'digest-url=url' to tell Squid to fetch the cache
352 digest (if digests are enabled) for this host from
353 the specified URL rather than the Squid default
354 location.
3f62decd 355
987de783 356 use 'allow-miss' to disable Squid's use of only-if-cached
357 when forwarding requests to siblings. This is primarily
358 useful when icp_hit_stale is used by the sibling. To
359 extensive use of this option may result in forwarding
360 loops, and you should avoid having two-way peerings
361 with this option. (for example to deny peer usage on
362 requests from peer by denying cache_peer_access if the
363 source is a peer)
364
e79a6f05 365 use 'max-conn' to limit the amount of connections Squid
366 may open to this peer.
367
934b03fc 368 NOTE: non-ICP neighbors must be specified as 'parent'.
934b03fc 369DOC_END
370
af7d912e 371NAME: cache_peer_domain cache_host_domain
934b03fc 372TYPE: hostdomain
f1dc9b30 373DEFAULT: none
374LOC: none
934b03fc 375DOC_START
cf5cc17e 376 Use to limit the domains for which a neighbor cache will be
377 queried. Usage:
934b03fc 378
af7d912e 379 cache_peer_domain cache-host domain [domain ...]
380 cache_peer_domain cache-host !domain
934b03fc 381
382 For example, specifying
383
af7d912e 384 cache_peer_domain parent.foo.net .edu
934b03fc 385
386 has the effect such that UDP query packets are sent to
387 'bigserver' only when the requested object exists on a
388 server in the .edu domain. Prefixing the domainname
389 with '!' means that the cache will be queried for objects
390 NOT in that domain.
391
392 NOTE: * Any number of domains may be given for a cache-host,
393 either on the same or separate lines.
394 * When multiple domains are given for a particular
395 cache-host, the first matched domain is applied.
396 * Cache hosts with no domain restrictions are queried
397 for all requests.
398 * There are no defaults.
3794b2b6 399 * There is also a 'cache_peer_access' tag in the ACL
934b03fc 400 section.
401DOC_END
402
403
404NAME: neighbor_type_domain
405TYPE: hostdomaintype
f1dc9b30 406DEFAULT: none
407LOC: none
934b03fc 408DOC_START
409 usage: neighbor_type_domain parent|sibling domain domain ...
410
411 Modifying the neighbor type for specific domains is now
412 possible. You can treat some domains differently than the the
a95856a0 413 default neighbor type specified on the 'cache_peer' line.
934b03fc 414 Normally it should only be necessary to list domains which
415 should be treated differently because the default neighbor type
416 applies for hostnames which do not match domains listed here.
417
418EXAMPLE:
a95856a0 419 cache_peer parent cache.foo.org 3128 3130
934b03fc 420 neighbor_type_domain cache.foo.org sibling .com .net
421 neighbor_type_domain cache.foo.org sibling .au .de
422DOC_END
423
465dc415 424NAME: icp_query_timeout
425COMMENT: (msec)
426DEFAULT: 0
427TYPE: int
428LOC: Config.Timeout.icp_query
934b03fc 429DOC_START
465dc415 430 Normally Squid will automatically determine an optimal ICP
431 query timeout value based on the round-trip-time of recent ICP
432 queries. If you want to override the value determined by
433 Squid, set this 'icp_query_timeout' to a non-zero value. This
434 value is specified in MILLISECONDS, so, to use a 2-second
435 timeout (the old default), you would write:
934b03fc 436
465dc415 437 icp_query_timeout 2000
465dc415 438DOC_END
439
28993292 440NAME: maximum_icp_query_timeout
441COMMENT: (msec)
442DEFAULT: 2000
443TYPE: int
444LOC: Config.Timeout.icp_query_max
445DOC_START
efd900cb 446 Normally the ICP query timeout is determined dynamically. But
447 sometimes it can lead to very large values (say 5 seconds).
448 Use this option to put an upper limit on the dynamic timeout
449 value. Do NOT use this option to always use a fixed (instead
e0d5ba83 450 of a dynamic) timeout value. To set a fixed timeout see the
451 'icp_query_timeout' directive.
28993292 452DOC_END
453
465dc415 454NAME: mcast_icp_query_timeout
455COMMENT: (msec)
456DEFAULT: 2000
457TYPE: int
458LOC: Config.Timeout.mcast_icp_query
459DOC_START
460 For Multicast peers, Squid regularly sends out ICP "probes" to
461 count how many other peers are listening on the given multicast
462 address. This value specifies how long Squid should wait to
463 count all the replies. The default is 2000 msec, or 2
464 seconds.
934b03fc 465DOC_END
466
dc835977 467NAME: dead_peer_timeout
468COMMENT: (seconds)
469DEFAULT: 10 seconds
470TYPE: time_t
471LOC: Config.Timeout.deadPeer
472DOC_START
473 This controls how long Squid waits to declare a peer cache
474 as "dead." If there are no ICP replies received in this
475 amount of time, Squid will declare the peer dead and not
476 expect to receive any further ICP replies. However, it
477 continues to send ICP queries, and will mark the peer as
478 alive upon receipt of the first subsequent ICP reply.
479
a8ad9a81 480 This timeout also affects when Squid expects to receive ICP
481 replies from peers. If more than 'dead_peer' seconds have
482 passed since the last ICP reply was received, Squid will not
483 expect to receive an ICP reply on the next query. Thus, if
484 your time between requests is greater than this timeout, you
485 will see a lot of requests sent DIRECT to origin servers
486 instead of to your parents.
dc835977 487DOC_END
488
934b03fc 489
490NAME: hierarchy_stoplist
491TYPE: wordlist
f8d9f54a 492DEFAULT: none
934b03fc 493LOC: Config.hierarchy_stoplist
494DOC_START
495 A list of words which, if found in a URL, cause the object to
496 be handled directly by this cache. In other words, use this
497 to not query neighbor caches for certain objects. You may
498 list this option multiple times.
6b53c392 499NOCOMMENT_START
500#We recommend you to use at least the following line.
934b03fc 501hierarchy_stoplist cgi-bin ?
6b53c392 502NOCOMMENT_END
934b03fc 503DOC_END
504
505
bd05e3e3 506NAME: no_cache
507TYPE: acl_access
508DEFAULT: none
509LOC: Config.accessList.noCache
934b03fc 510DOC_START
d08a99eb 511 A list of ACL elements which, if matched, cause the request to
512 not be satisfied from the cache and the reply to not be cached.
513 In other words, use this to force certain objects to never be cached.
934b03fc 514
b269cf4e 515 You must use the word 'DENY' to indicate the ACL names which should
516 NOT be cached.
0fdafae7 517
6b53c392 518NOCOMMENT_START
519#We recommend you to use the following two lines.
bd05e3e3 520acl QUERY urlpath_regex cgi-bin \?
b269cf4e 521no_cache deny QUERY
6b53c392 522NOCOMMENT_END
934b03fc 523DOC_END
524
934b03fc 525
0f74202c 526COMMENT_START
3a278cb8 527 OPTIONS WHICH AFFECT THE CACHE SIZE
528 -----------------------------------------------------------------------------
0f74202c 529COMMENT_END
934b03fc 530
531NAME: cache_mem
9906e724 532COMMENT: (bytes)
1b635117 533TYPE: b_size_t
9906e724 534DEFAULT: 8 MB
43a70238 535LOC: Config.memMaxSize
934b03fc 536DOC_START
7b2496ca 537 NOTE: THIS PARAMETER DOES NOT SPECIFY THE MAXIMUM PROCESS
538 SIZE. IT PLACES A LIMIT ON ONE ASPECT OF SQUID'S MEMORY
539 USAGE. SQUID USES MEMORY FOR OTHER THINGS AS WELL.
540 YOUR PROCESS WILL PROBABLY BECOME TWICE OR THREE TIMES
96d88dcb 541 BIGGER THAN THE VALUE YOU PUT HERE
7b2496ca 542
543 'cache_mem' specifies the ideal amount of memory to be used
544 for:
545 * In-Transit objects
546 * Hot Objects
547 * Negative-Cached objects
548
549 Data for these objects are stored in 4 KB blocks. This
550 parameter specifies the ideal upper limit on the total size of
551 4 KB blocks allocated. In-Transit objects take the highest
552 priority.
934b03fc 553
554 In-transit objects have priority over the others. When
555 additional space is needed for incoming data, negative-cached
556 and hot objects will be released. In other words, the
557 negative-cached and hot objects will fill up any unused space
558 not needed for in-transit objects.
559
7b2496ca 560 If circumstances require, this limit will be exceeded.
561 Specifically, if your incoming request rate requires more than
562 'cache_mem' of memory to hold in-transit objects, Squid will
563 exceed this limit to satisfy the new requests. When the load
564 decreases, blocks will be freed until the high-water mark is
565 reached. Thereafter, blocks will be used to store hot
566 objects.
934b03fc 567DOC_END
568
569
570NAME: cache_swap_low
571COMMENT: (percent, 0-100)
572TYPE: int
573DEFAULT: 90
574LOC: Config.Swap.lowWaterMark
575DOC_NONE
576
577NAME: cache_swap_high
578COMMENT: (percent, 0-100)
579TYPE: int
580DEFAULT: 95
581LOC: Config.Swap.highWaterMark
582DOC_START
2b906e48 583
584 The low- and high-water marks for cache object replacement.
585 Replacement begins when the swap (disk) usage is above the
586 low-water mark and attempts to maintain utilization near the
587 low-water mark. As swap utilization gets close to high-water
588 mark object eviction becomes more aggressive. If utilization is
589 close to the low-water mark less replacement is done each time.
590
591 Defaults are 90% and 95%. If you have a large cache, 5% could be
592 hundreds of MB. If this is the case you may wish to set these
593 numbers closer together.
934b03fc 594DOC_END
595
934b03fc 596NAME: maximum_object_size
9e975e4e 597COMMENT: (bytes)
1b635117 598TYPE: b_size_t
9906e724 599DEFAULT: 4096 KB
934b03fc 600LOC: Config.Store.maxObjectSize
601DOC_START
602 Objects larger than this size will NOT be saved on disk. The
cf5cc17e 603 value is specified in kilobytes, and the default is 4MB. If
604 you wish to get a high BYTES hit ratio, you should probably
605 increase this (one 32 MB object hit counts for 3200 10KB
606 hits). If you wish to increase speed more than your want to
607 save bandwidth you should leave this low.
934b03fc 608
2b906e48 609 NOTE: if using the LFUDA replacement policy you should increase
610 this value to maximize the byte hit rate improvement of LFUDA!
611 See replacement_policy below for a discussion of this policy.
934b03fc 612DOC_END
613
d20b1cd0 614NAME: minimum_object_size
615COMMENT: (bytes)
616TYPE: b_size_t
617DEFAULT: 0 KB
618LOC: Config.Store.minObjectSize
619DOC_START
620 Objects smaller than this size will NOT be saved on disk. The
621 value is specified in kilobytes, and the default is 0 KB, which
622 means there is no minimum.
623DOC_END
934b03fc 624
16689110 625NAME: maximum_object_size_in_memory
626COMMENT: (bytes)
627TYPE: b_size_t
628DEFAULT: 8 KB
629LOC: Config.Store.maxInMemObjSize
630DOC_START
631 Objects greater than this size will not be attempted to kept in
632 the memory cache. This should be set high enough to keep objects
633 accessed frequently in memory to improve performance whilst low
634 enough to keep larger objects from hoarding cache_mem .
635DOC_END
636
934b03fc 637NAME: ipcache_size
638COMMENT: (number of entries)
639TYPE: int
640DEFAULT: 1024
641LOC: Config.ipcache.size
642DOC_NONE
643
644NAME: ipcache_low
645COMMENT: (percent)
646TYPE: int
647DEFAULT: 90
648LOC: Config.ipcache.low
649DOC_NONE
650
651NAME: ipcache_high
652COMMENT: (percent)
653TYPE: int
654DEFAULT: 95
655LOC: Config.ipcache.high
656DOC_START
657 The size, low-, and high-water marks for the IP cache.
934b03fc 658DOC_END
659
e55650e3 660NAME: fqdncache_size
661COMMENT: (number of entries)
662TYPE: int
663DEFAULT: 1024
664LOC: Config.fqdncache.size
665DOC_START
666 Maximum number of FQDN cache entries.
e55650e3 667DOC_END
668
6a566b9c 669NAME: cache_replacement_policy
670TYPE: removalpolicy
671LOC: Config.replPolicy
672DEFAULT: lru
673DOC_START
674 The cache replacement policy parameter determines which
675 objects are evicted (replaced) when disk space is needed.
676
677 lru : Squid's original list based LRU policy
678 heap GDSF : Greedy-Dual Size Frequency
679 heap LFUDA: Least Frequently Used with Dynamic Aging
680 heap LRU : LRU policy implemented using a heap
681
682 Applies to any cache_dir lines listed below this.
683
684 The LRU policies keeps recently referenced objects.
685
686 The heap GDSF policy optimizes object hit rate by keeping smaller
687 popular objects in cache so it has a better chance of getting a
688 hit. It achieves a lower byte hit rate than LFUDA though since
689 it evicts larger (possibly popular) objects.
690
691 The heap LFUDA policy keeps popular objects in cache regardless of
692 their size and thus optimizes byte hit rate at the expense of
693 hit rate since one large, popular object will prevent many
694 smaller, slightly less popular objects from being cached.
695
696 Both policies utilize a dynamic aging mechanism that prevents
697 cache pollution that can otherwise occur with frequency-based
698 replacement policies.
699
700 NOTE: if using the LFUDA replacement policy you should increase
701 the value of maximum_object_size above its default of 4096 KB to
96d88dcb 702 to maximize the potential byte hit rate improvement of LFUDA.
6a566b9c 703
704 For more information about the GDSF and LFUDA cache replacement
705 policies see http://www.hpl.hp.com/techreports/1999/HPL-1999-69.html
706 and http://fog.hpl.external.hp.com/techreports/98/HPL-98-173.html.
707DOC_END
708
709NAME: memory_replacement_policy
710TYPE: removalpolicy
711LOC: Config.memPolicy
712DEFAULT: lru
713DOC_START
714 The memory replacement policy parameter determines which
715 objects are purged from memory when memory space is needed.
716
717 See cache_replacement_policy for details.
718DOC_END
719
720
0f74202c 721COMMENT_START
3a278cb8 722 LOGFILE PATHNAMES AND CACHE DIRECTORIES
723 -----------------------------------------------------------------------------
0f74202c 724COMMENT_END
934b03fc 725
726NAME: cache_dir
727TYPE: cachedir
f1dc9b30 728DEFAULT: none
8e8d4f30 729DEFAULT_IF_NONE: ufs @DEFAULT_SWAP_DIR@ 100 16 256
f1dc9b30 730LOC: Config.cacheSwap
934b03fc 731DOC_START
cf5cc17e 732 Usage:
733
8e8d4f30 734 cache_dir Type Directory-Name Fs-specific-data [options]
934b03fc 735
1f7c9178 736 cache_dir diskd Maxobjsize Directory-Name MB L1 L2 Q1 Q2
737
934b03fc 738 You can specify multiple cache_dir lines to spread the
739 cache among different disk partitions.
740
efd900cb 741 Type specifies the kind of storage system to use. Most
742 everyone will want to use "ufs" as the type. If you are using
743 Async I/O (--enable async-io) on Linux or Solaris, then you may
4813a665 744 want to try "aufs" as the type. Async IO support may be
efd900cb 745 buggy, however, so beware.
9bc73deb 746
cf5cc17e 747 'Directory' is a top-level directory where cache swap
748 files will be stored. If you want to use an entire disk
749 for caching, then this can be the mount-point directory.
750 The directory must exist and be writable by the Squid
751 process. Squid will NOT create this directory for you.
752
8e8d4f30 753 The ufs store type:
754
755 "ufs" is the old well-known Squid storage format that has always
756 been there.
757
758 cache_dir ufs Directory-Name Mbytes L1 L2 [options]
cf5cc17e 759
760 'Mbytes' is the amount of disk space (MB) to use under this
761 directory. The default is 100 MB. Change this to suit your
762 configuration.
763
764 'Level-1' is the number of first-level subdirectories which
765 will be created under the 'Directory'. The default is 16.
766
767 'Level-2' is the number of second-level subdirectories which
768 will be created under each first-level directory. The default
769 is 256.
d1595b77 770
8e8d4f30 771 The aufs store type:
772
773 "aufs" uses the same storage format as "ufs", utilizing
774 POSIX-threads to avoid blocking the main Squid process on
775 disk-I/O. This was formerly known in Squid as async-io.
776
777 cache_dir aufs Directory-Name Mbytes L1 L2 [options]
778
779 see argument descriptions under ufs above
780
781 The diskd store type:
782
783 "diskd" uses the same storage format as "ufs", utilizing a
784 separate process to avoid blocking the main Squid process on
785 disk-I/O.
786
787 cache_dir diskd Directory-Name Mbytes L1 L2 [options] [Q1=n] [Q2=n]
788
789 see argument descriptions under ufs above
790
791 Q1 specifies the number of unacknowledged I/O requests when Squid
792 stops opening new files. If this many messages are in the queues,
793 Squid won't open new files. Default is 64
794
d1595b77 795 Q2 specifies the number of unacknowledged messages when Squid
796 starts blocking. If this many messages are in the queues,
8e8d4f30 797 Squid blocks until it recevies some replies. Default is 72
798
799 Common options:
800
801 read-only, this cache_dir is read only.
802
803 max-size=n, refers to the max object size this storedir supports.
804 It is used to initially choose the storedir to dump the object.
805 Note: To make optimal use of the max-size limits you should order
806 the cache_dir lines with the smallest max-size value first and the
807 ones with no max-size specification last.
934b03fc 808DOC_END
809
810
811NAME: cache_access_log
812TYPE: string
d0b98f84 813DEFAULT: @DEFAULT_ACCESS_LOG@
934b03fc 814LOC: Config.Log.access
815DOC_START
816 Logs the client request activity. Contains an entry for
0eb83825 817 every HTTP and ICP queries received. To disable, enter "none".
934b03fc 818DOC_END
819
820
821NAME: cache_log
822TYPE: string
0153d498 823DEFAULT: @DEFAULT_CACHE_LOG@
934b03fc 824LOC: Config.Log.log
825DOC_START
cf5cc17e 826 Cache logging file. This is where general information about
efd900cb 827 your cache's behavior goes. You can increase the amount of data
cf5cc17e 828 logged to this file with the "debug_options" tag below.
934b03fc 829DOC_END
830
831
832NAME: cache_store_log
833TYPE: string
0153d498 834DEFAULT: @DEFAULT_STORE_LOG@
934b03fc 835LOC: Config.Log.store
836DOC_START
837 Logs the activities of the storage manager. Shows which
838 objects are ejected from the cache, and which objects are
cf5cc17e 839 saved and for how long. To disable, enter "none". There are
efd900cb 840 not really utilities to analyze this data, so you can safely
cf5cc17e 841 disable it.
934b03fc 842DOC_END
843
844
845NAME: cache_swap_log
846TYPE: string
847LOC: Config.Log.swap
1273d501 848DEFAULT: none
934b03fc 849DOC_START
d0d3ec94 850 Location for the cache "swap.log." This log file holds the
934b03fc 851 metadata of objects saved on disk. It is used to rebuild the
a80e50c7 852 cache during startup. Normally this file resides in each
934b03fc 853 'cache_dir' directory, but you may specify an alternate
854 pathname here. Note you must give a full filename, not just
cf5cc17e 855 a directory. Since this is the index for the whole object
856 list you CANNOT periodically rotate it!
934b03fc 857
a80e50c7 858 If %s can be used in the file name then it will be replaced with a
859 a representation of the cache_dir name where each / is replaced
860 with '.'. This is needed to allow adding/removing cache_dir
861 lines when cache_swap_log is being used.
96d88dcb 862
a80e50c7 863 If have more than one 'cache_dir', and %s is not used in the name
864 then these swap logs will have names such as:
710df4ca 865
866 cache_swap_log.00
867 cache_swap_log.01
868 cache_swap_log.02
869
870 The numbered extension (which is added automatically)
871 corresponds to the order of the 'cache_dir' lines in this
872 configuration file. If you change the order of the 'cache_dir'
873 lines in this file, then these log files will NOT correspond to
874 the correct 'cache_dir' entry (unless you manually rename
875 them). We recommend that you do NOT use this option. It is
876 better to keep these log files in each 'cache_dir' directory.
934b03fc 877DOC_END
878
879
880NAME: emulate_httpd_log
881COMMENT: on|off
882TYPE: onoff
f1dc9b30 883DEFAULT: off
17a0a4ee 884LOC: Config.onoff.common_log
934b03fc 885DOC_START
886 The Cache can emulate the log file format which many 'httpd'
887 programs use. To disable/enable this emulation, set
888 emulate_httpd_log to 'off' or 'on'. The default
cf5cc17e 889 is to use the native log format since it includes useful
efd900cb 890 information that Squid-specific log analyzers use.
934b03fc 891DOC_END
892
890b0fa8 893NAME: log_ip_on_direct
894COMMENT: on|off
895TYPE: onoff
896DEFAULT: on
897LOC: Config.onoff.log_ip_on_direct
898DOC_START
899 Log the destination IP address in the hierarchy log tag when going
900 direct. Earlier Squid versions logged the hostname here. If you
901 prefer the old way set this to off.
890b0fa8 902DOC_END
934b03fc 903
904NAME: mime_table
f0b19334 905TYPE: string
0153d498 906DEFAULT: @DEFAULT_MIME_TABLE@
934b03fc 907LOC: Config.mimeTablePathname
908DOC_START
cf5cc17e 909 Pathname to Squid's MIME table. You shouldn't need to change
910 this, but the default file contains examples and formatting
911 information if you do.
934b03fc 912DOC_END
913
914
915NAME: log_mime_hdrs
916COMMENT: on|off
917TYPE: onoff
17a0a4ee 918LOC: Config.onoff.log_mime_hdrs
f1dc9b30 919DEFAULT: off
934b03fc 920DOC_START
cf5cc17e 921 The Cache can record both the request and the response MIME
922 headers for each HTTP transaction. The headers are encoded
923 safely and will appear as two bracketed fields at the end of
924 the access log (for either the native or httpd-emulated log
925 formats). To enable this logging set log_mime_hdrs to 'on'.
934b03fc 926DOC_END
927
928
929NAME: useragent_log
930TYPE: string
931LOC: Config.Log.useragent
f1dc9b30 932DEFAULT: none
6b53c392 933IFDEF: USE_USERAGENT_LOG
934b03fc 934DOC_START
6b53c392 935 Squid will write the User-Agent field from HTTP requests
936 to the filename specified here. By default useragent_log
937 is disabled.
934b03fc 938DOC_END
939
940
fd2c5549 941NAME: referer_log
942TYPE: string
943LOC: Config.Log.referer
944DEFAULT: none
b81f1cf3 945IFDEF: USE_REFERER_LOG
fd2c5549 946DOC_START
b81f1cf3 947 Squid will write the Referer field from HTTP requests to the
948 filename specified here. By default referer_log is disabled.
fd2c5549 949DOC_END
950
951
934b03fc 952NAME: pid_filename
953TYPE: string
0153d498 954DEFAULT: @DEFAULT_PID_FILE@
934b03fc 955LOC: Config.pidFilename
956DOC_START
d0d41f07 957 A filename to write the process-id to. To disable, enter "none".
934b03fc 958DOC_END
959
960
961NAME: debug_options
f1dc9b30 962TYPE: eol
934b03fc 963DEFAULT: ALL,1
964LOC: Config.debugOptions
965DOC_START
966 Logging options are set as section,level where each source file
967 is assigned a unique section. Lower levels result in less
968 output, Full debugging (level 9) can result in a very large
969 log file, so be careful. The magic word "ALL" sets debugging
970 levels for all sections. We recommend normally running with
971 "ALL,1".
934b03fc 972DOC_END
973
974
934b03fc 975NAME: log_fqdn
976COMMENT: on|off
977TYPE: onoff
f1dc9b30 978DEFAULT: off
17a0a4ee 979LOC: Config.onoff.log_fqdn
934b03fc 980DOC_START
981 Turn this on if you wish to log fully qualified domain names
cf5cc17e 982 in the access.log. To do this Squid does a DNS lookup of all
983 IP's connecting to it. This can (in some situations) increase
984 latency, which makes your cache seem slower for interactive
96d88dcb 985 browsing.
934b03fc 986DOC_END
987
988
989NAME: client_netmask
990TYPE: address
991LOC: Config.Addrs.client_netmask
f1dc9b30 992DEFAULT: 255.255.255.255
934b03fc 993DOC_START
994 A netmask for client addresses in logfiles and cachemgr output.
995 Change this to protect the privacy of your cache clients.
cf5cc17e 996 A netmask of 255.255.255.0 will log all IP's in that range with
997 the last digit set to '0'.
934b03fc 998DOC_END
999
1000
0f74202c 1001COMMENT_START
3a278cb8 1002 OPTIONS FOR EXTERNAL SUPPORT PROGRAMS
1003 -----------------------------------------------------------------------------
0f74202c 1004COMMENT_END
934b03fc 1005
934b03fc 1006NAME: ftp_user
1007TYPE: string
cf5cc17e 1008DEFAULT: Squid@
934b03fc 1009LOC: Config.Ftp.anon_user
1010DOC_START
1011 If you want the anonymous login password to be more informative
1012 (and enable the use of picky ftp servers), set this to something
efd900cb 1013 reasonable for your domain, like wwwuser@somewhere.net
934b03fc 1014
1015 The reason why this is domainless by default is that the
1016 request can be made on the behalf of a user in any domain,
1017 depending on how the cache is used.
1018 Some ftp server also validate that the email address is valid
1019 (for example perl.com).
934b03fc 1020DOC_END
1021
365cb147 1022NAME: ftp_list_width
1b635117 1023TYPE: size_t
365cb147 1024DEFAULT: 32
1025LOC: Config.Ftp.list_width
1026DOC_START
cf5cc17e 1027 Sets the width of ftp listings. This should be set to fit in
1028 the width of a standard browser. Setting this too small
1029 can cut off long filenames when browsing ftp sites.
365cb147 1030DOC_END
1031
d20b1cd0 1032NAME: ftp_passive
1033TYPE: onoff
1034DEFAULT: on
1035LOC: Config.Ftp.passive
1036DOC_START
1037 If your firewall does not allow Squid to use passive
1038 connections, then turn off this option.
1039DOC_END
1040
934b03fc 1041NAME: cache_dns_program
f0b19334 1042TYPE: string
589c90de 1043IFDEF: USE_DNSSERVERS
0153d498 1044DEFAULT: @DEFAULT_DNSSERVER@
934b03fc 1045LOC: Config.Program.dnsserver
1046DOC_START
1047 Specify the location of the executable for dnslookup process.
934b03fc 1048DOC_END
1049
934b03fc 1050NAME: dns_children
1051TYPE: int
6b53c392 1052IFDEF: USE_DNSSERVERS
934b03fc 1053DEFAULT: 5
1054LOC: Config.dnsChildren
1055DOC_START
1056 The number of processes spawn to service DNS name lookups.
1057 For heavily loaded caches on large servers, you should
1058 probably increase this value to at least 10. The maximum
1059 is 32. The default is 5.
1060
efd900cb 1061 You must have at least one dnsserver process.
934b03fc 1062DOC_END
1063
4fe0e1d0 1064NAME: dns_retransmit_interval
1065TYPE: time_t
1066DEFAULT: 5 seconds
1067LOC: Config.Timeout.idns_retransmit
1068IFDEF: !USE_DNSSERVERS
1069DOC_START
1070 Initial retransmit interval for DNS queries. The interval is
1071 doubled each time all configured DNS servers have been tried.
1072
1073DOC_END
1074
1075NAME: dns_timeout
1076TYPE: time_t
1077DEFAULT: 5 minutes
1078LOC: Config.Timeout.idns_query
1079IFDEF: !USE_DNSSERVERS
1080DOC_START
1081 DNS Query timeout. If no response is received to a DNS query
1082 within this time then all DNS servers for the queried domain
1083 is assumed to be unavailable.
1084DOC_END
934b03fc 1085
1086NAME: dns_defnames
1087COMMENT: on|off
589c90de 1088IFDEF: USE_DNSSERVERS
934b03fc 1089TYPE: onoff
f1dc9b30 1090DEFAULT: off
17a0a4ee 1091LOC: Config.onoff.res_defnames
6b53c392 1092IFDEF: USE_DNSSERVERS
934b03fc 1093DOC_START
1094 Normally the 'dnsserver' disables the RES_DEFNAMES resolver
1095 option (see res_init(3)). This prevents caches in a hierarchy
1096 from interpreting single-component hostnames locally. To allow
1097 dnsserver to handle single-component names, enable this
1098 option.
934b03fc 1099DOC_END
1100
09c483ec 1101NAME: dns_nameservers
1102TYPE: wordlist
1103DEFAULT: none
1104LOC: Config.dns_nameservers
1105DOC_START
1106 Use this if you want to specify a list of DNS name servers
1107 (IP addresses) to use instead of those given in your
1108 /etc/resolv.conf file.
1109
1110 Example: dns_nameservers 10.0.0.1 192.172.0.4
09c483ec 1111DOC_END
1112
0e70aa1e 1113NAME: hosts_file
1114TYPE: string
1115DEFAULT: /etc/hosts
1116LOC: Config.etcHostsPath
1117DOC_START
1118 Location of the host-local IP name-address associations
1119 database. Most Operating Systems have such a file: under
1120 Un*X it's by default in /etc/hosts MS-Windows NT/2000 places
1121 that in %SystemRoot%(by default
1122 c:\winnt)\system32\drivers\etc\hosts, while Windows 9x/ME
1123 places that in %windir%(usually c:\windows)\hosts
1124
1125 The file contains newline-separated definitions, in the
1126 form ip_address_in_dotted_form name [name ...] names are
1127 whitespace-separated. lines beginnng with an hash (#)
1128 character are comments.
1129
1130 The file is checked at startup and upon configuration. If
1131 set to 'none', it won't be checked. If append_domain is
1132 used, that domain will be added to domain-local (i.e. not
1133 containing any dot character) host definitions.
1134DOC_END
934b03fc 1135
be7d89d4 1136NAME: diskd_program
1137TYPE: string
1138DEFAULT: @DEFAULT_DISKD@
1139LOC: Config.Program.diskd
1140DOC_START
1141 Specify the location of the diskd executable.
1142 Note that this is only useful if you have compiled in
1143 diskd as one of the store io modules.
1144DOC_END
1145
934b03fc 1146NAME: unlinkd_program
a3d0a19d 1147IFDEF: USE_UNLINKD
f0b19334 1148TYPE: string
0153d498 1149DEFAULT: @DEFAULT_UNLINKD@
934b03fc 1150LOC: Config.Program.unlinkd
1151DOC_START
1152 Specify the location of the executable for file deletion process.
934b03fc 1153DOC_END
1154
934b03fc 1155NAME: pinger_program
a95856a0 1156TYPE: string
0153d498 1157DEFAULT: @DEFAULT_PINGER@
934b03fc 1158LOC: Config.Program.pinger
6b53c392 1159IFDEF: USE_ICMP
934b03fc 1160DOC_START
1161 Specify the location of the executable for the pinger process.
d20b1cd0 1162 This is only useful if you configured Squid (during compilation)
1163 with the '--enable-icmp' option.
934b03fc 1164DOC_END
1165
1166
1167NAME: redirect_program
c6d5b87b 1168TYPE: wordlist
934b03fc 1169LOC: Config.Program.redirect
62607543 1170DEFAULT: none
934b03fc 1171DOC_START
1172 Specify the location of the executable for the URL redirector.
cf5cc17e 1173 Since they can perform almost any function there isn't one included.
3f94eab9 1174 See the FAQ (section 15) for information on how to write one.
cf5cc17e 1175 By default, a redirector is not used.
934b03fc 1176DOC_END
1177
1178
1179NAME: redirect_children
1180TYPE: int
1181DEFAULT: 5
1182LOC: Config.redirectChildren
1183DOC_START
cf5cc17e 1184 The number of redirector processes to spawn. If you start
1185 too few Squid will have to wait for them to process a backlog of
1186 URLs, slowing it down. If you start too many they will use RAM
1187 and other system resources.
934b03fc 1188DOC_END
1189
c68e9c6b 1190NAME: redirect_rewrites_host_header
1191TYPE: onoff
1192DEFAULT: on
1193LOC: Config.onoff.redir_rewrites_host
1194DOC_START
7e3ce7b9 1195 By default Squid rewrites any Host: header in redirected
1196 requests. If you are running a accelerator then this may
1197 not be a wanted effect of a redirector.
c68e9c6b 1198DOC_END
1199
9bc73deb 1200NAME: redirector_access
1201TYPE: acl_access
1202DEFAULT: none
1203LOC: Config.accessList.redirector
1204DOC_START
1205 If defined, this access list specifies which requests are
1206 sent to the redirector processes. By default all requests
1207 are sent.
1208DOC_END
1209
94439e4e 1210NAME: auth_param
1211TYPE: authparam
1212LOC: Config.authConfig
73e67ee0 1213DEFAULT: none
1214DOC_START
94439e4e 1215 This is used to pass parameters to the various authentication
1216 schemes.
1217 format: auth_param scheme parameter [setting]
1218
1219 auth_param basic program @DEFAULT_PREFIX@/bin/ncsa_auth @DEFAULT_PREFIX@/etc/passwd
1220 would tell the basic authentication scheme it's program parameter.
1221
1222 The order that authentication prompts are presented to the client_agent
1223 is dependant on the order the scheme first appears in config file.
1224 IE has a bug (it's not rfc 2617 compliant) in that it will use the basic
1225 scheme if basic is the first entry presented, even if more secure schemes
1226 are presented. For now use the order in the file below. If other browsers
1227 have difficulties (don't recognise the schemes offered even if you are using
1228 basic) then either put basic first, or disable the other schemes (by commenting
1229 out their program entry).
1230
2d70df72 1231 Once an authentication scheme is fully configured, it can only be shutdown
1232 by shutting squid down and restarting. Changes can be made on the fly and
96d88dcb 1233 activated with a reconfigure. I.E. You can change to a different helper,
2d70df72 1234 but not unconfigure the helper completely.
1235
94439e4e 1236 === Parameters for the basic scheme follow. ===
1237
1238 "program" cmdline
6c20b822 1239 Specify the command for the external authenticator. Such a
1240 program reads a line containing "username password" and replies
1241 "OK" or "ERR" in an endless loop. If you use an authenticator,
1242 make sure you have 1 acl of type proxy_auth. By default, the
94439e4e 1243 authenticate_program is not used.
73e67ee0 1244
6c20b822 1245 If you want to use the traditional proxy authentication,
1246 jump over to the ../auth_modules/NCSA directory and
1247 type:
1248 % make
1249 % make install
73e67ee0 1250
6c20b822 1251 Then, set this line to something like
73e67ee0 1252
94439e4e 1253 auth_param basic program @DEFAULT_PREFIX@/bin/ncsa_auth @DEFAULT_PREFIX@/etc/passwd
73e67ee0 1254
94439e4e 1255 "children" numberofchildren
1256 The number of authenticator processes to spawn (no default). If you
73e67ee0 1257 start too few Squid will have to wait for them to process a backlog
1258 of usercode/password verifications, slowing it down. When password
1259 verifications are done via a (slow) network you are likely to need
1260 lots of authenticator processes.
94439e4e 1261 auth_param basic children 5
1262
1263 "realm" realmstring
1264 Specifies the realm name which is to be reported to the client for
1265 the basic proxy authentication scheme (part of the text the user will
1266 see when prompted their username and password). Their is no default.
1267 auth_param basic realm Squid proxy-caching web server
1268
1269 "credentialsttl" timetolive
1270 Specifies how long squid assumes an externally validated username:password
96d88dcb 1271 pair is valid for - in other words how often the helper program is called
94439e4e 1272 for that user. Set this low to force revalidation with short lived passwords.
1273 Note that setting this high does not impact your susceptability to replay
1274 attacks unless you are using a one-time password system (such as SecureID).
1275 If you are using such a system, you will be vulnerable to replay attacks
1276 unless you also enable the IP ttl is strict option.
1277
2d70df72 1278 === Parameters for the digest scheme follow ===
1279
1280 "program" cmdline
1281 Specify the command for the external authenticator. Such a
1282 program reads a line containing "username":"realm" and replies
1283 with the appropriate H(A1) value base64 encoded. See rfc 2616 for
1284 the definition of H(A1). If you use an authenticator,
96d88dcb 1285 make sure you have 1 acl of type proxy_auth. By default,
2d70df72 1286 authentication is not used.
1287
1288 If you want to use build a authenticator,
96d88dcb 1289 jump over to the ../digest_auth_modules directory and choose the
2d70df72 1290 authenticator to use. It it's directory type
1291 % make
1292 % make install
1293
1294 Then, set this line to something like
1295
1296 auth_param digest program @DEFAULT_PREFIX@/bin/digest_auth_pw @DEFAULT_PREFIX@/etc/digpass
1297
1298
1299 "children" numberofchildren
1300 The number of authenticator processes to spawn (no default). If you
1301 start too few Squid will have to wait for them to process a backlog
1302 of H(A1) calculations, slowing it down. When the H(A1) calculations
96d88dcb 1303 are done via a (slow) network you are likely to need lots of
2d70df72 1304 authenticator processes.
1305 auth_param digest children 5
1306
1307 "realm" realmstring
1308 Specifies the realm name which is to be reported to the client for
1309 the digest proxy authentication scheme (part of the text the user will
1310 see when prompted their username and password). There is no default.
1311 auth_param digest realm Squid proxy-caching web server
1312
1313 "nonce_garbage_interval" timeinterval
1314 Specifies the interval that nonces that have been issued to client_agent's
1315 are checked for validity.
1316
1317 "nonce_max_duration" timeinterval
96d88dcb 1318 Specifies the maximum length of time a given nonce will be valid for.
2d70df72 1319
1320 "nonce_max_count" number
1321 Specifies the maximum number of times a given nonce can be used.
1322
94439e4e 1323 === NTLM scheme options follow ===
1324
1325 "program" cmdline
1326 Specify the command for the external ntlm authenticator. Such a
1327 program reads a line containing the uuencoded NEGOTIATE and replies
1328 with the ntlm CHALLENGE, then waits for the response and answers with
1329 "OK" or "ERR" in an endless loop. If you use an ntlm authenticator,
1330 make sure you have 1 acl of type proxy_auth. By default, the
1331 ntlm authenticator_program is not used.
1332
1333 auth_param ntlm program @DEFAULT_PREFIX@/bin/ntlm_auth
1334
1335 "children" numberofchildren
1336 The number of authenticator processes to spawn (no default). If you
1337 start too few Squid will have to wait for them to process a backlog
1338 of credential verifications, slowing it down. When crendential
1339 verifications are done via a (slow) network you are likely to need
1340 lots of authenticator processes.
1341 auth_param ntlm children 5
1342
1343 "max_challenge_reuses" number
1344 The maximum number of times a challenge given by a ntlm authentication
96d88dcb 1345 helper can be reused. Increasing this number increases your exposure
1346 to replay attacks on your network. 0 means use the challenge only once.
94439e4e 1347 (disable challenge caching)
1348 See max_ntlm_challenge_lifetime for more information.
1349 auth_param ntlm max_challenge_reuses 0
1350
1351 "max_challenge_lifetime" timespan
1352 The maximum time period that a ntlm challenge is reused over.
96d88dcb 1353 The actual period will be the minimum of this time AND the number of
94439e4e 1354 reused challenges.
1355 auth_param ntlm max_challenge_lifetime 2 minutes
1356
1357NOCOMMENT_START
1358#Recommended minimum configuration:
2d70df72 1359#auth_param digest program <uncomment and complete this line>
1360#auth_param digest children 5
1361#auth_param digest realm Squid proxy-caching web server
1362#auth_param digest nonce_garbage_interval 5 minutes
1363#auth_param digest nonce_max_duration 30 minutes
1364#auth_param digest nonce_max_count 50
94439e4e 1365#auth_param ntlm program <uncomment and complete this line to activate>
2d70df72 1366#auth_param ntlm children 5
1367#auth_param ntlm max_challenge_reuses 0
1368#auth_param ntlm max_challenge_lifetime 2 minutes
94439e4e 1369#auth_param basic program <uncomment and complete this line>
1370auth_param basic children 5
1371auth_param basic realm Squid proxy-caching web server
1372auth_param basic credentialsttl 2 hours
1373NOCOMMENT_END
1374DOC_END
1375
1376NAME: authenticate_cache_garbage_interval
1377TYPE: time_t
1378DEFAULT: 1 hour
1379LOC: Config.authenticateGCInterval
1380DOC_START
96d88dcb 1381 The time period between garbage collection across the username cache.
94439e4e 1382 This is a tradeoff between memory utilisation (long intervals - say
1383 2 days) and CPU (short intervals - say 1 minute). Only change if
1384 you have good reason to.
73e67ee0 1385DOC_END
1386
c68e9c6b 1387NAME: authenticate_ttl
70a76033 1388TYPE: time_t
1389DEFAULT: 1 hour
c68e9c6b 1390LOC: Config.authenticateTTL
1391DOC_START
94439e4e 1392 The time a user & their credentials stay in the logged in user cache
1393 since their last request. When the garbage interval passes, all
1394 user credentials that have passed their TTL are removed from memory.
c68e9c6b 1395DOC_END
1396
9bc73deb 1397NAME: authenticate_ip_ttl
70a76033 1398TYPE: time_t
9bc73deb 1399LOC: Config.authenticateIpTTL
70a76033 1400DEFAULT: 0 seconds
9bc73deb 1401DOC_START
1402 With this option you control how long a proxy authentication
1403 will be bound to a specific IP address. If a request using
1404 the same user name is received during this time then access
1405 will be denied and both users are required to reauthenticate
1406 them selves. The idea behind this is to make it annoying
1407 for people to share their password to their friends, but
1408 yet allow a dialup user to reconnect on a different dialup
1409 port.
1410
1411 The default is 0 to disable the check. Recommended value
70a76033 1412 if you have dialup users are no more than 60 seconds to allow
1413 the user to redial without hassle. If all your users are
1414 stationary then higher values may be used.
1415
60d096f4 1416 See also the acl max_user_ip.
9bc73deb 1417DOC_END
1418
0f74202c 1419COMMENT_START
3a278cb8 1420 OPTIONS FOR TUNING THE CACHE
1421 -----------------------------------------------------------------------------
0f74202c 1422COMMENT_END
934b03fc 1423
0153d498 1424NAME: wais_relay_host
1425TYPE: string
1273d501 1426DEFAULT: none
0153d498 1427LOC: Config.Wais.relayHost
1428DOC_NONE
934b03fc 1429
0153d498 1430NAME: wais_relay_port
1431TYPE: ushort
1432DEFAULT: 0
1433LOC: Config.Wais.relayPort
934b03fc 1434DOC_START
1435 Relay WAIS request to host (1st arg) at port (2 arg).
934b03fc 1436DOC_END
1437
1438
0483b991 1439NAME: request_header_max_size
1440COMMENT: (KB)
1441TYPE: b_size_t
1442DEFAULT: 10 KB
1443LOC: Config.maxRequestHeaderSize
1444DOC_START
1445 This specifies the maximum size for HTTP headers in a request.
1446 Request headers are usually relatively small (about 512 bytes).
1447 Placing a limit on the request header size will catch certain
1448 bugs (for example with persistent connections) and possibly
1449 buffer-overflow or denial-of-service attacks.
0483b991 1450DOC_END
1451
1452NAME: request_body_max_size
9906e724 1453COMMENT: (KB)
518da0bd 1454TYPE: b_size_t
ec719ae2 1455DEFAULT: 0 KB
0483b991 1456LOC: Config.maxRequestBodySize
934b03fc 1457DOC_START
0483b991 1458 This specifies the maximum size for an HTTP request body.
1459 In other words, the maximum size of a PUT/POST request.
1460 A user who attempts to send a request with a body larger
1461 than this limit receives an "Invalid Request" error message.
ec719ae2 1462 If you set this parameter to a zero (the default), there will
1463 be no limit imposed.
0483b991 1464DOC_END
934b03fc 1465
934b03fc 1466NAME: refresh_pattern
934b03fc 1467TYPE: refreshpattern
f1dc9b30 1468LOC: Config.Refresh
1273d501 1469DEFAULT: none
6b53c392 1470DEFAULT_IF_NONE: ^ftp: 1440 20% 10080
1471DEFAULT_IF_NONE: ^gopher: 1440 0% 1440
1472DEFAULT_IF_NONE: . 0 20% 4320
934b03fc 1473DOC_START
7ddc902f 1474 usage: refresh_pattern [-i] regex min percent max [options]
1475
1476 By default, regular expressions are CASE-SENSITIVE. To make
1477 them case-insensitive, use the -i option.
934b03fc 1478
7e3ce7b9 1479 'Min' is the time (in minutes) an object without an explicit
1480 expiry time should be considered fresh. The recommended
1481 value is 0, any higher values may cause dynamic applications
efd900cb 1482 to be erroneously cached unless the application designer
7e3ce7b9 1483 has taken the appropriate actions.
1484
1485 'Percent' is a percentage of the objects age (time since last
efd900cb 1486 modification age) an object without explicit expiry time
7e3ce7b9 1487 will be considered fresh.
1488
1489 'Max' is an upper limit on how long objects without an explicit
1490 expiry time will be considered fresh.
934b03fc 1491
7e3ce7b9 1492 options: overrsde-expire
1dfa1d81 1493 override-lastmod
cbe3a719 1494 reload-into-ims
1495 ignore-reload
1dfa1d81 1496
1497 override-expire enforces min age even if the server
cbe3a719 1498 sent a Expires: header. Doing this VIOLATES the HTTP
1499 standard. Enabling this feature could make you liable
1500 for problems which it causes.
1dfa1d81 1501
1502 override-lastmod enforces min age even on objects
1503 that was modified recently.
cbe3a719 1504
1505 reload-into-ims changes client no-cache or ``reload''
1506 to If-Modified-Since requests. Doing this VIOLATES the
1507 HTTP standard. Enabling this feature could make you
1508 liable for problems which it causes.
1509
1510 ignore-reload ignores a client no-cache or ``reload''
1511 header. Doing this VIOLATES the HTTP standard. Enabling
1512 this feature could make you liable for problems which
1513 it causes.
1dfa1d81 1514
934b03fc 1515 Please see the file doc/Release-Notes-1.1.txt for a full
1516 description of Squid's refresh algorithm. Basically a
1dfa1d81 1517 cached object is: (the order is changed from 1.1.X)
934b03fc 1518
1dfa1d81 1519 FRESH if expires < now, else STALE
6b8e7481 1520 STALE if age > max
1dfa1d81 1521 FRESH if lm-factor < percent, else STALE
1522 FRESH if age < min
1523 else STALE
934b03fc 1524
1525 The refresh_pattern lines are checked in the order listed here.
1526 The first entry which matches is used. If none of the entries
1527 match, then the default will be used.
1528
6b53c392 1529 Note, you must uncomment all the default lines if you want
1530 to change one. The default setting is only active if none is
1531 used.
934b03fc 1532DOC_END
1533
934b03fc 1534NAME: reference_age
f1dc9b30 1535TYPE: time_t
934b03fc 1536LOC: Config.referenceAge
f1dc9b30 1537DEFAULT: 1 year
934b03fc 1538DOC_START
1539 As a part of normal operation, Squid performs Least Recently
1540 Used removal of cached objects. The LRU age for removal is
1541 computed dynamically, based on the amount of disk space in
6778c757 1542 use. The dynamic value can be seen in the Cache Manager 'info'
1543 output.
1544
1545 The 'reference_age' parameter defines the maximum LRU age. For
1546 example, setting reference_age to '1 week' will cause objects
1547 to be removed if they have not been accessed for a week or
7e3ce7b9 1548 more. The default value is one year.
934b03fc 1549
1550 Specify a number here, followed by units of time. For example:
1551 1 week
1552 3.5 days
1553 4 months
1554 2.2 hours
1555
2b906e48 1556 NOTE: this parameter is not used when using the enhanced
1557 replacement policies, GDSH or LFUDA.
934b03fc 1558DOC_END
1559
1560
0153d498 1561NAME: quick_abort_min
9906e724 1562COMMENT: (KB)
1563TYPE: kb_size_t
c68e9c6b 1564DEFAULT: 16 KB
0153d498 1565LOC: Config.quickAbort.min
1566DOC_NONE
1567
0153d498 1568NAME: quick_abort_max
9906e724 1569COMMENT: (KB)
1570TYPE: kb_size_t
6b53c392 1571DEFAULT: 16 KB
0153d498 1572LOC: Config.quickAbort.max
1b2f5c2f 1573DOC_NONE
1574
1575NAME: quick_abort_pct
1576COMMENT: (percent)
1577TYPE: int
c68e9c6b 1578DEFAULT: 95
1b2f5c2f 1579LOC: Config.quickAbort.pct
934b03fc 1580DOC_START
9923e308 1581 The cache by default continues downloading aborted requests
7a61d612 1582 which are almost completed (less than 16 KB remaining). This
1583 may be undesirable on slow (e.g. SLIP) links and/or very busy
1584 caches. Impatient users may tie up file descriptors and
1585 bandwidth by repeatedly requesting and immediately aborting
1586 downloads.
934b03fc 1587
1588 When the user aborts a request, Squid will check the
1589 quick_abort values to the amount of data transfered until
1590 then.
1591
cf5cc17e 1592 If the transfer has less than 'quick_abort_min' KB remaining,
2bb84b43 1593 it will finish the retrieval.
934b03fc 1594
cf5cc17e 1595 If the transfer has more than 'quick_abort_max' KB remaining,
1596 it will abort the retrieval.
934b03fc 1597
1b2f5c2f 1598 If more than 'quick_abort_pct' of the transfer has completed,
1599 it will finish the retrieval.
2bb84b43 1600
7a61d612 1601 If you do not want any retrieval to continue after the client
2bb84b43 1602 has aborted, set both 'quick_abort_min' and 'quick_abort_max'
1603 to '0 KB'.
1604
9923e308 1605 If you want retrievals to always continue if they are being
2bb84b43 1606 cached then set 'quick_abort_min' to '-1 KB'.
934b03fc 1607DOC_END
1608
1609
1610NAME: negative_ttl
bc0eb004 1611COMMENT: time-units
f1dc9b30 1612TYPE: time_t
934b03fc 1613LOC: Config.negativeTtl
9e975e4e 1614DEFAULT: 5 minutes
934b03fc 1615DOC_START
1616 Time-to-Live (TTL) for failed requests. Certain types of
1617 failures (such as "connection refused" and "404 Not Found") are
cf5cc17e 1618 negatively-cached for a configurable amount of time. The
1619 default is 5 minutes. Note that this is different from
1620 negative caching of DNS lookups.
934b03fc 1621DOC_END
1622
1623
1624NAME: positive_dns_ttl
bc0eb004 1625COMMENT: time-units
f1dc9b30 1626TYPE: time_t
934b03fc 1627LOC: Config.positiveDnsTtl
9e975e4e 1628DEFAULT: 6 hours
934b03fc 1629DOC_START
1630 Time-to-Live (TTL) for positive caching of successful DNS lookups.
1631 Default is 6 hours (360 minutes). If you want to minimize the
1632 use of Squid's ipcache, set this to 1, not 0.
934b03fc 1633DOC_END
1634
1635
1636NAME: negative_dns_ttl
bc0eb004 1637COMMENT: time-units
f1dc9b30 1638TYPE: time_t
934b03fc 1639LOC: Config.negativeDnsTtl
9e975e4e 1640DEFAULT: 5 minutes
934b03fc 1641DOC_START
1642 Time-to-Live (TTL) for negative caching of failed DNS lookups.
934b03fc 1643DOC_END
1644
c68e9c6b 1645NAME: range_offset_limit
1646COMMENT: (bytes)
1647TYPE: b_size_t
1648LOC: Config.rangeOffsetLimit
1649DEFAULT: 0 KB
1650DOC_START
1651 Sets a upper limit on how far into the the file a Range request
1652 may be to cause Squid to prefetch the whole file. If beyond this
1653 limit then Squid forwards the Range request as it is and the result
1654 is NOT cached.
1655
1656 This is to stop a far ahead range request (lets say start at 17MB)
1657 from making Squid fetch the whole object up to that point before
1658 sending anything to the client.
1659
1660 A value of -1 causes Squid to always fetch the object from the
1661 beginning so that it may cache the result. (2.0 style)
1662
6e7dbcbd 1663 A value of 0 causes Squid to never fetch more than the
c68e9c6b 1664 client requested. (default)
c68e9c6b 1665DOC_END
1666
1667
0f74202c 1668COMMENT_START
3a278cb8 1669 TIMEOUTS
1670 -----------------------------------------------------------------------------
0f74202c 1671COMMENT_END
934b03fc 1672
1673NAME: connect_timeout
bc0eb004 1674COMMENT: time-units
f1dc9b30 1675TYPE: time_t
934b03fc 1676LOC: Config.Timeout.connect
9e975e4e 1677DEFAULT: 2 minutes
934b03fc 1678DOC_START
1679 Some systems (notably Linux) can not be relied upon to properly
cf5cc17e 1680 time out connect(2) requests. Therefore the Squid process
934b03fc 1681 enforces its own timeout on server connections. This parameter
1682 specifies how long to wait for the connect to complete. The
1683 default is two minutes (120 seconds).
934b03fc 1684DOC_END
1685
3f62decd 1686NAME: peer_connect_timeout
1687COMMENT: time-units
1688TYPE: time_t
1689LOC: Config.Timeout.peer_connect
1690DEFAULT: 30 seconds
1691DOC_START
1692 This parameter specifies how long to wait for a pending TCP
1693 connection to a peer cache. The default is 30 seconds. You
1694 may also set different timeout values for individual neighbors
1695 with the 'connect-timeout' option on a 'cache_peer' line.
9bc73deb 1696DOC_END
3f62decd 1697
23d92c64 1698NAME: siteselect_timeout
1699COMMENT: time-units
1700TYPE: time_t
1701LOC: Config.Timeout.siteSelect
1702DEFAULT: 4 seconds
1703DOC_START
1704 For URN to multiple URL's URL selection
23d92c64 1705DOC_END
934b03fc 1706
1707NAME: read_timeout
bc0eb004 1708COMMENT: time-units
f1dc9b30 1709TYPE: time_t
934b03fc 1710LOC: Config.Timeout.read
9e975e4e 1711DEFAULT: 15 minutes
934b03fc 1712DOC_START
1713 The read_timeout is applied on server-side connections. After
1714 each successful read(), the timeout will be extended by this
1715 amount. If no data is read again after this amount of time,
1716 the request is aborted and logged with ERR_READ_TIMEOUT. The
1717 default is 15 minutes.
934b03fc 1718DOC_END
1719
1720
934b03fc 1721NAME: request_timeout
f1dc9b30 1722TYPE: time_t
934b03fc 1723LOC: Config.Timeout.request
9e975e4e 1724DEFAULT: 30 seconds
934b03fc 1725DOC_START
1726 How long to wait for an HTTP request after connection
1727 establishment. For persistent connections, wait this long
1728 after the previous request completes.
934b03fc 1729DOC_END
1730
1731
1732NAME: client_lifetime
bc0eb004 1733COMMENT: time-units
f1dc9b30 1734TYPE: time_t
934b03fc 1735LOC: Config.Timeout.lifetime
9e975e4e 1736DEFAULT: 1 day
934b03fc 1737DOC_START
1738 The maximum amount of time that a client (browser) is allowed to
1739 remain connected to the cache process. This protects the Cache
efd900cb 1740 from having a lot of sockets (and hence file descriptors) tied up
934b03fc 1741 in a CLOSE_WAIT state from remote clients that go away without
1742 properly shutting down (either because of a network failure or
1743 because of a poor client implementation). The default is one
1744 day, 1440 minutes.
1745
1746 NOTE: The default value is intended to be much larger than any
1747 client would ever need to be connected to your cache. You
1748 should probably change client_lifetime only as a last resort.
1749 If you seem to have many client connections tying up
1750 filedescriptors, we recommend first tuning the read_timeout,
0fbcf3c7 1751 request_timeout, pconn_timeout and quick_abort values.
934b03fc 1752DOC_END
1753
ea285003 1754NAME: half_closed_clients
1755TYPE: onoff
1756LOC: Config.onoff.half_closed_clients
1757DEFAULT: on
1758DOC_START
1759 Some clients may shutdown the sending side of their TCP
1760 connections, while leaving their receiving sides open. Sometimes,
1761 Squid can not tell the difference between a half-closed and a
1762 fully-closed TCP connection. By default, half-closed client
1763 connections are kept open until a read(2) or write(2) on the
1764 socket returns an error. Change this option to 'off' and Squid
1765 will immediately close client connections when read(2) returns
1766 "no more data to read."
ea285003 1767DOC_END
1768
603a02fd 1769NAME: pconn_timeout
1770TYPE: time_t
1771LOC: Config.Timeout.pconn
1772DEFAULT: 120 seconds
1773DOC_START
1774 Timeout for idle persistent connections to servers and other
1775 proxies.
603a02fd 1776DOC_END
1777
05832ae1 1778NAME: ident_timeout
1779TYPE: time_t
3898f57f 1780IFDEF: USE_IDENT
05832ae1 1781LOC: Config.Timeout.ident
1782DEFAULT: 10 seconds
1783DOC_START
1784 Maximum time to wait for IDENT requests. If this is too high,
1785 and you enabled 'ident_lookup', then you might be susceptible
1786 to denial-of-service by having many ident requests going at
1787 once.
6b8e7481 1788
9bc73deb 1789 Only src type ACL checks are fully supported. A src_domain
1790 ACL might work at times, but it will not always provide
1791 the correct result.
1792
6b8e7481 1793 This option may be disabled by using --disable-ident with
1794 the configure script.
05832ae1 1795DOC_END
1796
934b03fc 1797
1798NAME: shutdown_lifetime
bc0eb004 1799COMMENT: time-units
f1dc9b30 1800TYPE: time_t
934b03fc 1801LOC: Config.shutdownLifetime
9e975e4e 1802DEFAULT: 30 seconds
934b03fc 1803DOC_START
1804 When SIGTERM or SIGHUP is received, the cache is put into
1805 "shutdown pending" mode until all active sockets are closed.
1806 This value is the lifetime to set for all open descriptors
1807 during shutdown mode. Any active clients after this many
1808 seconds will receive a 'timeout' message.
934b03fc 1809DOC_END
1810
0f74202c 1811COMMENT_START
3a278cb8 1812 ACCESS CONTROLS
1813 -----------------------------------------------------------------------------
0f74202c 1814COMMENT_END
934b03fc 1815
1816NAME: acl
1817TYPE: acl
f1dc9b30 1818LOC: Config.aclList
1819DEFAULT: none
934b03fc 1820DOC_START
1821 Defining an Access List
1822
1823 acl aclname acltype string1 ...
1824 acl aclname acltype "file" ...
1825
1826 when using "file", the file should contain one item per line
1827
1828 acltype is one of src dst srcdomain dstdomain url_pattern
1829 urlpath_pattern time port proto method browser user
1830
edd80fbb 1831 By default, regular expressions are CASE-SENSITIVE. To make
1832 them case-insensitive, use the -i option.
1833
934b03fc 1834 acl aclname src ip-address/netmask ... (clients IP address)
1835 acl aclname src addr1-addr2/netmask ... (range of addresses)
1836 acl aclname dst ip-address/netmask ... (URL host's IP address)
ae2c08a2 1837 acl aclname myip ip-address/netmask ... (local socket IP address)
d0d41f07 1838
efd900cb 1839 acl aclname srcdomain .foo.com ... # reverse lookup, client IP
1840 acl aclname dstdomain .foo.com ... # Destination server from URL
edd80fbb 1841 acl aclname srcdom_regex [-i] xxx ... # regex matching client name
1842 acl aclname dstdom_regex [-i] xxx ... # regex matching server
d0d41f07 1843 # For dstdomain and dstdom_regex a reverse lookup is tried if a IP
1844 # based URL is used. The name "none" is used if the reverse lookup
1845 # fails.
1846
934b03fc 1847 acl aclname time [day-abbrevs] [h1:m1-h2:m2]
1848 day-abbrevs:
1849 S - Sunday
1850 M - Monday
1851 T - Tuesday
1852 W - Wednesday
1853 H - Thursday
1854 F - Friday
1855 A - Saturday
1856 h1:m1 must be less than h2:m2
edd80fbb 1857 acl aclname url_regex [-i] ^http:// ... # regex matching on whole URL
1858 acl aclname urlpath_regex [-i] \.gif$ ... # regex matching on URL path
934b03fc 1859 acl aclname port 80 70 21 ...
ec5bba4d 1860 acl aclname port 0-1024 ... # ranges allowed
7e3ce7b9 1861 acl aclname myport 3128 ... # (local socket TCP port)
934b03fc 1862 acl aclname proto HTTP FTP ...
1863 acl aclname method GET POST ...
edd80fbb 1864 acl aclname browser [-i] regexp
1865 # pattern match on User-Agent header
c68e9c6b 1866 acl aclname ident username ...
145cf928 1867 acl aclname ident_regex [-i] pattern ...
c68e9c6b 1868 # string match on ident output.
1869 # use REQUIRED to accept any non-null ident.
96d88dcb 1870 acl aclname src_as number ...
6468fe10 1871 acl aclname dst_as number ...
1872 # Except for access control, AS numbers can be used for
96d88dcb 1873 # routing of requests to specific caches. Here's an
1874 # example for routing all requests for AS#1241 and only
6468fe10 1875 # those to mycache.mydomain.net:
1876 # acl asexample dst_as 1241
d87ebd78 1877 # cache_peer_access mycache.mydomain.net allow asexample
1878 # cache_peer_access mycache_mydomain.net deny all
6468fe10 1879
c68e9c6b 1880 acl aclname proxy_auth username ...
145cf928 1881 acl aclname proxy_auth_regex [-i] pattern ...
c68e9c6b 1882 # list of valid usernames
1883 # use REQUIRED to accept any valid username.
73e67ee0 1884 #
1885 # NOTE: when a Proxy-Authentication header is sent but it is not
1886 # needed during ACL checking the username is NOT logged
1887 # in access.log.
c68e9c6b 1888 #
1889 # NOTE: proxy_auth requires a EXTERNAL authentication program
1890 # to check username/password combinations (see
1891 # authenticate_program).
1892 #
1893 # WARNING: proxy_auth can't be used in a transparent proxy. It
1894 # collides with any authentication done by origin servers. It may
1895 # seem like it works at first, but it doesn't.
934b03fc 1896
dba79ac5 1897 acl aclname snmp_community string ...
08f6b5e0 1898 # A community string to limit access to your SNMP Agent
dba79ac5 1899 # Example:
96d88dcb 1900 #
dba79ac5 1901 # acl snmppublic snmp_community public
1902
9bc73deb 1903 acl aclname maxconn number
1904 # This will be matched when the client's IP address has
1905 # more than <number> HTTP connections established.
1906
60d096f4 1907 acl aclname max_user_ip
96d88dcb 1908 # This will be matched when the user attempts to log in from more
60d096f4 1909 # than <number> different ip address's. The authenticate_ip_ttl
1910 # parameter controls the timeout on the ip entries.
96d88dcb 1911 # NOTE: in acceleration mode, clients may appear to come from
60d096f4 1912 # multiple address's if they are going through proxy farms,
1913 # so a limit of 1 may cause user problems.
1914
1915
fb8ee28e 1916 acl aclname req_mime_type mime-type1 ...
ba2b31a8 1917 # regex match agains the mime type of the request generated
1918 # by the client. Can be used to detect file upload or some
1919 # types HTTP tunelling requests.
1920 # NOTE: This does NOT match the reply. You cannot use this
1921 # to match the returned file type.
c68e9c6b 1922
fb8ee28e 1923 acl aclname rep_mime_type mime-type1 ...
c4ab8329 1924 # regex match against the mime type of the reply recieved by
1925 # squid. Can be used to detect file download or some
1926 # types HTTP tunelling requests.
1927 # NOTE: This has no effect in http_access rules. It only has
1928 # effect in rules that affect the reply data stream such as
1929 # http_reply_access.
1930
1931
c68e9c6b 1932Examples:
1933acl myexample dst_as 1241
aa6956a5 1934acl password proxy_auth REQUIRED
ba2b31a8 1935acl fileupload req_mime_type -i ^multipart/form-data$
c4ab8329 1936acl javascript rep_mime_type -i ^application/x-javascript$
c68e9c6b 1937
c68e9c6b 1938NOCOMMENT_START
6b53c392 1939#Recommended minimum configuration:
c68e9c6b 1940acl all src 0.0.0.0/0.0.0.0
934b03fc 1941acl manager proto cache_object
1942acl localhost src 127.0.0.1/255.255.255.255
4cc6eb12 1943acl to_localhost dst 127.0.0.0/8
934b03fc 1944acl SSL_ports port 443 563
6b53c392 1945acl Safe_ports port 80 # http
1946acl Safe_ports port 21 # ftp
1947acl Safe_ports port 443 563 # https, snews
1948acl Safe_ports port 70 # gopher
1949acl Safe_ports port 210 # wais
1950acl Safe_ports port 1025-65535 # unregistered ports
9bc73deb 1951acl Safe_ports port 280 # http-mgmt
1952acl Safe_ports port 488 # gss-http
1953acl Safe_ports port 591 # filemaker
1954acl Safe_ports port 777 # multiling http
934b03fc 1955acl CONNECT method CONNECT
c68e9c6b 1956NOCOMMENT_END
934b03fc 1957DOC_END
1958
1959NAME: http_access
1960TYPE: acl_access
f1dc9b30 1961LOC: Config.accessList.http
1962DEFAULT: none
da7f354f 1963DEFAULT_IF_NONE: deny all
934b03fc 1964DOC_START
1965 Allowing or Denying access based on defined access lists
1966
1967 Access to the HTTP port:
1968 http_access allow|deny [!]aclname ...
1969
934b03fc 1970 NOTE on default values:
1971
6b53c392 1972 If there are no "access" lines present, the default is to deny
934b03fc 1973 the request.
1974
1975 If none of the "access" lines cause a match, the default is the
1976 opposite of the last line in the list. If the last line was
1977 deny, then the default is allow. Conversely, if the last line
1978 is allow, the default will be deny. For these reasons, it is a
1979 good idea to have an "deny all" or "allow all" entry at the end
1980 of your access lists to avoid potential confusion.
1981
c68e9c6b 1982NOCOMMENT_START
6b53c392 1983#Recommended minimum configuration:
1984#
1985# Only allow cachemgr access from localhost
c68e9c6b 1986http_access allow manager localhost
1987http_access deny manager
6b53c392 1988# Deny requests to unknown ports
499558df 1989http_access deny !Safe_ports
6b53c392 1990# Deny CONNECT to other than SSL ports
c68e9c6b 1991http_access deny CONNECT !SSL_ports
1992#
4cc6eb12 1993# We strongly recommend to uncomment the following to protect innocent
1994# web applications running on the proxy server who think that the only
1995# one who can access services on "localhost" is a local user
1996#http_access deny to_localhost
c68e9c6b 1997#
4cc6eb12 1998# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
1999
6b53c392 2000# And finally deny all other access to this proxy
c68e9c6b 2001http_access deny all
2002NOCOMMENT_END
934b03fc 2003DOC_END
2004
c4ab8329 2005NAME: http_reply_access
2006TYPE: acl_access
2007LOC: Config.accessList.reply
2008DEFAULT: none
2009DEFAULT_IF_NONE: allow all
2010DOC_START
2011 Allow replies to client requests. This is complementary to http_access.
2012
2013 http_reply_access allow|deny [!] aclname ...
2014
96d88dcb 2015 NOTE: if there are no access lines present, the default is to allow
c4ab8329 2016 all replies
2017
2018 If none of the access lines cause a match, then the opposite of the
2019 last line will apply. Thus it is good practice to end the rules
2020 with an "allow all" or "deny all" entry.
2021
2022NOCOMMENT_START
2023#Recommended minimum configuration:
2024#
2025# Insert your own rules here.
2026#
2027#
2028# and finally allow by default
2029http_reply_access allow all
2030NOCOMMENT_END
2031DOC_END
2032
934b03fc 2033
2034NAME: icp_access
2035TYPE: acl_access
f1dc9b30 2036LOC: Config.accessList.icp
2037DEFAULT: none
da7f354f 2038DEFAULT_IF_NONE: deny all
934b03fc 2039DOC_START
6b53c392 2040 Allowing or Denying access to the ICP port based on defined
2041 access lists
2042
2043 icp_access allow|deny [!]aclname ...
2044
2045 See http_access for details
934b03fc 2046
c68e9c6b 2047NOCOMMENT_START
6b53c392 2048#Allow ICP queries from eveyone
c68e9c6b 2049icp_access allow all
2050NOCOMMENT_END
934b03fc 2051DOC_END
2052
2053
2054NAME: miss_access
2055TYPE: acl_access
f1dc9b30 2056LOC: Config.accessList.miss
2057DEFAULT: none
934b03fc 2058DOC_START
2059 Use to force your neighbors to use you as a sibling instead of
2060 a parent. For example:
2061
2062 acl localclients src 172.16.0.0/16
2063 miss_access allow localclients
2064 miss_access deny !localclients
2065
2066 This means that only your local clients are allowed to fetch
2067 MISSES and all other clients can only fetch HITS.
2068
2069 By default, allow all clients who passed the http_access rules
2070 to fetch MISSES from us.
6b53c392 2071
c68e9c6b 2072NOCOMMENT_START
6b53c392 2073#Default setting:
2074# miss_access allow all
c68e9c6b 2075NOCOMMENT_END
934b03fc 2076DOC_END
2077
2078
505e35db 2079NAME: cache_peer_access
2080TYPE: peer_access
f1dc9b30 2081DEFAULT: none
2082LOC: none
934b03fc 2083DOC_START
505e35db 2084 Similar to 'cache_peer_domain' but provides more flexibility by
2085 using ACL elements.
934b03fc 2086
505e35db 2087 cache_peer_access cache-host allow|deny [!]aclname ...
934b03fc 2088
505e35db 2089 The syntax is identical to 'http_access' and the other lists of
2090 ACL elements. See the comments for 'http_access' below, or
2b6662ba 2091 the Squid FAQ (http://www.squid-cache.org/FAQ/FAQ-10.html).
934b03fc 2092DOC_END
2093
ec603b25 2094NAME: ident_lookup_access
2095TYPE: acl_access
2096IFDEF: USE_IDENT
2097DEFAULT: none
2098DEFAULT_IF_NONE: deny all
2099LOC: Config.accessList.identLookup
2100DOC_START
2101 A list of ACL elements which, if matched, cause an ident
2102 (RFC 931) lookup to be performed for this request. For
2103 example, you might choose to always perform ident lookups
2104 for your main multi-user Unix boxes, but not for your Macs
2105 and PCs. By default, ident lookups are not performed for
2106 any requests.
2107
2108 To enable ident lookups for specific client addresses, you
2109 can follow this example:
96d88dcb 2110
ec603b25 2111 acl ident_aware_hosts src 198.168.1.0/255.255.255.0
2112 ident_lookup_access allow ident_aware_hosts
2113 ident_lookup_access deny all
2114
2115 This option may be disabled by using --disable-ident with
2116 the configure script.
ec603b25 2117DOC_END
2118
d6827718 2119NAME: tcp_outgoing_tos tcp_outgoing_ds tcp_outgoin_dscp
2120TYPE: acl_tos
2121DEFAULT: none
2122LOC: Config.accessList.outgoing_tos
2123DOC_START
2124 Allows you to select a TOS/Diffserv value to mark outgoing
2125 connections with, based on the username or source address
2126 making the request.
2127
2128 tcp_outgoing_tos ds-field [!]aclname ...
2129
2130 Example where normal_service_net uses the TOS value 0x00
2131 and normal_service_net uses 0x20
2132
2133 acl normal_service_net src 10.0.0.0/255.255.255.0
2134 acl good_service_net src 10.0.1.0/255.255.255.0
2135 tcp_outgoing_tos 0x00 normal_service_net 0x00
2136 tcp_outgoing_tos 0x20 good_service_net
2137
2138 TOS/DSCP values really only have local significance - so you should
2139 know what you're specifying. For more, see RFC 2474
2140
2141 The TOS/DSCP byte must be exactly that - a byte, value 0 - 255, or
2142 "default" to use whatever default your host has.
2143
2144 Processing proceeds in the order specified, and stops at first fully
2145 matching line.
2146DOC_END
2147
2148NAME: tcp_outgoing_address
2149TYPE: acl_address
2150DEFAULT: none
2151LOC: Config.accessList.outgoing_address
2152DOC_START
2153 Allows you to map requests to different outgoing IP addresses
2154 based on the username or sourceaddress of the user making
2155 the request.
2156
2157 tcp_outgoing_address ipaddr [[!]aclname] ...
2158
2159 Example where requests from 10.0.0.0/24 will be forwareded
2160 with source address 10.1.0.1, 10.0.2.0/24 forwarded with
2161 source address 10.1.0.2 and the rest will be forwarded with
2162 source address 10.1.0.3.
2163
2164 acl normal_service_net src 10.0.0.0/255.255.255.0
2165 acl good_service_net src 10.0.1.0/255.255.255.0
2166 tcp_outgoing_address 10.0.0.1 normal_service_net
2167 tcp_outgoing_address 10.0.0.2 good_service_net
2168 tcp_outgoing_address 10.0.0.3
2169
2170 Processing proceeds in the order specified, and stops at first fully
2171 matching line.
2172DOC_END
ec603b25 2173
a560ee93 2174NAME: reply_body_max_size
2175COMMENT: bytes allow|deny acl acl...
2176TYPE: body_size_t
2177DEFAULT: none
2178DEFAULT_IF_NONE: 0 allow all
2179LOC: Config.ReplyBodySize
2180DOC_START
2181 This option specifies the maximum size of a reply body. It
2182 can be used to prevent users from downloading very large files,
2183 such as MP3's and movies. When the reply headers are recieved,
2184 the reply_body_max_size lines are processed, and the first line with
2185 a result of "allow" is used as the maximum body size for this reply.
2186 This size is then checked twice. First when we get the reply headers,
2187 we check the content-length value. If the content length value exists
2188 and is larger than the allowed size, the request is denied and the
2189 user receives an error message that says "the request or reply
2190 is too large." If there is no content-length, and the reply
2191 size exceeds this limit, the client's connection is just closed
2192 and they will receive a partial reply.
2193
2194 WARNING: downstream caches probably can not detect a partial reply
2195 if there is no content-length header, so they will cache
2196 partial responses and give them out as hits. You should NOT
2197 use this option if you have downstream caches.
2198
96d88dcb 2199 WARNING: A maximum size larger than the size of squid's error messages
a560ee93 2200 will cause an infinite loop and crash squid. Ensure that the smallest
2201 non-zero value you use is greater that the maximum header size plus
2202 the size of your largest error page.
2203
2204 If you set this parameter to zero (the default), there will be
2205 no limit imposed.
2206DOC_END
2207
0f74202c 2208COMMENT_START
3a278cb8 2209 ADMINISTRATIVE PARAMETERS
2210 -----------------------------------------------------------------------------
0f74202c 2211COMMENT_END
934b03fc 2212
2213NAME: cache_mgr
2214TYPE: string
2215DEFAULT: webmaster
2216LOC: Config.adminEmail
2217DOC_START
2218 Email-address of local cache manager who will receive
2219 mail if the cache dies. The default is "webmaster."
934b03fc 2220DOC_END
2221
2222
2223NAME: cache_effective_user
0153d498 2224TYPE: string
a95856a0 2225DEFAULT: nobody
0153d498 2226LOC: Config.effectiveUser
2227DOC_NONE
2228
2229NAME: cache_effective_group
2230TYPE: string
8749fa47 2231DEFAULT: none
0153d498 2232LOC: Config.effectiveGroup
934b03fc 2233DOC_START
5a3f6538 2234
934b03fc 2235 If the cache is run as root, it will change its effective/real
5a3f6538 2236 UID/GID to the UID/GID specified below. The default is to
8749fa47 2237 change to UID to nobody and GID to the default group of nobody.
5a3f6538 2238
2239 If Squid is not started as root, the default is to keep the
8749fa47 2240 current UID/GID, and only the GID can be changed to any of
2241 the groups the user starting Squid is member of. Note that if
2242 Squid is not started as root then you cannot set http_port to
2243 a value lower than 1024.
934b03fc 2244DOC_END
2245
2246
2247NAME: visible_hostname
2248TYPE: string
2249LOC: Config.visibleHostname
f1dc9b30 2250DEFAULT: none
934b03fc 2251DOC_START
2252 If you want to present a special hostname in error messages, etc,
2253 then define this. Otherwise, the return value of gethostname()
cf5cc17e 2254 will be used. If you have multiple caches in a cluster and
2255 get errors about IP-forwarding you must set them to have individual
2256 names with this setting.
934b03fc 2257DOC_END
2258
98829f69 2259
2260NAME: unique_hostname
2261TYPE: string
2262LOC: Config.uniqueHostname
2263DEFAULT: none
2264DOC_START
2265 If you want to have multiple machines with the same
2266 'visible_hostname' then you must give each machine a different
2267 'unique_hostname' so that forwarding loops can be detected.
98829f69 2268DOC_END
2269
1f38f50a 2270
2271NAME: hostname_aliases
2272TYPE: wordlist
2273LOC: Config.hostnameAliases
2274DEFAULT: none
2275DOC_START
2276 A list of other DNS names that your cache has.
2277DOC_END
2278
0f74202c 2279COMMENT_START
3a278cb8 2280 OPTIONS FOR THE CACHE REGISTRATION SERVICE
2281 -----------------------------------------------------------------------------
934b03fc 2282
3a278cb8 2283 This section contains parameters for the (optional) cache
2284 announcement service. This service is provided to help
2285 cache administrators locate one another in order to join or
2286 create cache hierarchies.
934b03fc 2287
3a278cb8 2288 An 'announcement' message is sent (via UDP) to the registration
efd900cb 2289 service by Squid. By default, the announcement message is NOT
d2d631ce 2290 SENT unless you enable it with 'announce_period' below.
3a278cb8 2291
2292 The announcement message includes your hostname, plus the
2293 following information from this configuration file:
934b03fc 2294
3a278cb8 2295 http_port
2296 icp_port
2297 cache_mgr
2298
2299 All current information is processed regularly and made
2b6662ba 2300 available on the Web at http://www.ircache.net/Cache/Tracker/.
0f74202c 2301COMMENT_END
934b03fc 2302
f1dc9b30 2303NAME: announce_period
2304TYPE: time_t
2305LOC: Config.Announce.period
d2d631ce 2306DEFAULT: 0
934b03fc 2307DOC_START
d2d631ce 2308 This is how frequently to send cache announcements. The
2309 default is `0' which disables sending the announcement
2310 messages.
934b03fc 2311
cd748f27 2312 To enable announcing your cache, just uncomment the line
2313 below.
2314
6b53c392 2315NOCOMMENT_START
2316#To enable announcing your cache, just uncomment the line below.
2317#announce_period 1 day
2318NOCOMMENT_END
934b03fc 2319DOC_END
2320
2321
f1dc9b30 2322NAME: announce_host
2323TYPE: string
61735fcf 2324DEFAULT: tracker.ircache.net
f1dc9b30 2325LOC: Config.Announce.host
2326DOC_NONE
2327
cf5cc17e 2328NAME: announce_file
2329TYPE: string
61735fcf 2330DEFAULT: none
cf5cc17e 2331LOC: Config.Announce.file
2332DOC_NONE
2333
f1dc9b30 2334NAME: announce_port
2335TYPE: ushort
2336DEFAULT: 3131
2337LOC: Config.Announce.port
934b03fc 2338DOC_START
d2d631ce 2339 announce_host and announce_port set the hostname and port
2340 number where the registration message will be sent.
934b03fc 2341
d2d631ce 2342 Hostname will default to 'tracker.ircache.net' and port will
2343 default default to 3131. If the 'filename' argument is given,
2344 the contents of that file will be included in the announce
2345 message.
934b03fc 2346DOC_END
2347
0f74202c 2348COMMENT_START
3a278cb8 2349 HTTPD-ACCELERATOR OPTIONS
2350 -----------------------------------------------------------------------------
0f74202c 2351COMMENT_END
934b03fc 2352
f1dc9b30 2353NAME: httpd_accel_host
2354TYPE: string
2355LOC: Config.Accel.host
2356DEFAULT: none
2357DOC_NONE
2358
2359NAME: httpd_accel_port
2360TYPE: ushort
2361LOC: Config.Accel.port
5b68a4d3 2362DEFAULT: 80
934b03fc 2363DOC_START
cf5cc17e 2364 If you want to run Squid as an httpd accelerator, define the
934b03fc 2365 host name and port number where the real HTTP server is.
2366
2367 If you want virtual host support then specify the hostname
2368 as "virtual".
2369
42b51993 2370 If you want virtual port support then specify the port as "0".
2371
839491ad 2372 NOTE: enabling httpd_accel_host disables proxy-caching and
2373 ICP. If you want these features enabled also, then set
2374 the 'httpd_accel_with_proxy' option.
934b03fc 2375DOC_END
2376
13c7936a 2377NAME: httpd_accel_single_host
2378COMMENT: on|off
2379TYPE: onoff
2380LOC: Config.Accel.single_host
b0a9b5f2 2381DEFAULT: off
13c7936a 2382DOC_START
2383 If you are running Squid as a accelerator and have a single backend
2384 server then set this to on. This causes Squid to forward the request
2385 to this server irregardles of what any redirectors or Host headers
2386 says.
2387
b0a9b5f2 2388 Leave this at off if you have multiple backend servers, and use a
2389 redirector (or host table or private DNS) to map the requests to the
13c7936a 2390 appropriate backend servers. Note that the mapping needs to be a
2391 1-1 mapping between requested and backend (from redirector) domain
2392 names or caching will fail, as cacing is performed using the
2393 URL returned from the redirector.
2394
2395 See also redirect_rewrites_host_header.
2396DOC_END
934b03fc 2397
2398NAME: httpd_accel_with_proxy
2399COMMENT: on|off
2400TYPE: onoff
f1dc9b30 2401DEFAULT: off
17a0a4ee 2402LOC: Config.onoff.accel_with_proxy
934b03fc 2403DOC_START
cf5cc17e 2404 If you want to use Squid as both a local httpd accelerator
6b53c392 2405 and as a proxy, change this to 'on'. Note however that your
2406 proxy users may have trouble to reach the accelerated domains
2407 unless their browsers are configured not to use this proxy for
2408 those domains (for example via the no_proxy browser configuration
2409 setting)
934b03fc 2410DOC_END
2411
934b03fc 2412NAME: httpd_accel_uses_host_header
2413COMMENT: on|off
2414TYPE: onoff
f1dc9b30 2415DEFAULT: off
934b03fc 2416LOC: opt_accel_uses_host
2417DOC_START
2418 HTTP/1.1 requests include a Host: header which is basically the
2419 hostname from the URL. Squid can be an accelerator for
2420 different HTTP servers by looking at this header. However,
2421 Squid does NOT check the value of the Host header, so it opens
2422 a big security hole. We recommend that this option remain
2423 disabled unless you are sure of what you are doing.
2424
04f6f348 2425 However, you will need to enable this option if you run Squid
2426 as a transparent proxy. Otherwise, virtual servers which
2427 require the Host: header will not be properly cached.
934b03fc 2428DOC_END
2429
0f74202c 2430COMMENT_START
3a278cb8 2431 MISCELLANEOUS
2432 -----------------------------------------------------------------------------
0f74202c 2433COMMENT_END
934b03fc 2434
2435NAME: dns_testnames
2436TYPE: wordlist
2437LOC: Config.dns_testname_list
f1dc9b30 2438DEFAULT: none
6b53c392 2439DEFAULT_IF_NONE: netscape.com internic.net nlanr.net microsoft.com
934b03fc 2440DOC_START
2441 The DNS tests exit as soon as the first site is successfully looked up
2442
6b53c392 2443 This test can be disabled with the -D command line option.
934b03fc 2444DOC_END
2445
2446
2447NAME: logfile_rotate
2448TYPE: int
2449DEFAULT: 10
2450LOC: Config.Log.rotateNumber
2451DOC_START
5a3f6538 2452 Specifies the number of logfile rotations to make when you
2453 type 'squid -k rotate'. The default is 10, which will rotate
cf5cc17e 2454 with extensions 0 through 9. Setting logfile_rotate to 0 will
934b03fc 2455 disable the rotation, but the logfiles are still closed and
cf5cc17e 2456 re-opened. This will enable you to rename the logfiles
5a3f6538 2457 yourself just before sending the rotate signal.
2458
2459 Note, the 'squid -k rotate' command normally sends a USR1
2460 signal to the running squid process. In certain situations
2461 (e.g. on Linux with Async I/O), USR1 is used for other
2462 purposes, so -k rotate uses another signal. It is best to get
2463 in the habit of using 'squid -k rotate' instead of 'kill -USR1
2464 <pid>'.
934b03fc 2465DOC_END
2466
2467
2468NAME: append_domain
f1dc9b30 2469TYPE: string
2470LOC: Config.appendDomain
2471DEFAULT: none
934b03fc 2472DOC_START
cf5cc17e 2473 Appends local domain name to hostnames without any dots in
2474 them. append_domain must begin with a period.
934b03fc 2475
cd98395a 2476 Be warned that there today is Internet names with no dots in
2477 them using only top-domain names, so setting this may
2478 cause some Internet sites to become unavailable.
2479
6b53c392 2480Example:
2481 append_domain .yourdomain.com
934b03fc 2482DOC_END
2483
2484
2485NAME: tcp_recv_bufsize
89de058c 2486COMMENT: (bytes)
1b635117 2487TYPE: b_size_t
89de058c 2488DEFAULT: 0 bytes
934b03fc 2489LOC: Config.tcpRcvBufsz
2490DOC_START
2491 Size of receive buffer to set for TCP sockets. Probably just
2492 as easy to change your kernel's default. Set to zero to use
2493 the default buffer size.
934b03fc 2494DOC_END
2495
934b03fc 2496NAME: err_html_text
f1dc9b30 2497TYPE: eol
2498LOC: Config.errHtmlText
2499DEFAULT: none
934b03fc 2500DOC_START
2501 HTML text to include in error messages. Make this a "mailto"
2502 URL to your admin address, or maybe just a link to your
2503 organizations Web page.
2504
ab1e6b8a 2505 To include this in your error messages, you must rewrite
2506 the error template files (found in the "errors" directory).
2507 Wherever you want the 'err_html_text' line to appear,
2508 insert a %L tag in the error template file.
934b03fc 2509DOC_END
2510
2511
2512NAME: deny_info
2513TYPE: denyinfo
2514LOC: Config.denyInfoList
f1dc9b30 2515DEFAULT: none
934b03fc 2516DOC_START
02922e76 2517 Usage: deny_info err_page_name acl
2518 Example: deny_info ERR_CUSTOM_ACCESS_DENIED bad_guys
934b03fc 2519
02922e76 2520 This can be used to return a ERR_ page for requests which
934b03fc 2521 do not pass the 'http_access' rules. A single ACL will cause
2522 the http_access check to fail. If a 'deny_info' line exists
02922e76 2523 for that ACL then Squid returns a corresponding error page.
cf5cc17e 2524
02922e76 2525 You may use ERR_ pages that come with Squid or create your own pages
2526 and put them into the configured errors/ directory.
934b03fc 2527DOC_END
2528
934b03fc 2529NAME: memory_pools
2530COMMENT: on|off
2531TYPE: onoff
f1dc9b30 2532DEFAULT: on
3f6c0fb2 2533LOC: Config.onoff.mem_pools
934b03fc 2534DOC_START
2535 If set, Squid will keep pools of allocated (but unused) memory
2536 available for future use. If memory is a premium on your
96d88dcb 2537 system and you believe your malloc library outperforms Squid
d0d41f07 2538 routines, disable this.
934b03fc 2539DOC_END
2540
7021844c 2541NAME: memory_pools_limit
2542COMMENT: (bytes)
2543TYPE: b_size_t
2544DEFAULT: none
f12c295b 2545LOC: Config.MemPools.limit
7021844c 2546DOC_START
f12c295b 2547 Used only with memory_pools on:
2548 memory_pools_limit 50 MB
7021844c 2549
f12c295b 2550 If set to a non-zero value, Squid will keep at most the specified
2551 limit of allocated (but unused) memory in memory pools. All free()
2552 requests that exceed this limit will be handled by your malloc
2553 library. Squid does not pre-allocate any memory, just safe-keeps
2554 objects that otherwise would be free()d. Thus, it is safe to set
7021844c 2555 memory_pools_limit to a reasonably high value even if your
f12c295b 2556 configuration will use less memory.
2557
2558 If not set (default) or set to zero, Squid will keep all memory it
2559 can. That is, there will be no limit on the total amount of memory
2560 used for safe-keeping.
7021844c 2561
2562 To disable memory allocation optimization, do not set
2563 memory_pools_limit to 0. Set memory_pools to "off" instead.
2564
f12c295b 2565 An overhead for maintaining memory pools is not taken into account
2566 when the limit is checked. This overhead is close to four bytes per
2567 object kept. However, pools may actually _save_ memory because of
2568 reduced memory thrashing in your malloc library.
7021844c 2569DOC_END
2570
934b03fc 2571NAME: forwarded_for
2572COMMENT: on|off
2573TYPE: onoff
f1dc9b30 2574DEFAULT: on
934b03fc 2575LOC: opt_forwarded_for
2576DOC_START
2577 If set, Squid will include your system's IP address or name
2578 in the HTTP requests it forwards. By default it looks like
2579 this:
2580
2581 X-Forwarded-For: 192.1.2.3
2582
2583 If you disable this, it will appear as
2584
2585 X-Forwarded-For: unknown
934b03fc 2586DOC_END
2587
2588NAME: log_icp_queries
2589COMMENT: on|off
2590TYPE: onoff
f1dc9b30 2591DEFAULT: on
17a0a4ee 2592LOC: Config.onoff.log_udp
934b03fc 2593DOC_START
cf5cc17e 2594 If set, ICP queries are logged to access.log. You may wish
2595 do disable this if your ICP load is VERY high to speed things
2596 up or to simplify log analysis.
934b03fc 2597DOC_END
2598
88738790 2599NAME: icp_hit_stale
2600COMMENT: on|off
2601TYPE: onoff
2602DEFAULT: off
17a0a4ee 2603LOC: Config.onoff.icp_hit_stale
88738790 2604DOC_START
2605 If you want to return ICP_HIT for stale cache objects, set this
2606 option to 'on'. If you have sibling relationships with caches
2607 in other administrative domains, this should be 'off'. If you only
2608 have sibling relationships with caches under your control, then
2609 it is probably okay to set this to 'on'.
88738790 2610DOC_END
2611
934b03fc 2612
2613NAME: minimum_direct_hops
2614TYPE: int
2615DEFAULT: 4
2616LOC: Config.minDirectHops
2617DOC_START
2618 If using the ICMP pinging stuff, do direct fetches for sites
2619 which are no more than this many hops away.
934b03fc 2620DOC_END
2621
5f84d830 2622NAME: minimum_direct_rtt
2623TYPE: int
2624DEFAULT: 400
2625LOC: Config.minDirectRtt
2626DOC_START
2627 If using the ICMP pinging stuff, do direct fetches for sites
2628 which are no more than this many rtt milliseconds away.
2629DOC_END
934b03fc 2630
2631NAME: cachemgr_passwd
2632TYPE: cachemgrpasswd
86101e40 2633DEFAULT: none
f1dc9b30 2634LOC: Config.passwd_list
934b03fc 2635DOC_START
2636 Specify passwords for cachemgr operations.
2637
2638 Usage: cachemgr_passwd password action action ...
2639
064a674d 2640 Some valid actions are (see cache manager menu for a full list):
2641 5min
2642 60min
2643 asndb
2644 authenticator
2645 cbdata
2646 client_list
2647 comm_incoming
2648 config *
2649 counters
2650 delay
2651 digest_stats
cf5cc17e 2652 dns
064a674d 2653 events
cf5cc17e 2654 filedescriptors
064a674d 2655 fqdncache
2656 histograms
2657 http_headers
2658 info
2659 io
2660 ipcache
2661 mem
2662 menu
cf5cc17e 2663 netdb
064a674d 2664 non_peers
2665 objects
2666 pconn
2667 peer_select
2668 redirector
2669 refresh
934b03fc 2670 server_list
064a674d 2671 shutdown *
2672 store_digest
2673 storedir
2674 utilization
2675 via_headers
2676 vm_objects
934b03fc 2677
2678 * Indicates actions which will not be performed without a
2679 valid password, others can be performed if not listed here.
2680
2681 To disable an action, set the password to "disable".
2682 To allow performing an action without a password, set the
2683 password to "none".
2684
2685 Use the keyword "all" to set the same password for all actions.
2686
6b53c392 2687Example:
2688 cachemgr_passwd secret shutdown
2689 cachemgr_passwd lesssssssecret info stats/objects
2690 cachemgr_passwd disable all
934b03fc 2691DOC_END
2692
934b03fc 2693NAME: store_avg_object_size
86101e40 2694COMMENT: (kbytes)
2695TYPE: kb_size_t
2bf99296 2696DEFAULT: 13 KB
934b03fc 2697LOC: Config.Store.avgObjectSize
2698DOC_START
2699 Average object size, used to estimate number of objects your
2700 cache can hold. See doc/Release-Notes-1.1.txt. The default is
2bf99296 2701 13 KB.
934b03fc 2702DOC_END
2703
2704NAME: store_objects_per_bucket
2705TYPE: int
baf144ad 2706DEFAULT: 20
934b03fc 2707LOC: Config.Store.objectsPerBucket
2708DOC_START
2709 Target number of objects per bucket in the store hash table.
2710 Lowering this value increases the total number of buckets and
7e3ce7b9 2711 also the storage maintenance rate. The default is 50.
934b03fc 2712DOC_END
2713
934b03fc 2714NAME: client_db
2715COMMENT: on|off
2716TYPE: onoff
f1dc9b30 2717DEFAULT: on
17a0a4ee 2718LOC: Config.onoff.client_db
934b03fc 2719DOC_START
2720 If you want to disable collecting per-client statistics, then
2721 turn off client_db here.
934b03fc 2722DOC_END
2723
2724
2725NAME: netdb_low
2726TYPE: int
2727DEFAULT: 900
2728LOC: Config.Netdb.low
2729DOC_NONE
2730
2731NAME: netdb_high
2732TYPE: int
2733DEFAULT: 1000
2734LOC: Config.Netdb.high
2735DOC_START
2736 The low and high water marks for the ICMP measurement
2737 database. These are counts, not percents. The defaults are
2738 900 and 1000. When the high water mark is reached, database
2739 entries will be deleted until the low mark is reached.
934b03fc 2740DOC_END
2741
2742
2743NAME: netdb_ping_period
f1dc9b30 2744TYPE: time_t
934b03fc 2745LOC: Config.Netdb.period
9e975e4e 2746DEFAULT: 5 minutes
934b03fc 2747DOC_START
2748 The minimum period for measuring a site. There will be at
2749 least this much delay between successive pings to the same
2750 network. The default is five minutes.
934b03fc 2751DOC_END
2752
2753
2754NAME: query_icmp
2755COMMENT: on|off
2756TYPE: onoff
f1dc9b30 2757DEFAULT: off
17a0a4ee 2758LOC: Config.onoff.query_icmp
934b03fc 2759DOC_START
2760 If you want to ask your peers to include ICMP data in their ICP
2761 replies, enable this option.
2762
cf5cc17e 2763 If your peer has configured Squid (during compilation) with
2764 '--enable-icmp' then that peer will send ICMP pings to origin server
2765 sites of the URLs it receives. If you enable this option then the
2766 ICP replies from that peer will include the ICMP data (if available).
2767 Then, when choosing a parent cache, Squid will choose the parent with
934b03fc 2768 the minimal RTT to the origin server. When this happens, the
2769 hierarchy field of the access.log will be
2770 "CLOSEST_PARENT_MISS". This option is off by default.
934b03fc 2771DOC_END
2772
88500f96 2773NAME: test_reachability
194dd3b8 2774COMMENT: on|off
2775TYPE: onoff
2776DEFAULT: off
2777LOC: Config.onoff.test_reachability
2778DOC_START
2779 When this is 'on', ICP MISS replies will be ICP_MISS_NOFETCH
2780 instead of ICP_MISS if the target host is NOT in the ICMP
2781 database, or has a zero RTT.
194dd3b8 2782DOC_END
2783
78f1250a 2784NAME: buffered_logs
2785COMMENT: on|off
2786TYPE: onoff
2787DEFAULT: off
17a0a4ee 2788LOC: Config.onoff.buffered_logs
78f1250a 2789DOC_START
2790 Some log files (cache.log, useragent.log) are written with
2791 stdio functions, and as such they can be buffered or
cf5cc17e 2792 unbuffered. By default they will be unbuffered. Buffering them
2793 can speed up the writing slightly (though you are unlikely to
2794 need to worry).
78f1250a 2795DOC_END
2796
465dc415 2797NAME: reload_into_ims
9f60cfdf 2798IFDEF: HTTP_VIOLATIONS
465dc415 2799COMMENT: on|off
2800TYPE: onoff
2801DEFAULT: off
2802LOC: Config.onoff.reload_into_ims
2803DOC_START
2804 When you enable this option, client no-cache or ``reload''
2805 requests will be changed to If-Modified-Since requests.
2806 Doing this VIOLATES the HTTP standard. Enabling this
2807 feature could make you liable for problems which it
2808 causes.
cbe3a719 2809
2810 see also refresh_pattern for a more selective approach.
2811
6b8e7481 2812 This option may be disabled by using --disable-http-violations
2813 with the configure script.
465dc415 2814DOC_END
2815
934b03fc 2816NAME: always_direct
2817TYPE: acl_access
2818LOC: Config.accessList.AlwaysDirect
f1dc9b30 2819DEFAULT: none
934b03fc 2820DOC_START
2a78fa67 2821 Usage: always_direct allow|deny [!]aclname ...
2822
2823 Here you can use ACL elements to specify requests which should
3445a83a 2824 ALWAYS be forwarded directly to origin servers. For example,
2825 to always directly forward requests for local servers use
2a78fa67 2826 something like:
2827
2828 acl local-servers dstdomain my.domain.net
2829 always_direct allow local-servers
2830
2831 To always forward FTP requests directly, use
2832
2833 acl FTP proto FTP
2834 always_direct allow FTP
2835
2836 NOTE: There is a similar, but opposite option named
2837 'never_direct'. You need to be aware that "always_direct deny
2838 foo" is NOT the same thing as "never_direct allow foo". You
2839 may need to use a deny rule to exclude a more-specific case of
2840 some other rule. Example:
2841
2842 acl local-external dstdomain external.foo.net
2843 acl local-servers dstdomain foo.net
2844 always_direct deny local-external
2845 always_direct allow local-servers
3445a83a 2846
2847 This option replaces some v1.1 options such as local_domain
2848 and local_ip.
934b03fc 2849DOC_END
2850
2851NAME: never_direct
2852TYPE: acl_access
2853LOC: Config.accessList.NeverDirect
f1dc9b30 2854DEFAULT: none
934b03fc 2855DOC_START
d0d41f07 2856 Usage: never_direct allow|deny [!]aclname ...
2a78fa67 2857
2858 never_direct is the opposite of always_direct. Please read
2859 the description for always_direct if you have not already.
934b03fc 2860
2a78fa67 2861 With 'never_direct' you can use ACL elements to specify
2862 requests which should NEVER be forwarded directly to origin
3445a83a 2863 servers. For example, to force the use of a proxy for all
2864 requests, except those in your local domain use something like:
2a78fa67 2865
3445a83a 2866 acl local-servers dstdomain foo.net
2a78fa67 2867 acl all src 0.0.0.0/0.0.0.0
d0d41f07 2868 never_direct deny local-servers
2869 never_direct allow all
3445a83a 2870
2871 or if squid is inside a firewall and there is local intranet
2872 servers inside the firewall then use something like:
2873
2874 acl local-intranet dstdomain foo.net
2875 acl local-external dstdomain external.foo.net
2876 always_direct deny local-external
2877 always_direct allow local-intranet
2878 never_direct allow all
2879
2880 This option replaces some v1.1 options such as inside_firewall
2881 and firewall_ip.
2a78fa67 2882DOC_END
934b03fc 2883
6bccf575 2884NAME: header_access
2885TYPE: http_header_access[]
2886LOC: Config.header_access
97474590 2887DEFAULT: none
2888DOC_START
6bccf575 2889 Usage: header_access header_name allow|deny [!]aclname ...
96d88dcb 2890
6bccf575 2891 This option replaces the old 'anonymize_headers' and the
2892 older 'http_anonymizer' option with something that is much
2893 more configurable. This new method creates a list of ACLs
2894 for each header, allowing you very fine-tuned header
2895 mangling.
2896
2897 You can only specify known headers for the header name.
2898 Other headers are reclassified as 'Other'. You can also
2899 refer to all the headers with 'All'.
96d88dcb 2900
6bccf575 2901 For example, to achieve the same behaviour as the old
5bcad01d 2902 'http_anonymizer standard' option, you should use:
96d88dcb 2903
6bccf575 2904 header_access From deny all
2905 header_access Referer deny all
2906 header_access Server deny all
2907 header_access User-Agent deny all
2908 header_access WWW-Authenticate deny all
2909 header_access Link deny all
97474590 2910
5bcad01d 2911 Or, to reproduce the old 'http_anonymizer paranoid' feature
2912 you should use:
96d88dcb 2913
6bccf575 2914 header_access Allow allow all
2915 header_access Authorization allow all
2916 header_access Cache-Control allow all
2917 header_access Content-Encoding allow all
2918 header_access Content-Length allow all
2919 header_access Content-Type allow all
2920 header_access Date allow all
2921 header_access Expires allow all
2922 header_access Host allow all
2923 header_access If-Modified-Since allow all
2924 header_access Last-Modified allow all
2925 header_access Location allow all
2926 header_access Pragma allow all
2927 header_access Accept allow all
2928 header_access Charset allow all
2929 header_access Accept-Encoding allow all
2930 header_access Accept-Language allow all
2931 header_access Content-Language allow all
2932 header_access Mime-Version allow all
2933 header_access Retry-After allow all
2934 header_access Title allow all
2935 header_access Connection allow all
2936 header_access Proxy-Connection allow all
2937 header_access All deny all
96d88dcb 2938
5bcad01d 2939 By default, all headers are allowed (no anonymizing is
2940 performed).
97474590 2941DOC_END
2942
6bccf575 2943NAME: header_replace
2944TYPE: http_header_replace[]
2945LOC: Config.header_access
88738790 2946DEFAULT: none
2947DOC_START
6bccf575 2948 Usage: header_replace header_name message
2949 Example: header_replace User-Agent Nutscrape/1.0 (CP/M; 8-bit)
96d88dcb 2950
6bccf575 2951 This option allows you to change the contents of headers
2952 denied with header_access above, by replacing them with
2953 some fixed string. This replaces the old fake_user_agent
2954 option.
96d88dcb 2955
6bccf575 2956 By default, headers are removed if denied.
88738790 2957DOC_END
2958
365cb147 2959NAME: icon_directory
f0b19334 2960TYPE: string
365cb147 2961LOC: Config.icons.directory
2962DEFAULT: @DEFAULT_ICON_DIR@
2963DOC_START
cf5cc17e 2964 Where the icons are stored. These are normally kept in
2965 @DEFAULT_ICON_DIR@
365cb147 2966DOC_END
2967
cf5cc17e 2968NAME: error_directory
365cb147 2969TYPE: string
cf5cc17e 2970LOC: Config.errorDirectory
2971DEFAULT: @DEFAULT_ERROR_DIR@
365cb147 2972DOC_START
cf5cc17e 2973 If you wish to create your own versions of the default
efd900cb 2974 (English) error files, either to customize them to suit your
2975 language or company copy the template English files to another
cf5cc17e 2976 directory and point this tag at them.
365cb147 2977DOC_END
88738790 2978
22c653cd 2979NAME: minimum_retry_timeout
2980COMMENT: (seconds)
2981TYPE: time_t
2982LOC: Config.retry.timeout
2983DEFAULT: 5 seconds
2984DOC_START
2985 This specifies the minimum connect timeout, for when the
2986 connect timeout is reduced to compensate for the availability
2987 of multiple IP addresses.
2988
cf5cc17e 2989 When a connection to a host is initiated, and that host has
2990 several IP addresses, the default connection timeout is reduced
2991 by dividing it by the number of addresses. So, a site with 15
2992 addresses would then have a timeout of 8 seconds for each
2993 address attempted. To avoid having the timeout reduced to the
2994 point where even a working host would not have a chance to
2995 respond, this setting is provided. The default, and the
2996 minimum value, is five seconds, and the maximum value is sixty
2997 seconds, or half of connect_timeout, whichever is greater and
2998 less than connect_timeout.
22c653cd 2999DOC_END
3000
3001NAME: maximum_single_addr_tries
3002TYPE: int
3003LOC: Config.retry.maxtries
3004DEFAULT: 3
3005DOC_START
3006 This sets the maximum number of connection attempts for a
3007 host that only has one address (for multiple-address hosts,
3008 each address is tried once).
3009
3010 The default value is three tries, the (not recommended)
3011 maximum is 255 tries. A warning message will be generated
3012 if it is set to a value greater than ten.
22c653cd 3013DOC_END
6d1c0d53 3014
a97cfa48 3015NAME: snmp_port
3016TYPE: ushort
3017LOC: Config.Port.snmp
3018DEFAULT: 3401
1df370e3 3019IFDEF: SQUID_SNMP
a97cfa48 3020DOC_START
cf5cc17e 3021 Squid can now serve statistics and status information via SNMP.
3022 By default it listens to port 3401 on the machine. If you don't
9bc73deb 3023 wish to use SNMP, set this to "0".
cf5cc17e 3024
3025 NOTE: SNMP support requires use the --enable-snmp configure
3026 command line option.
a97cfa48 3027DOC_END
3028
dba79ac5 3029NAME: snmp_access
3030TYPE: acl_access
3031LOC: Config.accessList.snmp
a97cfa48 3032DEFAULT: none
6502682e 3033DEFAULT_IF_NONE: deny all
1df370e3 3034IFDEF: SQUID_SNMP
a97cfa48 3035DOC_START
dba79ac5 3036 Allowing or denying access to the SNMP port.
08f6b5e0 3037
3038 All access to the agent is denied by default.
dba79ac5 3039 usage:
4feb7b2e 3040
dba79ac5 3041 snmp_access allow|deny [!]aclname ...
08f6b5e0 3042
3043Example:
6b53c392 3044 snmp_access allow snmppublic localhost
3045 snmp_access deny all
bdf18524 3046DOC_END
3047
15dcc168 3048NAME: snmp_incoming_address
3049TYPE: address
1ecaa0a0 3050LOC: Config.Addrs.snmp_incoming
15dcc168 3051DEFAULT: 0.0.0.0
3052IFDEF: SQUID_SNMP
3053DOC_NONE
3054NAME: snmp_outgoing_address
3055TYPE: address
3056LOC: Config.Addrs.snmp_outgoing
3057DEFAULT: 255.255.255.255
3058IFDEF: SQUID_SNMP
3059DOC_START
3060 Just like 'udp_incoming_address' above, but for the SNMP port.
3061
3062 snmp_incoming_address is used for the SNMP socket receiving
3063 messages from SNMP agents.
3064 snmp_outgoing_address is used for SNMP packets returned to SNMP
3065 agents.
3066
6b53c392 3067 The default snmp_incoming_address (0.0.0.0) is to listen on all
3068 available network interfaces.
15dcc168 3069
6b53c392 3070 If snmp_outgoing_address is set to 255.255.255.255 (the default)
3071 then it will use the same socket as snmp_incoming_address. Only
3072 change this if you want to have SNMP replies sent using another
3073 address than where this Squid listens for SNMP queries.
15dcc168 3074
6b53c392 3075 NOTE, snmp_incoming_address and snmp_outgoing_address can not have
3076 the same value since they both use port 3401.
15dcc168 3077DOC_END
bdf18524 3078
53ad48e6 3079NAME: as_whois_server
3080TYPE: string
3081LOC: Config.as_whois_server
3082DEFAULT: whois.ra.net
3083DEFAULT_IF_NONE: whois.ra.net
3084DOC_START
cf5cc17e 3085 WHOIS server to query for AS numbers. NOTE: AS numbers are
3086 queried only when Squid starts up, not for every request.
53ad48e6 3087DOC_END
95e36d02 3088
320e9f36 3089NAME: wccp_router
3090TYPE: address
3091LOC: Config.Wccp.router
3092DEFAULT: 0.0.0.0
eb824054 3093IFDEF: USE_WCCP
320e9f36 3094DOC_START
efd900cb 3095 Use this option to define your WCCP ``home'' router for
3096 Squid. Setting the 'wccp_router' to 0.0.0.0 (the default)
3097 disables WCCP.
320e9f36 3098DOC_END
3099
d20b1cd0 3100NAME: wccp_version
3101TYPE: int
3102LOC: Config.Wccp.version
3103DEFAULT: 4
3104IFDEF: USE_WCCP
3105DOC_START
3106 According to some users, Cisco IOS 11.2 only supports WCCP
3107 version 3. If you're using that version of IOS, change
3108 this value to 3.
3109DOC_END
3110
320e9f36 3111NAME: wccp_incoming_address
3112TYPE: address
eb824054 3113LOC: Config.Wccp.incoming
320e9f36 3114DEFAULT: 0.0.0.0
eb824054 3115IFDEF: USE_WCCP
320e9f36 3116DOC_NONE
3117NAME: wccp_outgoing_address
3118TYPE: address
eb824054 3119LOC: Config.Wccp.outgoing
320e9f36 3120DEFAULT: 255.255.255.255
eb824054 3121IFDEF: USE_WCCP
320e9f36 3122DOC_START
efd900cb 3123 wccp_incoming_address Use this option if you require WCCP
3124 messages to be received on only one
3125 interface. Do NOT use this option if
3126 you're unsure how many interfaces you
3127 have, or if you know you have only one
3128 interface.
320e9f36 3129
efd900cb 3130 wccp_outgoing_address Use this option if you require WCCP
3131 messages to be sent out on only one
3132 interface. Do NOT use this option if
3133 you're unsure how many interfaces you
3134 have, or if you know you have only one
3135 interface.
320e9f36 3136
efd900cb 3137 The default behavior is to not bind to any specific address.
320e9f36 3138
3139 NOTE, wccp_incoming_address and wccp_outgoing_address can not have
3140 the same value since they both use port 2048.
320e9f36 3141DOC_END
3142
3143
95e36d02 3144COMMENT_START
3145 DELAY POOL PARAMETERS (all require DELAY_POOLS compilation option)
3146 -----------------------------------------------------------------------------
95e36d02 3147COMMENT_END
3148
59715b38 3149NAME: delay_pools
3150TYPE: delay_pool_count
3151DEFAULT: 0
95e36d02 3152IFDEF: DELAY_POOLS
59715b38 3153LOC: Config.Delay
95e36d02 3154DOC_START
59715b38 3155 This represents the number of delay pools to be used. For example,
3156 if you have one class 2 delay pool and one class 3 delays pool, you
3157 have a total of 2 delay pools.
3158
6b8e7481 3159 To enable this option, you must use --enable-delay-pools with the
3160 configure script.
95e36d02 3161DOC_END
3162
59715b38 3163NAME: delay_class
3164TYPE: delay_pool_class
95e36d02 3165DEFAULT: none
3166IFDEF: DELAY_POOLS
59715b38 3167LOC: Config.Delay
95e36d02 3168DOC_START
59715b38 3169 This defines the class of each delay pool. There must be exactly one
3170 delay_class line for each delay pool. For example, to define two
3171 delay pools, one of class 2 and one of class 3, the settings above
3172 and here would be:
3173
6b53c392 3174Example:
3175 delay_pools 2 # 2 delay pools
3176 delay_class 1 2 # pool 1 is a class 2 pool
3177 delay_class 2 3 # pool 2 is a class 3 pool
59715b38 3178
3179 The delay pool classes are:
3180
3181 class 1 Everything is limited by a single aggregate
3182 bucket.
3183
3184 class 2 Everything is limited by a single aggregate
3185 bucket as well as an "individual" bucket chosen
3186 from bits 25 through 32 of the IP address.
3187
3188 class 3 Everything is limited by a single aggregate
3189 bucket as well as a "network" bucket chosen
3190 from bits 17 through 24 of the IP address and a
3191 "individual" bucket chosen from bits 17 through
3192 32 of the IP address.
3193
3194 NOTE: If an IP address is a.b.c.d
3195 -> bits 25 through 32 are "d"
3196 -> bits 17 through 24 are "c"
3197 -> bits 17 through 32 are "c * 256 + d"
95e36d02 3198DOC_END
3199
59715b38 3200NAME: delay_access
3201TYPE: delay_pool_access
95e36d02 3202DEFAULT: none
3203IFDEF: DELAY_POOLS
59715b38 3204LOC: Config.Delay
95e36d02 3205DOC_START
59715b38 3206 This is used to determine which delay pool a request falls into.
efd900cb 3207 The first matched delay pool is always used, i.e., if a request falls
59715b38 3208 into delay pool number one, no more delay are checked, otherwise the
3209 rest are checked in order of their delay pool number until they have
3210 all been checked. For example, if you want some_big_clients in delay
3211 pool 1 and lotsa_little_clients in delay pool 2:
95e36d02 3212
6b53c392 3213Example:
3214 delay_access 1 allow some_big_clients
3215 delay_access 1 deny all
3216 delay_access 2 allow lotsa_little_clients
3217 delay_access 2 deny all
95e36d02 3218DOC_END
3219
59715b38 3220NAME: delay_parameters
3221TYPE: delay_pool_rates
3222DEFAULT: none
95e36d02 3223IFDEF: DELAY_POOLS
59715b38 3224LOC: Config.Delay
95e36d02 3225DOC_START
59715b38 3226 This defines the parameters for a delay pool. Each delay pool has
3227 a number of "buckets" associated with it, as explained in the
3228 description of delay_class. For a class 1 delay pool, the syntax is:
95e36d02 3229
59715b38 3230delay_parameters pool aggregate
95e36d02 3231
59715b38 3232 For a class 2 delay pool:
95e36d02 3233
59715b38 3234delay_parameters pool aggregate individual
95e36d02 3235
59715b38 3236 For a class 3 delay pool:
95e36d02 3237
59715b38 3238delay_parameters pool aggregate network individual
95e36d02 3239
59715b38 3240 The variables here are:
95e36d02 3241
59715b38 3242 pool a pool number - ie, a number between 1 and the
3243 number specified in delay_pools as used in
3244 delay_class lines.
95e36d02 3245
59715b38 3246 aggregate the "delay parameters" for the aggregate bucket
3247 (class 1, 2, 3).
95e36d02 3248
59715b38 3249 individual the "delay parameters" for the individual
3250 buckets (class 2, 3).
3251
3252 network the "delay parameters" for the network buckets
3253 (class 3).
3254
3255 A pair of delay parameters is written restore/maximum, where restore is
3256 the number of bytes (not bits - modem and network speeds are usually
3257 quoted in bits) per second placed into the bucket, and maximum is the
3258 maximum number of bytes which can be in the bucket at any time.
3259
3260 For example, if delay pool number 1 is a class 2 delay pool as in the
3261 above example, and is being used to strictly limit each host to 64kbps
3262 (plus overheads), with no overall limit, the line is:
3263
3264delay_parameters 1 -1/-1 8000/8000
3265
3266 Note that the figure -1 is used to represent "unlimited".
3267
3268 And, if delay pool number 2 is a class 3 delay pool as in the above
3269 example, and you want to limit it to a total of 256kbps (strict limit)
3270 with each 8-bit network permitted 64kbps (strict limit) and each
3271 individual host permitted 4800bps with a bucket maximum size of 64kb
3272 to permit a decent web page to be downloaded at a decent speed
3273 (if the network is not being limited due to overuse) but slow down
3274 large downloads more significantly:
3275
3276delay_parameters 2 32000/32000 8000/8000 600/64000
3277
3278 There must be one delay_parameters line for each delay pool.
95e36d02 3279DOC_END
3280
59715b38 3281NAME: delay_initial_bucket_level
3282COMMENT: (percent, 0-100)
3283TYPE: ushort
3284DEFAULT: 50
95e36d02 3285IFDEF: DELAY_POOLS
59715b38 3286LOC: Config.Delay.initial
95e36d02 3287DOC_START
59715b38 3288 The initial bucket percentage is used to determine how much is put
3289 in each bucket when squid starts, is reconfigured, or first notices
3290 a host accessing it (in class 2 and class 3, individual hosts and
3291 networks only have buckets associated with them once they have been
3292 "seen" by squid).
95e36d02 3293DOC_END
6be2389e 3294
9cd6c6fb 3295NAME: incoming_icp_average
6be2389e 3296TYPE: int
3297DEFAULT: 6
3298LOC: Config.comm_incoming.icp_average
3299DOC_NONE
3300
9cd6c6fb 3301NAME: incoming_http_average
6be2389e 3302TYPE: int
3303DEFAULT: 4
3304LOC: Config.comm_incoming.http_average
3305DOC_NONE
3306
afc28c12 3307NAME: incoming_dns_average
3308TYPE: int
3309DEFAULT: 4
3310LOC: Config.comm_incoming.dns_average
3311DOC_NONE
3312
9cd6c6fb 3313NAME: min_icp_poll_cnt
6be2389e 3314TYPE: int
3315DEFAULT: 8
3316LOC: Config.comm_incoming.icp_min_poll
3317DOC_NONE
3318
afc28c12 3319NAME: min_dns_poll_cnt
3320TYPE: int
3321DEFAULT: 8
3322LOC: Config.comm_incoming.dns_min_poll
3323DOC_NONE
3324
9cd6c6fb 3325NAME: min_http_poll_cnt
6be2389e 3326TYPE: int
3327DEFAULT: 8
3328LOC: Config.comm_incoming.http_min_poll
3329DOC_START
b6a2f15e 3330 Heavy voodoo here. I can't even believe you are reading this.
6be2389e 3331 Are you crazy? Don't even think about adjusting these unless
3332 you understand the algorithms in comm_select.c first!
3333DOC_END
2b4283e4 3334
c5f627c2 3335NAME: max_open_disk_fds
3336TYPE: int
3337LOC: Config.max_open_disk_fds
3338DEFAULT: 0
6b53c392 3339DOC_START
3340 To avoid having disk as the I/O bottleneck Squid can optionally
3341 bypass the on-disk cache if more than this amount of disk file
3342 descriptors are open.
3343
3344 A value of 0 indicates no limit.
3345DOC_END
c5f627c2 3346
b540e168 3347NAME: offline_mode
3348TYPE: onoff
3349LOC: Config.onoff.offline
3350DEFAULT: off
3351DOC_START
3352 Enable this option and Squid will never try to validate cached
3353 objects.
3354DOC_END
3355
d548ee64 3356NAME: uri_whitespace
3357TYPE: uri_whitespace
3358LOC: Config.uri_whitespace
7e3ce7b9 3359DEFAULT: strip
d548ee64 3360DOC_START
3361 What to do with requests that have whitespace characters in the
3362 URI. Options:
3363
7e3ce7b9 3364 strip: The whitespace characters are stripped out of the URL.
3365 This is the behavior recommended by RFC2616.
d548ee64 3366 deny: The request is denied. The user receives an "Invalid
3367 Request" message.
3368 allow: The request is allowed and the URI is not changed. The
3369 whitespace characters remain in the URI. Note the
3370 whitespace is passed to redirector processes if they
3371 are in use.
3372 encode: The request is allowed and the whitespace characters are
3373 encoded according to RFC1738. This could be considered
3374 a violation of the HTTP/1.1
3375 RFC because proxies are not allowed to rewrite URI's.
3376 chop: The request is allowed and the URI is chopped at the
3377 first whitespace. This might also be considered a
3378 violation.
d548ee64 3379DOC_END
3380
376bb137 3381NAME: broken_posts
3382TYPE: acl_access
3383DEFAULT: none
3384LOC: Config.accessList.brokenPosts
c68e9c6b 3385DOC_START
376bb137 3386 A list of ACL elements which, if matched, causes Squid to send
3387 a extra CRLF pair after the body of a PUT/POST request.
3388
3389 Some HTTP servers has broken implementations of PUT/POST,
3390 and rely on a extra CRLF pair sent by some WWW clients.
3391
3392 Quote from RFC 2068 section 4.1 on this matter:
3393
3394 Note: certain buggy HTTP/1.0 client implementations generate an
3395 extra CRLF's after a POST request. To restate what is explicitly
3396 forbidden by the BNF, an HTTP/1.1 client must not preface or follow
3397 a request with an extra CRLF.
3398
6b53c392 3399Example:
3400 acl buggy_server url_regex ^http://....
3401 broken_posts allow buggy_server
c68e9c6b 3402DOC_END
9b094667 3403
e66d7923 3404NAME: mcast_miss_addr
3405IFDEF: MULTICAST_MISS_STREAM
3406TYPE: address
3407LOC: Config.mcast_miss.addr
3408DEFAULT: 255.255.255.255
b6a2f15e 3409DOC_START
3410 If you enable this option, every "cache miss" URL will
3411 be sent out on the specified multicast address.
3412
3413 Do not enable this option unless you are are absolutely
3414 certain you understand what you are doing.
3415DOC_END
e66d7923 3416
7e3ce7b9 3417NAME: mcast_miss_ttl
3418IFDEF: MULTICAST_MISS_TTL
3419TYPE: ushort
3420LOC: Config.mcast_miss.ttl
3421DEFAULT: 16
3422DOC_START
3423 This is the time-to-live value for packets multicasted
3424 when multicasting off cache miss URLs is enabled. By
3425 default this is set to 'site scope', i.e. 16.
3426DOC_END
3427
e66d7923 3428NAME: mcast_miss_port
3429IFDEF: MULTICAST_MISS_STREAM
3430TYPE: ushort
3431LOC: Config.mcast_miss.port
3432DEFAULT: 3135
b6a2f15e 3433DOC_START
efd900cb 3434 This is the port number to be used in conjunction with
b6a2f15e 3435 'mcast_miss_addr'.
3436DOC_END
e66d7923 3437
3438NAME: mcast_miss_encode_key
3439IFDEF: MULTICAST_MISS_STREAM
3440TYPE: string
3441LOC: Config.mcast_miss.encode_key
3442DEFAULT: XXXXXXXXXXXXXXXX
b6a2f15e 3443DOC_START
3444 The URLs that are sent in the multicast miss stream are
3445 encrypted. This is the encryption key.
3446DOC_END
e66d7923 3447
168dfda9 3448NAME: nonhierarchical_direct
3449TYPE: onoff
3450LOC: Config.onoff.nonhierarchical_direct
3451DEFAULT: on
3452DOC_START
3453 By default, Squid will send any non-hierarchical requests
3454 (matching hierarchy_stoplist or not cachable request type) direct
3455 to origin servers.
3456
3457 If you set this to off, then Squid will prefer to send these
3458 requests to parents.
3459
3460 Note that in most configurations, by turning this off you will only
3461 add latency to these request without any improvement in global hit
3462 ratio.
3463
3464 If you are inside an firewall then see never_direct instead of
3465 this directive.
168dfda9 3466DOC_END
3467
9b094667 3468NAME: prefer_direct
3469TYPE: onoff
3470LOC: Config.onoff.prefer_direct
168dfda9 3471DEFAULT: off
9b094667 3472DOC_START
168dfda9 3473 Normally Squid tries to use parents for most requests. If you by some
3474 reason like it to first try going direct and only use a parent if
3475 going direct fails then set this to off.
3476
3477 By combining nonhierarchical_direct off and prefer_direct on you
3478 can set up Squid to use a parent as a backup path if going direct
3479 fails.
9b094667 3480DOC_END
4d62b0af 3481
bcbc11b0 3482NAME: strip_query_terms
3483TYPE: onoff
3484LOC: Config.onoff.strip_query_terms
3485DEFAULT: on
3486DOC_START
3487 By default, Squid strips query terms from requested URLs before
3488 logging. This protects your user's privacy.
bcbc11b0 3489DOC_END
3490
b6a2f15e 3491NAME: coredump_dir
3492TYPE: string
3493LOC: Config.coredump_dir
3494DEFAULT: none
5ff76111 3495DEFAULT_IF_NONE: none
b6a2f15e 3496DOC_START
5ff76111 3497 By default Squid leaves core files in the directory from where
3498 it was started. If you set 'coredump_dir' to a directory
b6a2f15e 3499 that exists, Squid will chdir() to that directory at startup
3500 and coredump files will be left there.
5ff76111 3501
3502NOCOMMENT_START
3503# Leave coredumps in the first cache dir
3504coredump_dir @DEFAULT_SWAP_DIR@
3505NOCOMMENT_END
b6a2f15e 3506DOC_END
3507
07476a7f 3508NAME: redirector_bypass
3509TYPE: onoff
3510LOC: Config.onoff.redirector_bypass
3511DEFAULT: off
3512DOC_START
3513 When this is 'on', a request will not go through the
3514 redirector if all redirectors are busy. If this is 'off'
3515 and the redirector queue grows too large, Squid will exit
29de1a20 3516 with a FATAL error and ask you to increase the number of
07476a7f 3517 redirectors. You should only enable this if the redirectors
3518 are not critical to your caching system. If you use
3519 redirectors for access control, and you enable this option,
3520 then users may have access to pages that they should not
3521 be allowed to request.
3522DOC_END
3523
9bc73deb 3524NAME: ignore_unknown_nameservers
3525TYPE: onoff
3526LOC: Config.onoff.ignore_unknown_nameservers
3527DEFAULT: on
3528DOC_START
3529 By default Squid checks that DNS responses are received
3530 from the same IP addresses that they are sent to. If they
3531 don't match, Squid ignores the response and writes a warning
3532 message to cache.log. You can allow responses from unknown
3533 nameservers by setting this option to 'off'.
9bc73deb 3534DOC_END
3535
7e3ce7b9 3536NAME: digest_generation
3537IFDEF: USE_CACHE_DIGESTS
3538TYPE: onoff
3539LOC: Config.onoff.digest_generation
3540DEFAULT: on
3541DOC_START
3542 This controls whether the server will generate a Cache Digest
3543 of its contents. By default, Cache Digest generation is
3544 enabled if Squid is compiled with USE_CACHE_DIGESTS defined.
7e3ce7b9 3545DOC_END
3546
3547NAME: digest_bits_per_entry
3548IFDEF: USE_CACHE_DIGESTS
3549TYPE: int
3550LOC: Config.digest.bits_per_entry
3551DEFAULT: 5
3552DOC_START
3553 This is the number of bits of the server's Cache Digest which
3554 will be associated with the Digest entry for a given HTTP
3555 Method and URL (public key) combination. The default is 5.
7e3ce7b9 3556DOC_END
3557
3558NAME: digest_rebuild_period
3559IFDEF: USE_CACHE_DIGESTS
efd900cb 3560COMMENT: (seconds)
3561TYPE: time_t
7e3ce7b9 3562LOC: Config.digest.rebuild_period
efd900cb 3563DEFAULT: 1 hour
7e3ce7b9 3564DOC_START
3565 This is the number of seconds between Cache Digest rebuilds.
7e3ce7b9 3566DOC_END
3567
3568NAME: digest_rewrite_period
efd900cb 3569COMMENT: (seconds)
7e3ce7b9 3570IFDEF: USE_CACHE_DIGESTS
efd900cb 3571TYPE: time_t
7e3ce7b9 3572LOC: Config.digest.rewrite_period
efd900cb 3573DEFAULT: 1 hour
7e3ce7b9 3574DOC_START
3575 This is the number of seconds between Cache Digest writes to
6b53c392 3576 disk.
7e3ce7b9 3577DOC_END
3578
3579NAME: digest_swapout_chunk_size
efd900cb 3580COMMENT: (bytes)
3581TYPE: b_size_t
7e3ce7b9 3582IFDEF: USE_CACHE_DIGESTS
7e3ce7b9 3583LOC: Config.digest.swapout_chunk_size
efd900cb 3584DEFAULT: 4096 bytes
7e3ce7b9 3585DOC_START
3586 This is the number of bytes of the Cache Digest to write to
efd900cb 3587 disk at a time. It defaults to 4096 bytes (4KB), the Squid
3588 default swap page.
7e3ce7b9 3589DOC_END
3590
3591NAME: digest_rebuild_chunk_percentage
efd900cb 3592COMMENT: (percent, 0-100)
7e3ce7b9 3593IFDEF: USE_CACHE_DIGESTS
3594TYPE: int
3595LOC: Config.digest.rebuild_chunk_percentage
3596DEFAULT: 10
3597DOC_START
efd900cb 3598 This is the percentage of the Cache Digest to be scanned at a
3599 time. By default it is set to 10% of the Cache Digest.
7e3ce7b9 3600DOC_END
3601
efd900cb 3602NAME: chroot
3603TYPE: string
3604LOC: Config.chroot_dir
3605DEFAULT: none
3606DOC_START
3607 Use this to have Squid do a chroot() while initializing. This
3608 also causes Squid to fully drop root privileges after
3609 initializing. This means, for example, that if you use a HTTP
3610 port less than 1024 and try to reconfigure, you will get an
3611 error.
3612DOC_END
efd900cb 3613
3614NAME: client_persistent_connections
3615TYPE: onoff
3616LOC: Config.onoff.client_pconns
3617DEFAULT: on
3618DOC_NONE
3619
3620NAME: server_persistent_connections
3621TYPE: onoff
3622LOC: Config.onoff.server_pconns
3623DEFAULT: on
3624DOC_START
3625 Persistent connection support for clients and servers. By
3626 default, Squid uses persistent connections (when allowed)
3627 with its clients and servers. You can use these options to
3628 disable persistent connections with clients and/or servers.
efd900cb 3629DOC_END
9d24d603 3630
3d15e2d7 3631NAME: pipeline_prefetch
3632TYPE: onoff
3633LOC: Config.onoff.pipeline_prefetch
3634DEFAULT: on
3635DOC_START
3636 To boost the performance of pipelined requests to closer
3637 match that of a non-proxied environment Squid tries to fetch
3638 up to two requests in parallell from a pipeline.
3639DOC_END
3640
56fe752e 3641NAME: extension_methods
3642TYPE: wordlist
3643LOC: Config.ext_methods
3644DEFAULT: none
3645DOC_START
3646 Squid only knows about standardized HTTP request methods.
3647 You can add up to 20 additional "extension" methods here.
3648DOC_END
3649
b8a46de0 3650NAME: high_response_time_warning
3651TYPE: int
3652COMMENT: (msec)
3653LOC: Config.warnings.high_rptm
3654DEFAULT: 0
3655DOC_START
3656 If the one-minute median response time exceeds this value,
3657 Squid prints a WARNING with debug level 0 to get the
3658 administrators attention. The value is in milliseconds.
3659DOC_END
3660
3661NAME: high_page_fault_warning
3662TYPE: int
3663LOC: Config.warnings.high_pf
3664DEFAULT: 0
3665DOC_START
3666 If the one-minute average page fault rate exceeds this
3667 value, Squid prints a WARNING with debug level 0 to get
3668 the administrators attention. The value is in page faults
3669 per second.
3670DOC_END
3671
3672NAME: high_memory_warning
3673TYPE: b_size_t
3674LOC: Config.warnings.high_memory
3675DEFAULT: 0
3676DOC_START
3677 If the memory usage (as determined by mallinfo) exceeds
3678 value, Squid prints a WARNING with debug level 0 to get
3679 the administrators attention.
3680DOC_END
3681
65a53c8e 3682NAME: store_dir_select_algorithm
3683TYPE: string
3684LOC: Config.store_dir_select_algorithm
3685DEFAULT: least-load
3686DOC_START
3687 Set this to 'round-robin' as an alternative.
3688DOC_END
3689
225644d7 3690NAME: forward_log
3691IFDEF: WIP_FWD_LOG
3692TYPE: string
3693DEFAULT: none
3694LOC: Config.Log.forward
3695DOC_START
3696 Logs the server-side requests.
3697
3698 This is currently work in progress.
3699DOC_END
3700
7613d09c 3701NAME: ie_refresh
3702COMMENT: on|off
3703TYPE: onoff
3704LOC: Config.onoff.ie_refresh
3705DEFAULT: off
3706DOC_START
3707 Microsoft Internet Explorer up until version 5.5 Service
3708 Pack 1 has an issue with transparent proxies, wherein it
3709 is impossible to force a refresh. Turning this on provides
3710 a partial fix to the problem, by causing all IMS-REFRESH
3711 requests from older IE versions to check the origin server
3712 for fresh content. This reduces hit ratio by some amount
3713 (~10% in my experience), but allows users to actually get
3714 fresh content when they want it. Note that because Squid
3715 cannot tell if the user is using 5.5 or 5.5SP1, the behavior
3716 of 5.5 is unchanged from old versions of Squid (i.e. a
3717 forced refresh is impossible). Newer versions of IE will,
3718 hopefully, continue to have the new behavior and will be
3719 handled based on that assumption. This option defaults to
3720 the old Squid behavior, which is better for hit ratios but
3721 worse for clients using IE, if they need to be able to
3722 force fresh content.
3723DOC_END
3724
f66a9ef4 3725NAME: vary_ignore_expire
3726COMMENT: on|off
3727TYPE: onoff
3728LOC: Config.onoff.vary_ignore_expire
3729DEFAULT: off
3730DOC_START
3731 Many HTTP servers supporting Vary gives such objects
3732 immediate expiry time with no cache-control header
3733 when requested by a HTTP/1.0 client. This option
3734 enables Squid to ignore such expiry times until
3735 HTTP/1.1 is fully implemented.
3736 WARNING: This may eventually cause some varying
3737 objects not intended for caching to get cached.
3738DOC_END
3739
d1ec12c7 3740NAME: sleep_after_fork
3741COMMENT: (microseconds)
3742TYPE: int
3743LOC: Config.sleep_after_fork
3744DEFAULT: 0
3745DOC_START
96d88dcb 3746 When this is set to a non-zero value, the main Squid process
3747 sleeps the specified number of microseconds after a fork()
3748 system call. This sleep may help the situation where your
3749 system reports fork() failures due to lack of (virtual)
3750 memory. Note, however, that if you have a lot of child
3751 processes, then these sleep delays will add up and your
3752 Squid will not service requests for some amount of time
3753 until all the child processes have been started.
d1ec12c7 3754DOC_END
1fbbdcb0 3755
2b4283e4 3756EOF