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