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