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