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