c3b13167bbddeeee89cbcbf37c785b92bd2b393f
[privoxy.git] / doc / webserver / user-manual / config.html
1 <HTML
2 ><HEAD
3 ><TITLE
4 >The Main Configuration File</TITLE
5 ><META
6 NAME="GENERATOR"
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.60"><LINK
8 REL="HOME"
9 TITLE="Privoxy 2.9.18 User Manual"
10 HREF="index.html"><LINK
11 REL="PREVIOUS"
12 TITLE="Privoxy Configuration"
13 HREF="configuration.html"><LINK
14 REL="NEXT"
15 TITLE="Actions Files"
16 HREF="actions-file.html"><LINK
17 REL="STYLESHEET"
18 TYPE="text/css"
19 HREF="../p_doc.css"></HEAD
20 ><BODY
21 CLASS="SECT1"
22 BGCOLOR="#EEEEEE"
23 TEXT="#000000"
24 LINK="#0000FF"
25 VLINK="#840084"
26 ALINK="#0000FF"
27 ><DIV
28 CLASS="NAVHEADER"
29 ><TABLE
30 WIDTH="100%"
31 BORDER="0"
32 CELLPADDING="0"
33 CELLSPACING="0"
34 ><TR
35 ><TH
36 COLSPAN="3"
37 ALIGN="center"
38 >Privoxy 2.9.18 User Manual</TH
39 ></TR
40 ><TR
41 ><TD
42 WIDTH="10%"
43 ALIGN="left"
44 VALIGN="bottom"
45 ><A
46 HREF="configuration.html"
47 >Prev</A
48 ></TD
49 ><TD
50 WIDTH="80%"
51 ALIGN="center"
52 VALIGN="bottom"
53 ></TD
54 ><TD
55 WIDTH="10%"
56 ALIGN="right"
57 VALIGN="bottom"
58 ><A
59 HREF="actions-file.html"
60 >Next</A
61 ></TD
62 ></TR
63 ></TABLE
64 ><HR
65 ALIGN="LEFT"
66 WIDTH="100%"></DIV
67 ><DIV
68 CLASS="SECT1"
69 ><H1
70 CLASS="SECT1"
71 ><A
72 NAME="CONFIG"
73 >7. The Main Configuration File</A
74 ></H1
75 ><P
76 > Again, the main configuration file is named <TT
77 CLASS="FILENAME"
78 >config</TT
79 > on
80  Linux/Unix/BSD and OS/2, and <TT
81 CLASS="FILENAME"
82 >config.txt</TT
83 > on Windows.
84  Configuration lines consist of an initial keyword followed by a list of
85  values, all separated by whitespace (any number of spaces or tabs). For
86  example:</P
87 ><P
88 > <TT
89 CLASS="LITERAL"
90 >  <P
91 CLASS="LITERALLAYOUT"
92 >&nbsp;&nbsp;<I
93 CLASS="EMPHASIS"
94 >confdir /etc/privoxy</I
95 ></P
96 >
97  </TT
98 > </P
99 ><P
100 > Assigns the value <TT
101 CLASS="LITERAL"
102 >/etc/privoxy</TT
103 > to the option
104  <TT
105 CLASS="LITERAL"
106 >confdir</TT
107 > and thus indicates that the configuration
108  directory is named <SPAN
109 CLASS="QUOTE"
110 >"/etc/privoxy/"</SPAN
111 >.</P
112 ><P
113 > All options in the config file except for <TT
114 CLASS="LITERAL"
115 >confdir</TT
116 > and
117  <TT
118 CLASS="LITERAL"
119 >logdir</TT
120 > are optional. Watch out in the below description
121  for what happens if you leave them unset.</P
122 ><P
123 > The main config file controls all aspects of <SPAN
124 CLASS="APPLICATION"
125 >Privoxy</SPAN
126 >'s
127  operation that are not location dependent (i.e. they apply universally, no matter
128  where you may be surfing).</P
129 ><DIV
130 CLASS="SECT2"
131 ><H2
132 CLASS="SECT2"
133 ><A
134 NAME="CONF-LOG-LOC"
135 >7.1. Configuration and Log File Locations</A
136 ></H2
137 ><P
138 > <SPAN
139 CLASS="APPLICATION"
140 >Privoxy</SPAN
141 > can (and normally does) use a number of
142  other files for additional configuration, help and logging.
143  This section of the configuration file tells <SPAN
144 CLASS="APPLICATION"
145 >Privoxy</SPAN
146 >
147  where to find those other files. </P
148 ><P
149 > The user running <SPAN
150 CLASS="APPLICATION"
151 >Privoxy</SPAN
152 >, must have read
153  permission for all configuration files, and write permission to any files
154  that would be modified, such as log files and actions files.</P
155 ><DIV
156 CLASS="SECT3"
157 ><H4
158 CLASS="SECT3"
159 ><A
160 NAME="CONFDIR"
161 >7.1.1. confdir</A
162 ></H4
163 ><P
164 ></P
165 ><DIV
166 CLASS="VARIABLELIST"
167 ><DL
168 ><DT
169 >Specifies:</DT
170 ><DD
171 ><P
172 >The directory where the other configuration files are located</P
173 ></DD
174 ><DT
175 >Type of value:</DT
176 ><DD
177 ><P
178 >Path name</P
179 ></DD
180 ><DT
181 >Default value:</DT
182 ><DD
183 ><P
184 >/etc/privoxy (Unix) <I
185 CLASS="EMPHASIS"
186 >or</I
187 > <SPAN
188 CLASS="APPLICATION"
189 >Privoxy</SPAN
190 > installation dir (Windows) </P
191 ></DD
192 ><DT
193 >Effect if unset:</DT
194 ><DD
195 ><P
196 ><I
197 CLASS="EMPHASIS"
198 >Mandatory</I
199 ></P
200 ></DD
201 ><DT
202 >Notes:</DT
203 ><DD
204 ><P
205 >    No trailing <SPAN
206 CLASS="QUOTE"
207 >"<TT
208 CLASS="LITERAL"
209 >/</TT
210 >"</SPAN
211 >, please
212    </P
213 ><P
214 >    When development goes modular and multi-user, the blocker, filter, and
215     per-user config will be stored in subdirectories of <SPAN
216 CLASS="QUOTE"
217 >"confdir"</SPAN
218 >.
219     For now, the configuration directory structure is flat, except for 
220     <TT
221 CLASS="FILENAME"
222 >confdir/templates</TT
223 >, where the HTML templates for CGI 
224     output reside (e.g. <SPAN
225 CLASS="APPLICATION"
226 >Privoxy's</SPAN
227 > 404 error page). 
228    </P
229 ></DD
230 ></DL
231 ></DIV
232 ></DIV
233 ><DIV
234 CLASS="SECT3"
235 ><H4
236 CLASS="SECT3"
237 ><A
238 NAME="LOGDIR"
239 >7.1.2. logdir</A
240 ></H4
241 ><P
242 ></P
243 ><DIV
244 CLASS="VARIABLELIST"
245 ><DL
246 ><DT
247 >Specifies:</DT
248 ><DD
249 ><P
250 >    The directory where all logging takes place (i.e. where <TT
251 CLASS="FILENAME"
252 >logfile</TT
253 > and 
254     <TT
255 CLASS="FILENAME"
256 >jarfile</TT
257 > are located) 
258    </P
259 ></DD
260 ><DT
261 >Type of value:</DT
262 ><DD
263 ><P
264 >Path name</P
265 ></DD
266 ><DT
267 >Default value:</DT
268 ><DD
269 ><P
270 >/var/log/privoxy (Unix) <I
271 CLASS="EMPHASIS"
272 >or</I
273 > <SPAN
274 CLASS="APPLICATION"
275 >Privoxy</SPAN
276 > installation dir (Windows) </P
277 ></DD
278 ><DT
279 >Effect if unset:</DT
280 ><DD
281 ><P
282 ><I
283 CLASS="EMPHASIS"
284 >Mandatory</I
285 ></P
286 ></DD
287 ><DT
288 >Notes:</DT
289 ><DD
290 ><P
291 >    No trailing <SPAN
292 CLASS="QUOTE"
293 >"<TT
294 CLASS="LITERAL"
295 >/</TT
296 >"</SPAN
297 >, please
298    </P
299 ></DD
300 ></DL
301 ></DIV
302 ></DIV
303 ><DIV
304 CLASS="SECT3"
305 ><H4
306 CLASS="SECT3"
307 ><A
308 NAME="ACTIONSFILE"
309 >7.1.3. actionsfile</A
310 ></H4
311 ><A
312 NAME="DEFAULT.ACTION"
313 ></A
314 ><A
315 NAME="STANDARD.ACTION"
316 ></A
317 ><A
318 NAME="USER.ACTION"
319 ></A
320 ><P
321 ></P
322 ><DIV
323 CLASS="VARIABLELIST"
324 ><DL
325 ><DT
326 >Specifies:</DT
327 ><DD
328 ><P
329 >    The <A
330 HREF="actions-file.html"
331 >actions file(s)</A
332 > to use
333    </P
334 ></DD
335 ><DT
336 >Type of value:</DT
337 ><DD
338 ><P
339 >File name, relative to <TT
340 CLASS="LITERAL"
341 >confdir</TT
342 >, without the <TT
343 CLASS="LITERAL"
344 >.action</TT
345 > suffix</P
346 ></DD
347 ><DT
348 >Default values:</DT
349 ><DD
350 ><P
351 ></P
352 ><TABLE
353 BORDER="0"
354 ><TBODY
355 ><TR
356 ><TD
357 >     <P
358 CLASS="LITERALLAYOUT"
359 >&nbsp;&nbsp;standard&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Internal&nbsp;purposes,&nbsp;no&nbsp;editing&nbsp;recommended</P
360 >
361     </TD
362 ></TR
363 ><TR
364 ><TD
365 >     <P
366 CLASS="LITERALLAYOUT"
367 >&nbsp;&nbsp;default&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Main&nbsp;actions&nbsp;file</P
368 >
369     </TD
370 ></TR
371 ><TR
372 ><TD
373 >     <P
374 CLASS="LITERALLAYOUT"
375 >&nbsp;&nbsp;user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;User&nbsp;customizations</P
376 >
377     </TD
378 ></TR
379 ></TBODY
380 ></TABLE
381 ><P
382 ></P
383 ></DD
384 ><DT
385 >Effect if unset:</DT
386 ><DD
387 ><P
388 >    No actions are taken at all. Simple neutral proxying. 
389    </P
390 ></DD
391 ><DT
392 >Notes:</DT
393 ><DD
394 ><P
395 >    Multiple <TT
396 CLASS="LITERAL"
397 >actionsfile</TT
398 > lines are permitted, and are in fact recommended!
399    </P
400 ><P
401
402     The default values include standard.action, which is used for internal
403     purposes and should be loaded, default.action, which is the
404     <SPAN
405 CLASS="QUOTE"
406 >"main"</SPAN
407 > actions file maintained by the developers, and
408     <TT
409 CLASS="FILENAME"
410 >user.action</TT
411 >, where you can make your personal additions.
412    </P
413 ><P
414
415     Actions files are where all the per site and per URL configuration is done for 
416     ad blocking, cookie management, privacy considerations, etc.
417     There is no point in using <SPAN
418 CLASS="APPLICATION"
419 >Privoxy</SPAN
420 > without at 
421     least one actions file.
422    </P
423 ></DD
424 ></DL
425 ></DIV
426 ></DIV
427 ><DIV
428 CLASS="SECT3"
429 ><H4
430 CLASS="SECT3"
431 ><A
432 NAME="FILTERFILE"
433 >7.1.4. filterfile</A
434 ></H4
435 ><A
436 NAME="DEFAULT.FILTER"
437 ></A
438 ><P
439 ></P
440 ><DIV
441 CLASS="VARIABLELIST"
442 ><DL
443 ><DT
444 >Specifies:</DT
445 ><DD
446 ><P
447 >    The <A
448 HREF="filter-file.html"
449 >filter file</A
450 > to use
451    </P
452 ></DD
453 ><DT
454 >Type of value:</DT
455 ><DD
456 ><P
457 >File name, relative to <TT
458 CLASS="LITERAL"
459 >confdir</TT
460 ></P
461 ></DD
462 ><DT
463 >Default value:</DT
464 ><DD
465 ><P
466 >default.filter (Unix) <I
467 CLASS="EMPHASIS"
468 >or</I
469 > default.filter.txt (Windows)</P
470 ></DD
471 ><DT
472 >Effect if unset:</DT
473 ><DD
474 ><P
475 >    No textual content filtering takes place, i.e. all
476     <TT
477 CLASS="LITERAL"
478 >+<A
479 HREF="actions-file.html#FILTER"
480 >filter</A
481 >{<TT
482 CLASS="REPLACEABLE"
483 ><I
484 >name</I
485 ></TT
486 >}</TT
487 >
488     actions in the actions files are turned neutral.
489    </P
490 ></DD
491 ><DT
492 >Notes:</DT
493 ><DD
494 ><P
495 >    The <A
496 HREF="filter-file.html"
497 >filter file</A
498 > contains content modification
499     rules that use <A
500 HREF="appendix.html#REGEX"
501 >regular expressions</A
502 >. These rules permit
503     powerful changes on the content of Web pages, e.g., you could disable your favorite
504     JavaScript annoyances, re-write the actual displayed text, or just have some
505     fun replacing <SPAN
506 CLASS="QUOTE"
507 >"Microsoft"</SPAN
508 > with <SPAN
509 CLASS="QUOTE"
510 >"MicroSuck"</SPAN
511 > wherever
512     it appears on a Web page.
513    </P
514 ><P
515 >    The
516     <TT
517 CLASS="LITERAL"
518 >+<A
519 HREF="actions-file.html#FILTER"
520 >filter</A
521 >{<TT
522 CLASS="REPLACEABLE"
523 ><I
524 >name</I
525 ></TT
526 >}</TT
527 >
528     actions rely on the relevant filter (<TT
529 CLASS="REPLACEABLE"
530 ><I
531 >name</I
532 ></TT
533 >)
534     to be defined in the filter file!
535    </P
536 ><P
537 >    A pre-defined filter file called <TT
538 CLASS="FILENAME"
539 >default.filter</TT
540 > that contains
541     a bunch of handy filters for common problems is included in the distribution.
542     See the section on the <TT
543 CLASS="LITERAL"
544 ><A
545 HREF="actions-file.html#FILTER"
546 >filter</A
547 ></TT
548 >
549     action for a list.
550    </P
551 ></DD
552 ></DL
553 ></DIV
554 ></DIV
555 ><DIV
556 CLASS="SECT3"
557 ><H4
558 CLASS="SECT3"
559 ><A
560 NAME="LOGFILE"
561 >7.1.5. logfile</A
562 ></H4
563 ><P
564 ></P
565 ><DIV
566 CLASS="VARIABLELIST"
567 ><DL
568 ><DT
569 >Specifies:</DT
570 ><DD
571 ><P
572 >    The log file to use
573    </P
574 ></DD
575 ><DT
576 >Type of value:</DT
577 ><DD
578 ><P
579 >File name, relative to <TT
580 CLASS="LITERAL"
581 >logdir</TT
582 ></P
583 ></DD
584 ><DT
585 >Default value:</DT
586 ><DD
587 ><P
588 >logfile (Unix) <I
589 CLASS="EMPHASIS"
590 >or</I
591 > privoxy.log (Windows)</P
592 ></DD
593 ><DT
594 >Effect if unset:</DT
595 ><DD
596 ><P
597 >    No log file is used, all log messages go to the console (<TT
598 CLASS="LITERAL"
599 >STDERR</TT
600 >).
601    </P
602 ></DD
603 ><DT
604 >Notes:</DT
605 ><DD
606 ><P
607 >    The windows version will additionally log to the console.
608    </P
609 ><P
610 >    The logfile is where all logging and error messages are written. The level
611     of detail and number of messages are set with the <TT
612 CLASS="LITERAL"
613 >debug</TT
614 >
615     option (see below). The logfile can be useful for tracking down a problem with
616     <SPAN
617 CLASS="APPLICATION"
618 >Privoxy</SPAN
619 > (e.g., it's not blocking an ad you
620     think it should block) but in most cases you probably will never look at it.
621    </P
622 ><P
623 >    Your logfile will grow indefinitely, and you will probably want to
624     periodically remove it.  On Unix systems, you can do this with a cron job
625     (see <SPAN
626 CLASS="QUOTE"
627 >"man cron"</SPAN
628 >). For Red Hat, a <B
629 CLASS="COMMAND"
630 >logrotate</B
631
632     script has been included.
633    </P
634 ><P
635 >    On SuSE Linux systems, you can place a line like <SPAN
636 CLASS="QUOTE"
637 >"/var/log/privoxy.*
638     +1024k 644 nobody.nogroup"</SPAN
639 > in <TT
640 CLASS="FILENAME"
641 >/etc/logfiles</TT
642 >, with
643     the effect that cron.daily will automatically archive, gzip, and empty the
644     log, when it exceeds 1M size.
645    </P
646 ><P
647 >    Any log files must be writable by whatever user <SPAN
648 CLASS="APPLICATION"
649 >Privoxy</SPAN
650 >
651     is being run as (default on UNIX, user id is <SPAN
652 CLASS="QUOTE"
653 >"privoxy"</SPAN
654 >).
655    </P
656 ></DD
657 ></DL
658 ></DIV
659 ></DIV
660 ><DIV
661 CLASS="SECT3"
662 ><H4
663 CLASS="SECT3"
664 ><A
665 NAME="JARFILE"
666 >7.1.6. jarfile</A
667 ></H4
668 ><P
669 ></P
670 ><DIV
671 CLASS="VARIABLELIST"
672 ><DL
673 ><DT
674 >Specifies:</DT
675 ><DD
676 ><P
677 >    The file to store intercepted cookies in
678    </P
679 ></DD
680 ><DT
681 >Type of value:</DT
682 ><DD
683 ><P
684 >File name, relative to <TT
685 CLASS="LITERAL"
686 >logdir</TT
687 ></P
688 ></DD
689 ><DT
690 >Default value:</DT
691 ><DD
692 ><P
693 >jarfile (Unix) <I
694 CLASS="EMPHASIS"
695 >or</I
696 > privoxy.jar (Windows)</P
697 ></DD
698 ><DT
699 >Effect if unset:</DT
700 ><DD
701 ><P
702 >    Intercepted cookies are not stored at all.
703    </P
704 ></DD
705 ><DT
706 >Notes:</DT
707 ><DD
708 ><P
709 >    The jarfile may grow to ridiculous sizes over time.
710    </P
711 ></DD
712 ></DL
713 ></DIV
714 ></DIV
715 ><DIV
716 CLASS="SECT3"
717 ><H4
718 CLASS="SECT3"
719 ><A
720 NAME="TRUSTFILE"
721 >7.1.7. trustfile</A
722 ></H4
723 ><P
724 ></P
725 ><DIV
726 CLASS="VARIABLELIST"
727 ><DL
728 ><DT
729 >Specifies:</DT
730 ><DD
731 ><P
732 >    The trust file to use
733    </P
734 ></DD
735 ><DT
736 >Type of value:</DT
737 ><DD
738 ><P
739 >File name, relative to <TT
740 CLASS="LITERAL"
741 >confdir</TT
742 ></P
743 ></DD
744 ><DT
745 >Default value:</DT
746 ><DD
747 ><P
748 ><I
749 CLASS="EMPHASIS"
750 >Unset (commented out)</I
751 >. When activated: trust (Unix) <I
752 CLASS="EMPHASIS"
753 >or</I
754 > trust.txt (Windows)</P
755 ></DD
756 ><DT
757 >Effect if unset:</DT
758 ><DD
759 ><P
760 >    The whole trust mechanism is turned off.
761    </P
762 ></DD
763 ><DT
764 >Notes:</DT
765 ><DD
766 ><P
767 >    The trust mechanism is an experimental feature for building white-lists and should
768     be used with care. It is <I
769 CLASS="EMPHASIS"
770 >NOT</I
771 > recommended for the casual user.
772    </P
773 ><P
774 >    If you specify a trust file, <SPAN
775 CLASS="APPLICATION"
776 >Privoxy</SPAN
777 > will only allow
778     access to sites that are named in the trustfile. 
779     You can also mark sites as trusted referrers (with <TT
780 CLASS="LITERAL"
781 >+</TT
782 >), with
783     the effect that access to untrusted sites will be granted, if a link from a
784     trusted referrer was used.
785     The link target will then be added to the <SPAN
786 CLASS="QUOTE"
787 >"trustfile"</SPAN
788 >.
789     Possible applications include limiting Internet access for children.
790    </P
791 ><P
792 >    If you use <TT
793 CLASS="LITERAL"
794 >+</TT
795 > operator in the trust file, it may grow considerably over time.
796    </P
797 ></DD
798 ></DL
799 ></DIV
800 ></DIV
801 ></DIV
802 ><DIV
803 CLASS="SECT2"
804 ><H2
805 CLASS="SECT2"
806 ><A
807 NAME="LOCAL-SET-UP"
808 >7.2. Local Set-up Documentation</A
809 ></H2
810 ><P
811 >    If you intend to operate <SPAN
812 CLASS="APPLICATION"
813 >Privoxy</SPAN
814 > for more users
815     than just yourself, it might be a good idea to let them know how to reach
816     you, what you block and why you do that, your policies, etc.
817    </P
818 ><DIV
819 CLASS="SECT3"
820 ><H4
821 CLASS="SECT3"
822 ><A
823 NAME="USER-MANUAL"
824 >7.2.1. user-manual</A
825 ></H4
826 ><P
827 ></P
828 ><DIV
829 CLASS="VARIABLELIST"
830 ><DL
831 ><DT
832 >Specifies:</DT
833 ><DD
834 ><P
835 >    Location of the <SPAN
836 CLASS="APPLICATION"
837 >Privoxy</SPAN
838 > User Manual.
839    </P
840 ></DD
841 ><DT
842 >Type of value:</DT
843 ><DD
844 ><P
845 >A fully qualified URI</P
846 ></DD
847 ><DT
848 >Default value:</DT
849 ><DD
850 ><P
851 ><I
852 CLASS="EMPHASIS"
853 >Unset</I
854 ></P
855 ></DD
856 ><DT
857 >Effect if unset:</DT
858 ><DD
859 ><P
860 >    <A
861 HREF="http://www.privoxy.org/user-manual/"
862 TARGET="_top"
863 >http://www.privoxy.org/<TT
864 CLASS="REPLACEABLE"
865 ><I
866 >version</I
867 ></TT
868 >/user-manual/</A
869 >
870     will be used, where <TT
871 CLASS="REPLACEABLE"
872 ><I
873 >version</I
874 ></TT
875 > is the <SPAN
876 CLASS="APPLICATION"
877 >Privoxy</SPAN
878 > version.
879    </P
880 ></DD
881 ><DT
882 >Notes:</DT
883 ><DD
884 ><P
885 >    The User Manual URI is used for help links from some of the internal CGI pages. 
886     The manual itself is normally packaged with the binary distributions, so you probably want
887     to set this to a locally installed copy. For multi-user setups, you could provide a copy on
888     a local webserver for all your users and use the corresponding URL here.
889    </P
890 ><P
891 >    Examples:
892    </P
893 ><P
894 >   Unix, in local filesystem:
895   </P
896 ><P
897 >   <TABLE
898 BORDER="0"
899 BGCOLOR="#E0E0E0"
900 WIDTH="90%"
901 ><TR
902 ><TD
903 ><PRE
904 CLASS="SCREEN"
905 >user-manual  file:///usr/share/doc/privoxy-2.9.18/user-manual/</PRE
906 ></TD
907 ></TR
908 ></TABLE
909 >
910   </P
911 ><P
912 >   Any platform, on local webserver (called <SPAN
913 CLASS="QUOTE"
914 >"local-webserver"</SPAN
915 >):
916   </P
917 ><P
918 >   <TABLE
919 BORDER="0"
920 BGCOLOR="#E0E0E0"
921 WIDTH="90%"
922 ><TR
923 ><TD
924 ><PRE
925 CLASS="SCREEN"
926 >user-manual  http://local-webserver/privoxy-user-manual/</PRE
927 ></TD
928 ></TR
929 ></TABLE
930 >
931   </P
932 ><DIV
933 CLASS="WARNING"
934 ><P
935 ></P
936 ><TABLE
937 CLASS="WARNING"
938 BORDER="1"
939 WIDTH="90%"
940 ><TR
941 ><TD
942 ALIGN="CENTER"
943 ><B
944 >Warning</B
945 ></TD
946 ></TR
947 ><TR
948 ><TD
949 ALIGN="LEFT"
950 ><P
951 >     If set, this option should be <I
952 CLASS="EMPHASIS"
953 >the first option in the config
954      file</I
955 >, because it is used while the config file is being read.
956    </P
957 ></TD
958 ></TR
959 ></TABLE
960 ></DIV
961 ></DD
962 ></DL
963 ></DIV
964 ></DIV
965 ><DIV
966 CLASS="SECT3"
967 ><H4
968 CLASS="SECT3"
969 ><A
970 NAME="TRUST-INFO-URL"
971 >7.2.2. trust-info-url</A
972 ></H4
973 ><P
974 ></P
975 ><DIV
976 CLASS="VARIABLELIST"
977 ><DL
978 ><DT
979 >Specifies:</DT
980 ><DD
981 ><P
982 >    A URL to be displayed in the error page that users will see if access to an untrusted page is denied.    
983    </P
984 ></DD
985 ><DT
986 >Type of value:</DT
987 ><DD
988 ><P
989 >URL</P
990 ></DD
991 ><DT
992 >Default value:</DT
993 ><DD
994 ><P
995 >Two example URL are provided</P
996 ></DD
997 ><DT
998 >Effect if unset:</DT
999 ><DD
1000 ><P
1001 >    No links are displayed on the "untrusted" error page.
1002    </P
1003 ></DD
1004 ><DT
1005 >Notes:</DT
1006 ><DD
1007 ><P
1008 >    The value of this option only matters if the experimental trust mechanism has been
1009     activated. (See <A
1010 HREF="config.html#TRUSTFILE"
1011 ><I
1012 CLASS="EMPHASIS"
1013 >trustfile</I
1014 ></A
1015 > above.)
1016    </P
1017 ><P
1018 >    If you use the trust mechanism, it is a good idea to write up some on-line
1019     documentation about your trust policy and to specify the URL(s) here.
1020     Use multiple times for multiple URLs.
1021    </P
1022 ><P
1023 >    The URL(s) should be added to the trustfile as well, so users don't end up
1024     locked out from the information on why they were locked out in the first place!
1025    </P
1026 ></DD
1027 ></DL
1028 ></DIV
1029 ></DIV
1030 ><DIV
1031 CLASS="SECT3"
1032 ><H4
1033 CLASS="SECT3"
1034 ><A
1035 NAME="ADMIN-ADDRESS"
1036 >7.2.3. admin-address</A
1037 ></H4
1038 ><P
1039 ></P
1040 ><DIV
1041 CLASS="VARIABLELIST"
1042 ><DL
1043 ><DT
1044 >Specifies:</DT
1045 ><DD
1046 ><P
1047 >    An email address to reach the proxy administrator.
1048    </P
1049 ></DD
1050 ><DT
1051 >Type of value:</DT
1052 ><DD
1053 ><P
1054 >Email address</P
1055 ></DD
1056 ><DT
1057 >Default value:</DT
1058 ><DD
1059 ><P
1060 ><I
1061 CLASS="EMPHASIS"
1062 >Unset</I
1063 ></P
1064 ></DD
1065 ><DT
1066 >Effect if unset:</DT
1067 ><DD
1068 ><P
1069 >    No email address is displayed on error pages and the CGI user interface.
1070    </P
1071 ></DD
1072 ><DT
1073 >Notes:</DT
1074 ><DD
1075 ><P
1076 >    If both <TT
1077 CLASS="LITERAL"
1078 >admin-address</TT
1079 > and <TT
1080 CLASS="LITERAL"
1081 >proxy-info-url</TT
1082 >
1083     are unset, the whole "Local Privoxy Support" box on all generated pages will
1084     not be shown.
1085    </P
1086 ></DD
1087 ></DL
1088 ></DIV
1089 ></DIV
1090 ><DIV
1091 CLASS="SECT3"
1092 ><H4
1093 CLASS="SECT3"
1094 ><A
1095 NAME="PROXY-INFO-URL"
1096 >7.2.4. proxy-info-url</A
1097 ></H4
1098 ><P
1099 ></P
1100 ><DIV
1101 CLASS="VARIABLELIST"
1102 ><DL
1103 ><DT
1104 >Specifies:</DT
1105 ><DD
1106 ><P
1107 >    A URL to documentation about the local <SPAN
1108 CLASS="APPLICATION"
1109 >Privoxy</SPAN
1110 > setup,
1111     configuration or policies.
1112    </P
1113 ></DD
1114 ><DT
1115 >Type of value:</DT
1116 ><DD
1117 ><P
1118 >URL</P
1119 ></DD
1120 ><DT
1121 >Default value:</DT
1122 ><DD
1123 ><P
1124 ><I
1125 CLASS="EMPHASIS"
1126 >Unset</I
1127 ></P
1128 ></DD
1129 ><DT
1130 >Effect if unset:</DT
1131 ><DD
1132 ><P
1133 >    No link to local documentation is displayed on error pages and the CGI user interface.
1134    </P
1135 ></DD
1136 ><DT
1137 >Notes:</DT
1138 ><DD
1139 ><P
1140 >    If both <TT
1141 CLASS="LITERAL"
1142 >admin-address</TT
1143 > and <TT
1144 CLASS="LITERAL"
1145 >proxy-info-url</TT
1146 >
1147     are unset, the whole "Local Privoxy Support" box on all generated pages will
1148     not be shown.
1149    </P
1150 ><P
1151 >    This URL shouldn't be blocked ;-)
1152    </P
1153 ></DD
1154 ></DL
1155 ></DIV
1156 ></DIV
1157 ></DIV
1158 ><DIV
1159 CLASS="SECT2"
1160 ><H2
1161 CLASS="SECT2"
1162 ><A
1163 NAME="DEBUGGING"
1164 >7.3. Debugging</A
1165 ></H2
1166 ><P
1167 >  These options are mainly useful when tracing a problem.
1168   Note that you might also want to invoke
1169   <SPAN
1170 CLASS="APPLICATION"
1171 >Privoxy</SPAN
1172 > with the <TT
1173 CLASS="LITERAL"
1174 >--no-daemon</TT
1175 >
1176   command line option when debugging.
1177  </P
1178 ><DIV
1179 CLASS="SECT3"
1180 ><H4
1181 CLASS="SECT3"
1182 ><A
1183 NAME="DEBUG"
1184 >7.3.1. debug</A
1185 ></H4
1186 ><P
1187 ></P
1188 ><DIV
1189 CLASS="VARIABLELIST"
1190 ><DL
1191 ><DT
1192 >Specifies:</DT
1193 ><DD
1194 ><P
1195 >    Key values that determine what information gets logged to the 
1196     <A
1197 HREF="config.html#LOGFILE"
1198 ><I
1199 CLASS="EMPHASIS"
1200 >logfile</I
1201 ></A
1202 >.
1203    </P
1204 ></DD
1205 ><DT
1206 >Type of value:</DT
1207 ><DD
1208 ><P
1209 >Integer values</P
1210 ></DD
1211 ><DT
1212 >Default value:</DT
1213 ><DD
1214 ><P
1215 >12289 (i.e.: URLs plus informational and warning messages)</P
1216 ></DD
1217 ><DT
1218 >Effect if unset:</DT
1219 ><DD
1220 ><P
1221 >    Nothing gets logged.
1222    </P
1223 ></DD
1224 ><DT
1225 >Notes:</DT
1226 ><DD
1227 ><P
1228 >    The available debug levels are:
1229    </P
1230 ><P
1231 >    <TABLE
1232 BORDER="0"
1233 BGCOLOR="#E0E0E0"
1234 WIDTH="90%"
1235 ><TR
1236 ><TD
1237 ><PRE
1238 CLASS="PROGRAMLISTING"
1239 >  debug         1 # show each GET/POST/CONNECT request
1240   debug         2 # show each connection status
1241   debug         4 # show I/O status
1242   debug         8 # show header parsing
1243   debug        16 # log all data into the logfile
1244   debug        32 # debug force feature
1245   debug        64 # debug regular expression filter
1246   debug       128 # debug fast redirects
1247   debug       256 # debug GIF de-animation
1248   debug       512 # Common Log Format
1249   debug      1024 # debug kill pop-ups
1250   debug      2048 # CGI user interface
1251   debug      4096 # Startup banner and warnings.
1252   debug      8192 # Non-fatal errors</PRE
1253 ></TD
1254 ></TR
1255 ></TABLE
1256 >
1257    </P
1258 ><P
1259 >    To select multiple debug levels, you can either add them or use
1260     multiple <TT
1261 CLASS="LITERAL"
1262 >debug</TT
1263 > lines.
1264    </P
1265 ><P
1266 >    A debug level of 1 is informative because it will show you each request
1267     as it happens. <I
1268 CLASS="EMPHASIS"
1269 >1, 4096 and 8192 are highly recommended</I
1270 >
1271     so that you will notice when things go wrong. The other levels are probably
1272     only of interest if you are hunting down a specific problem. They can produce
1273     a hell of an output (especially 16).
1274     
1275    </P
1276 ><P
1277 >    The reporting of <I
1278 CLASS="EMPHASIS"
1279 >fatal</I
1280 > errors (i.e. ones which crash 
1281     <SPAN
1282 CLASS="APPLICATION"
1283 >Privoxy</SPAN
1284 >) is always on and cannot be disabled.
1285    </P
1286 ><P
1287 >    If you want to use CLF (Common Log Format), you should set <SPAN
1288 CLASS="QUOTE"
1289 >"debug
1290     512"</SPAN
1291 > <I
1292 CLASS="EMPHASIS"
1293 >ONLY</I
1294 > and not enable anything else.
1295    </P
1296 ></DD
1297 ></DL
1298 ></DIV
1299 ></DIV
1300 ><DIV
1301 CLASS="SECT3"
1302 ><H4
1303 CLASS="SECT3"
1304 ><A
1305 NAME="SINGLE-THREADED"
1306 >7.3.2. single-threaded</A
1307 ></H4
1308 ><P
1309 ></P
1310 ><DIV
1311 CLASS="VARIABLELIST"
1312 ><DL
1313 ><DT
1314 >Specifies:</DT
1315 ><DD
1316 ><P
1317 >    Whether to run only one server thread
1318    </P
1319 ></DD
1320 ><DT
1321 >Type of value:</DT
1322 ><DD
1323 ><P
1324 ><I
1325 CLASS="EMPHASIS"
1326 >None</I
1327 ></P
1328 ></DD
1329 ><DT
1330 >Default value:</DT
1331 ><DD
1332 ><P
1333 ><I
1334 CLASS="EMPHASIS"
1335 >Unset</I
1336 ></P
1337 ></DD
1338 ><DT
1339 >Effect if unset:</DT
1340 ><DD
1341 ><P
1342 >    Multi-threaded (or, where unavailable: forked) operation, i.e. the ability to
1343     serve multiple requests simultaneously.
1344    </P
1345 ></DD
1346 ><DT
1347 >Notes:</DT
1348 ><DD
1349 ><P
1350 >    This option is only there for debug purposes and you should never
1351     need to use it. <I
1352 CLASS="EMPHASIS"
1353 >It will drastically reduce performance.</I
1354 >
1355    </P
1356 ></DD
1357 ></DL
1358 ></DIV
1359 ></DIV
1360 ></DIV
1361 ><DIV
1362 CLASS="SECT2"
1363 ><H2
1364 CLASS="SECT2"
1365 ><A
1366 NAME="ACCESS-CONTROL"
1367 >7.4. Access Control and Security</A
1368 ></H2
1369 ><P
1370 >  This section of the config file controls the security-relevant aspects
1371   of <SPAN
1372 CLASS="APPLICATION"
1373 >Privoxy</SPAN
1374 >'s configuration.
1375  </P
1376 ><DIV
1377 CLASS="SECT3"
1378 ><H4
1379 CLASS="SECT3"
1380 ><A
1381 NAME="LISTEN-ADDRESS"
1382 >7.4.1. listen-address</A
1383 ></H4
1384 ><P
1385 ></P
1386 ><DIV
1387 CLASS="VARIABLELIST"
1388 ><DL
1389 ><DT
1390 >Specifies:</DT
1391 ><DD
1392 ><P
1393 >    The IP address and TCP port on which <SPAN
1394 CLASS="APPLICATION"
1395 >Privoxy</SPAN
1396 > will
1397     listen for client requests.
1398    </P
1399 ></DD
1400 ><DT
1401 >Type of value:</DT
1402 ><DD
1403 ><P
1404 >[<TT
1405 CLASS="REPLACEABLE"
1406 ><I
1407 >IP-Address</I
1408 ></TT
1409 >]:<TT
1410 CLASS="REPLACEABLE"
1411 ><I
1412 >Port</I
1413 ></TT
1414 ></P
1415 ></DD
1416 ><DT
1417 >Default value:</DT
1418 ><DD
1419 ><P
1420 >127.0.0.1:8118</P
1421 ></DD
1422 ><DT
1423 >Effect if unset:</DT
1424 ><DD
1425 ><P
1426 >    Bind to 127.0.0.1 (localhost), port 8118. This is suitable and recommended for
1427     home users who run <SPAN
1428 CLASS="APPLICATION"
1429 >Privoxy</SPAN
1430 > on the same machine as
1431     their browser.
1432    </P
1433 ></DD
1434 ><DT
1435 >Notes:</DT
1436 ><DD
1437 ><P
1438 >    You will need to configure your browser(s) to this proxy address and port.
1439    </P
1440 ><P
1441 >    If you already have another service running on port 8118, or if you want to
1442     serve requests from other machines (e.g. on your local network) as well, you
1443     will need to override the default.
1444    </P
1445 ><P
1446 >    If you leave out the IP address, <SPAN
1447 CLASS="APPLICATION"
1448 >Privoxy</SPAN
1449 > will
1450     bind to all interfaces (addresses) on your machine and may become reachable
1451     from the Internet. In that case, consider using <A
1452 HREF="config.html#ACLS"
1453 >access control lists</A
1454 > (ACL's, see below), and/or
1455     a firewall.
1456    </P
1457 ><P
1458 >    If you open <SPAN
1459 CLASS="APPLICATION"
1460 >Privoxy</SPAN
1461 > to untrusted users, you will
1462     also want to turn off the <TT
1463 CLASS="LITERAL"
1464 ><A
1465 HREF="config.html#ENABLE-EDIT-ACTIONS"
1466 >enable-edit-actions</A
1467 ></TT
1468 > and
1469     <TT
1470 CLASS="LITERAL"
1471 ><A
1472 HREF="config.html#ENABLE-REMOTE-TOGGLE"
1473 >enable-remote-toggle</A
1474 ></TT
1475 >
1476     options!
1477    </P
1478 ></DD
1479 ><DT
1480 >Example:</DT
1481 ><DD
1482 ><P
1483 >     Suppose you are running <SPAN
1484 CLASS="APPLICATION"
1485 >Privoxy</SPAN
1486 > on
1487      a machine which has the address 192.168.0.1 on your local private network
1488      (192.168.0.0) and has another outside connection with a different address.
1489      You want it to serve requests from inside only:
1490    </P
1491 ><P
1492 >    <TABLE
1493 BORDER="0"
1494 BGCOLOR="#E0E0E0"
1495 WIDTH="90%"
1496 ><TR
1497 ><TD
1498 ><PRE
1499 CLASS="PROGRAMLISTING"
1500 >  listen-address  192.168.0.1:8118</PRE
1501 ></TD
1502 ></TR
1503 ></TABLE
1504 >
1505    </P
1506 ></DD
1507 ></DL
1508 ></DIV
1509 ></DIV
1510 ><DIV
1511 CLASS="SECT3"
1512 ><H4
1513 CLASS="SECT3"
1514 ><A
1515 NAME="TOGGLE"
1516 >7.4.2. toggle</A
1517 ></H4
1518 ><P
1519 ></P
1520 ><DIV
1521 CLASS="VARIABLELIST"
1522 ><DL
1523 ><DT
1524 >Specifies:</DT
1525 ><DD
1526 ><P
1527 >    Initial state of "toggle" status
1528    </P
1529 ></DD
1530 ><DT
1531 >Type of value:</DT
1532 ><DD
1533 ><P
1534 >1 or 0</P
1535 ></DD
1536 ><DT
1537 >Default value:</DT
1538 ><DD
1539 ><P
1540 >1</P
1541 ></DD
1542 ><DT
1543 >Effect if unset:</DT
1544 ><DD
1545 ><P
1546 >    Act as if toggled on
1547    </P
1548 ></DD
1549 ><DT
1550 >Notes:</DT
1551 ><DD
1552 ><P
1553 >    If set to 0, <SPAN
1554 CLASS="APPLICATION"
1555 >Privoxy</SPAN
1556 > will start in
1557     <SPAN
1558 CLASS="QUOTE"
1559 >"toggled off"</SPAN
1560 > mode, i.e. behave like a normal, content-neutral
1561     proxy where all ad blocking, filtering, etc are disabled. See
1562     <TT
1563 CLASS="LITERAL"
1564 >enable-remote-toggle</TT
1565 > below. This is not really useful
1566     anymore, since toggling is much easier via <A
1567 HREF="http://config.privoxy.org/toggle"
1568 TARGET="_top"
1569 >the web interface</A
1570 > than via
1571     editing the <TT
1572 CLASS="FILENAME"
1573 >conf</TT
1574 > file.
1575    </P
1576 ><P
1577 >    The windows version will only display the toggle icon in the system tray
1578     if this option is present.
1579    </P
1580 ></DD
1581 ></DL
1582 ></DIV
1583 ></DIV
1584 ><DIV
1585 CLASS="SECT3"
1586 ><H4
1587 CLASS="SECT3"
1588 ><A
1589 NAME="ENABLE-REMOTE-TOGGLE"
1590 >7.4.3. enable-remote-toggle</A
1591 ></H4
1592 ><P
1593 ></P
1594 ><DIV
1595 CLASS="VARIABLELIST"
1596 ><DL
1597 ><DT
1598 >Specifies:</DT
1599 ><DD
1600 ><P
1601 >    Whether or not the <A
1602 HREF="http://config.privoxy.org/toggle"
1603 TARGET="_top"
1604 >web-based toggle
1605     feature</A
1606 > may be used
1607    </P
1608 ></DD
1609 ><DT
1610 >Type of value:</DT
1611 ><DD
1612 ><P
1613 >0 or 1</P
1614 ></DD
1615 ><DT
1616 >Default value:</DT
1617 ><DD
1618 ><P
1619 >1</P
1620 ></DD
1621 ><DT
1622 >Effect if unset:</DT
1623 ><DD
1624 ><P
1625 >    The web-based toggle feature is disabled.
1626    </P
1627 ></DD
1628 ><DT
1629 >Notes:</DT
1630 ><DD
1631 ><P
1632 >    When toggled off, <SPAN
1633 CLASS="APPLICATION"
1634 >Privoxy</SPAN
1635 > acts like a normal,
1636     content-neutral proxy, i.e. it acts as if none of the actions applied to
1637     any URL.
1638    </P
1639 ><P
1640 >    For the time being, access to the toggle feature can <I
1641 CLASS="EMPHASIS"
1642 >not</I
1643 > be
1644     controlled separately by <SPAN
1645 CLASS="QUOTE"
1646 >"ACLs"</SPAN
1647 > or HTTP authentication,
1648     so that everybody who can access <SPAN
1649 CLASS="APPLICATION"
1650 >Privoxy</SPAN
1651 > (see
1652     <SPAN
1653 CLASS="QUOTE"
1654 >"ACLs"</SPAN
1655 > and <TT
1656 CLASS="LITERAL"
1657 >listen-address</TT
1658 > above) can
1659     toggle it for all users. So this option is <I
1660 CLASS="EMPHASIS"
1661 >not recommended</I
1662 >
1663     for multi-user environments with untrusted users.
1664    </P
1665 ><P
1666 >    Note that you must have compiled <SPAN
1667 CLASS="APPLICATION"
1668 >Privoxy</SPAN
1669 > with
1670     support for this feature, otherwise this option has no effect. 
1671    </P
1672 ></DD
1673 ></DL
1674 ></DIV
1675 ></DIV
1676 ><DIV
1677 CLASS="SECT3"
1678 ><H4
1679 CLASS="SECT3"
1680 ><A
1681 NAME="ENABLE-EDIT-ACTIONS"
1682 >7.4.4. enable-edit-actions</A
1683 ></H4
1684 ><P
1685 ></P
1686 ><DIV
1687 CLASS="VARIABLELIST"
1688 ><DL
1689 ><DT
1690 >Specifies:</DT
1691 ><DD
1692 ><P
1693 >    Whether or not the <A
1694 HREF="http://config.privoxy.org/show-status"
1695 TARGET="_top"
1696 >web-based actions
1697     file editor</A
1698 > may be used
1699    </P
1700 ></DD
1701 ><DT
1702 >Type of value:</DT
1703 ><DD
1704 ><P
1705 >0 or 1</P
1706 ></DD
1707 ><DT
1708 >Default value:</DT
1709 ><DD
1710 ><P
1711 >1</P
1712 ></DD
1713 ><DT
1714 >Effect if unset:</DT
1715 ><DD
1716 ><P
1717 >    The web-based actions file editor is disabled.
1718    </P
1719 ></DD
1720 ><DT
1721 >Notes:</DT
1722 ><DD
1723 ><P
1724 >    For the time being, access to the editor can <I
1725 CLASS="EMPHASIS"
1726 >not</I
1727 > be
1728     controlled separately by <SPAN
1729 CLASS="QUOTE"
1730 >"ACLs"</SPAN
1731 > or HTTP authentication,
1732     so that everybody who can access <SPAN
1733 CLASS="APPLICATION"
1734 >Privoxy</SPAN
1735 > (see
1736     <SPAN
1737 CLASS="QUOTE"
1738 >"ACLs"</SPAN
1739 > and <TT
1740 CLASS="LITERAL"
1741 >listen-address</TT
1742 > above) can
1743     modify its configuration for all users. So this option is <I
1744 CLASS="EMPHASIS"
1745 >not
1746     recommended</I
1747 > for multi-user environments with untrusted users.
1748    </P
1749 ><P
1750 >    Note that you must have compiled <SPAN
1751 CLASS="APPLICATION"
1752 >Privoxy</SPAN
1753 > with
1754     support for this feature, otherwise this option has no effect. 
1755    </P
1756 ></DD
1757 ></DL
1758 ></DIV
1759 ></DIV
1760 ><DIV
1761 CLASS="SECT3"
1762 ><H4
1763 CLASS="SECT3"
1764 ><A
1765 NAME="ACLS"
1766 >7.4.5. ACLs: permit-access and deny-access</A
1767 ></H4
1768 ><A
1769 NAME="PERMIT-ACCESS"
1770 ></A
1771 ><A
1772 NAME="DENY-ACCESS"
1773 ></A
1774 ><P
1775 ></P
1776 ><DIV
1777 CLASS="VARIABLELIST"
1778 ><DL
1779 ><DT
1780 >Specifies:</DT
1781 ><DD
1782 ><P
1783 >    Who can access what.
1784    </P
1785 ></DD
1786 ><DT
1787 >Type of value:</DT
1788 ><DD
1789 ><P
1790 >    <TT
1791 CLASS="REPLACEABLE"
1792 ><I
1793 >src_addr</I
1794 ></TT
1795 >[/<TT
1796 CLASS="REPLACEABLE"
1797 ><I
1798 >src_masklen</I
1799 ></TT
1800 >]
1801     [<TT
1802 CLASS="REPLACEABLE"
1803 ><I
1804 >dst_addr</I
1805 ></TT
1806 >[/<TT
1807 CLASS="REPLACEABLE"
1808 ><I
1809 >dst_masklen</I
1810 ></TT
1811 >]]
1812    </P
1813 ><P
1814 >    Where <TT
1815 CLASS="REPLACEABLE"
1816 ><I
1817 >src_addr</I
1818 ></TT
1819 > and 
1820    <TT
1821 CLASS="REPLACEABLE"
1822 ><I
1823 >dst_addr</I
1824 ></TT
1825 > are IP addresses in dotted decimal notation or valid
1826     DNS names, and <TT
1827 CLASS="REPLACEABLE"
1828 ><I
1829 >src_masklen</I
1830 ></TT
1831 > and
1832     <TT
1833 CLASS="REPLACEABLE"
1834 ><I
1835 >dst_masklen</I
1836 ></TT
1837 > are subnet masks in CIDR notation, i.e. integer
1838     values from 2 to 30 representing the length (in bits) of the network address. The masks and the whole
1839     destination part are optional.
1840    </P
1841 ></DD
1842 ><DT
1843 >Default value:</DT
1844 ><DD
1845 ><P
1846 ><I
1847 CLASS="EMPHASIS"
1848 >Unset</I
1849 ></P
1850 ></DD
1851 ><DT
1852 >Effect if unset:</DT
1853 ><DD
1854 ><P
1855 >    Don't restrict access further than implied by <TT
1856 CLASS="LITERAL"
1857 >listen-address</TT
1858 >
1859    </P
1860 ></DD
1861 ><DT
1862 >Notes:</DT
1863 ><DD
1864 ><P
1865 >    Access controls are included at the request of ISPs and systems
1866     administrators, and <I
1867 CLASS="EMPHASIS"
1868 >are not usually needed by individual users</I
1869 >.
1870     For a typical home user, it will normally suffice to ensure that 
1871     <SPAN
1872 CLASS="APPLICATION"
1873 >Privoxy</SPAN
1874 > only listens on the localhost
1875     (127.0.0.1) or internal (home) network address by means of the
1876     <A
1877 HREF="config.html#LISTEN-ADDRESS"
1878 ><I
1879 CLASS="EMPHASIS"
1880 >listen-address</I
1881 ></A
1882 >
1883     option. 
1884    </P
1885 ><P
1886 >    Please see the warnings in the FAQ that this proxy is not intended to be a substitute
1887     for a firewall or to encourage anyone to defer addressing basic security
1888     weaknesses.
1889    </P
1890 ><P
1891 >    Multiple ACL lines are OK.
1892     If any ACLs are specified, then the <SPAN
1893 CLASS="APPLICATION"
1894 >Privoxy</SPAN
1895 >
1896     talks only to IP addresses that match at least one <TT
1897 CLASS="LITERAL"
1898 >permit-access</TT
1899 > line
1900     and don't match any subsequent <TT
1901 CLASS="LITERAL"
1902 >deny-access</TT
1903 > line. In other words, the
1904     last match wins, with the default being <TT
1905 CLASS="LITERAL"
1906 >deny-access</TT
1907 >.
1908    </P
1909 ><P
1910 >    If <SPAN
1911 CLASS="APPLICATION"
1912 >Privoxy</SPAN
1913 > is using a forwarder (see <TT
1914 CLASS="LITERAL"
1915 >forward</TT
1916 > below)
1917     for a particular destination URL, the <TT
1918 CLASS="REPLACEABLE"
1919 ><I
1920 >dst_addr</I
1921 ></TT
1922 >
1923     that is examined is the address of the forwarder and <I
1924 CLASS="EMPHASIS"
1925 >NOT</I
1926 > the address
1927     of the ultimate target. This is necessary because it may be impossible for the local
1928     <SPAN
1929 CLASS="APPLICATION"
1930 >Privoxy</SPAN
1931 > to determine the IP address of the
1932     ultimate target (that's often what gateways are used for).
1933    </P
1934 ><P
1935 >    You should prefer using IP addresses over DNS names, because the address lookups take
1936     time. All DNS names must resolve! You can <I
1937 CLASS="EMPHASIS"
1938 >not</I
1939 > use domain patterns
1940     like <SPAN
1941 CLASS="QUOTE"
1942 >"*.org"</SPAN
1943 > or partial domain names. If a DNS name resolves to multiple
1944     IP addresses, only the first one is used.
1945    </P
1946 ><P
1947 >    Denying access to particular sites by ACL may have undesired side effects
1948     if the site in question is hosted on a machine which also hosts other sites.
1949    </P
1950 ></DD
1951 ><DT
1952 >Examples:</DT
1953 ><DD
1954 ><P
1955 >    Explicitly define the default behavior if no ACL and
1956     <TT
1957 CLASS="LITERAL"
1958 >listen-address</TT
1959 > are set: <SPAN
1960 CLASS="QUOTE"
1961 >"localhost"</SPAN
1962 >
1963     is OK. The absence of a <TT
1964 CLASS="REPLACEABLE"
1965 ><I
1966 >dst_addr</I
1967 ></TT
1968 > implies that
1969     <I
1970 CLASS="EMPHASIS"
1971 >all</I
1972 > destination addresses are OK:
1973    </P
1974 ><P
1975 >    <TABLE
1976 BORDER="0"
1977 BGCOLOR="#E0E0E0"
1978 WIDTH="90%"
1979 ><TR
1980 ><TD
1981 ><PRE
1982 CLASS="SCREEN"
1983 >  permit-access  localhost</PRE
1984 ></TD
1985 ></TR
1986 ></TABLE
1987 >
1988    </P
1989 ><P
1990 >    Allow any host on the same class C subnet as www.privoxy.org access to
1991     nothing but www.example.com:
1992    </P
1993 ><P
1994 >    <TABLE
1995 BORDER="0"
1996 BGCOLOR="#E0E0E0"
1997 WIDTH="90%"
1998 ><TR
1999 ><TD
2000 ><PRE
2001 CLASS="SCREEN"
2002 >  permit-access  www.privoxy.org/24 www.example.com/32</PRE
2003 ></TD
2004 ></TR
2005 ></TABLE
2006 >
2007    </P
2008 ><P
2009 >    Allow access from any host on the 26-bit subnet 192.168.45.64 to anywhere,
2010     with the exception that 192.168.45.73 may not access www.dirty-stuff.example.com:
2011    </P
2012 ><P
2013 >    <TABLE
2014 BORDER="0"
2015 BGCOLOR="#E0E0E0"
2016 WIDTH="90%"
2017 ><TR
2018 ><TD
2019 ><PRE
2020 CLASS="SCREEN"
2021 >  permit-access  192.168.45.64/26
2022   deny-access    192.168.45.73    www.dirty-stuff.example.com</PRE
2023 ></TD
2024 ></TR
2025 ></TABLE
2026 >
2027    </P
2028 ></DD
2029 ></DL
2030 ></DIV
2031 ></DIV
2032 ><DIV
2033 CLASS="SECT3"
2034 ><H4
2035 CLASS="SECT3"
2036 ><A
2037 NAME="BUFFER-LIMIT"
2038 >7.4.6. buffer-limit</A
2039 ></H4
2040 ><P
2041 ></P
2042 ><DIV
2043 CLASS="VARIABLELIST"
2044 ><DL
2045 ><DT
2046 >Specifies:</DT
2047 ><DD
2048 ><P
2049 >    Maximum size of the buffer for content filtering.
2050    </P
2051 ></DD
2052 ><DT
2053 >Type of value:</DT
2054 ><DD
2055 ><P
2056 >Size in Kbytes</P
2057 ></DD
2058 ><DT
2059 >Default value:</DT
2060 ><DD
2061 ><P
2062 >4096</P
2063 ></DD
2064 ><DT
2065 >Effect if unset:</DT
2066 ><DD
2067 ><P
2068 >    Use a 4MB (4096 KB) limit.
2069    </P
2070 ></DD
2071 ><DT
2072 >Notes:</DT
2073 ><DD
2074 ><P
2075 >    For content filtering, i.e. the <TT
2076 CLASS="LITERAL"
2077 >+filter</TT
2078 > and
2079     <TT
2080 CLASS="LITERAL"
2081 >+deanimate-gif</TT
2082 > actions, it is necessary that 
2083     <SPAN
2084 CLASS="APPLICATION"
2085 >Privoxy</SPAN
2086 > buffers the entire document body.
2087     This can be potentially dangerous, since a server could just keep sending
2088     data indefinitely and wait for your RAM to exhaust -- with nasty consequences.
2089     Hence this option.
2090    </P
2091 ><P
2092 >    When a document buffer size reaches the <TT
2093 CLASS="LITERAL"
2094 >buffer-limit</TT
2095 >, it is
2096     flushed to the client unfiltered and no further attempt to
2097     filter the rest of the document is made. Remember that there may be multiple threads
2098     running, which might require up to <TT
2099 CLASS="LITERAL"
2100 >buffer-limit</TT
2101 > Kbytes
2102     <I
2103 CLASS="EMPHASIS"
2104 >each</I
2105 >, unless you have enabled <SPAN
2106 CLASS="QUOTE"
2107 >"single-threaded"</SPAN
2108 >
2109     above.
2110    </P
2111 ></DD
2112 ></DL
2113 ></DIV
2114 ></DIV
2115 ></DIV
2116 ><DIV
2117 CLASS="SECT2"
2118 ><H2
2119 CLASS="SECT2"
2120 ><A
2121 NAME="FORWARDING"
2122 >7.5. Forwarding</A
2123 ></H2
2124 ><P
2125 > This feature allows routing of HTTP requests through a chain of
2126  multiple proxies.
2127  It can be used to better protect privacy and confidentiality when
2128  accessing specific domains by routing requests to those domains
2129  through an anonymous public proxy (see e.g. <A
2130 HREF="http://www.multiproxy.org/anon_list.htm"
2131 TARGET="_top"
2132 >http://www.multiproxy.org/anon_list.htm</A
2133 >)
2134  Or to use a caching proxy to speed up browsing. Or chaining to a parent
2135  proxy may be necessary because the machine that <SPAN
2136 CLASS="APPLICATION"
2137 >Privoxy</SPAN
2138 >
2139  runs on has no direct Internet access.</P
2140 ><P
2141 > Also specified here are SOCKS proxies. <SPAN
2142 CLASS="APPLICATION"
2143 >Privoxy</SPAN
2144 >
2145  supports the SOCKS 4 and SOCKS 4A protocols.</P
2146 ><DIV
2147 CLASS="SECT3"
2148 ><H4
2149 CLASS="SECT3"
2150 ><A
2151 NAME="FORWARD"
2152 >7.5.1. forward</A
2153 ></H4
2154 ><P
2155 ></P
2156 ><DIV
2157 CLASS="VARIABLELIST"
2158 ><DL
2159 ><DT
2160 >Specifies:</DT
2161 ><DD
2162 ><P
2163 >    To which parent HTTP proxy specific requests should be routed.
2164    </P
2165 ></DD
2166 ><DT
2167 >Type of value:</DT
2168 ><DD
2169 ><P
2170 >    <TT
2171 CLASS="REPLACEABLE"
2172 ><I
2173 >target_pattern</I
2174 ></TT
2175 >
2176     <TT
2177 CLASS="REPLACEABLE"
2178 ><I
2179 >http_parent</I
2180 ></TT
2181 >[:<TT
2182 CLASS="REPLACEABLE"
2183 ><I
2184 >port</I
2185 ></TT
2186 >]
2187    </P
2188 ><P
2189 >    where <TT
2190 CLASS="REPLACEABLE"
2191 ><I
2192 >target_pattern</I
2193 ></TT
2194 > is a <A
2195 HREF="actions-file.html#AF-PATTERNS"
2196 >URL pattern</A
2197
2198     that specifies to which requests (i.e. URLs) this forward rule shall apply. Use <TT
2199 CLASS="LITERAL"
2200 >/</TT
2201 > to
2202     denote <SPAN
2203 CLASS="QUOTE"
2204 >"all URLs"</SPAN
2205 >.
2206     <TT
2207 CLASS="REPLACEABLE"
2208 ><I
2209 >http_parent</I
2210 ></TT
2211 >[:<TT
2212 CLASS="REPLACEABLE"
2213 ><I
2214 >port</I
2215 ></TT
2216 >]
2217     is the DNS name or IP address of the parent HTTP proxy through which the requests should be forwarded,
2218     optionally followed by its listening port (default: 8080).
2219     Use a single dot (<TT
2220 CLASS="LITERAL"
2221 >.</TT
2222 >) to denote <SPAN
2223 CLASS="QUOTE"
2224 >"no forwarding"</SPAN
2225 >.
2226    </P
2227 ></DD
2228 ><DT
2229 >Default value:</DT
2230 ><DD
2231 ><P
2232 ><I
2233 CLASS="EMPHASIS"
2234 >Unset</I
2235 ></P
2236 ></DD
2237 ><DT
2238 >Effect if unset:</DT
2239 ><DD
2240 ><P
2241 >    Don't use parent HTTP proxies.
2242    </P
2243 ></DD
2244 ><DT
2245 >Notes:</DT
2246 ><DD
2247 ><P
2248 >    If <TT
2249 CLASS="REPLACEABLE"
2250 ><I
2251 >http_parent</I
2252 ></TT
2253 > is <SPAN
2254 CLASS="QUOTE"
2255 >"."</SPAN
2256 >, then requests are not
2257     forwarded to another HTTP proxy but are made directly to the web servers.
2258    </P
2259 ><P
2260 >    Multiple lines are OK, they are checked in sequence, and the last match wins.
2261    </P
2262 ></DD
2263 ><DT
2264 >Examples:</DT
2265 ><DD
2266 ><P
2267 >    Everything goes to an example anonymizing proxy, except SSL on port 443 (which it doesn't handle):
2268    </P
2269 ><P
2270 >    <TABLE
2271 BORDER="0"
2272 BGCOLOR="#E0E0E0"
2273 WIDTH="90%"
2274 ><TR
2275 ><TD
2276 ><PRE
2277 CLASS="SCREEN"
2278 >  forward   /      anon-proxy.example.org:8080
2279   forward   :443   .</PRE
2280 ></TD
2281 ></TR
2282 ></TABLE
2283 >
2284    </P
2285 ><P
2286 >    Everything goes to our example ISP's caching proxy, except for requests
2287     to that ISP's sites:
2288    </P
2289 ><P
2290 >    <TABLE
2291 BORDER="0"
2292 BGCOLOR="#E0E0E0"
2293 WIDTH="90%"
2294 ><TR
2295 ><TD
2296 ><PRE
2297 CLASS="SCREEN"
2298 >  forward   /                  caching-proxy.example-isp.net:8000
2299   forward   .example-isp.net   .</PRE
2300 ></TD
2301 ></TR
2302 ></TABLE
2303 >
2304    </P
2305 ></DD
2306 ></DL
2307 ></DIV
2308 ></DIV
2309 ><DIV
2310 CLASS="SECT3"
2311 ><H4
2312 CLASS="SECT3"
2313 ><A
2314 NAME="SOCKS"
2315 >7.5.2. forward-socks4 and forward-socks4a</A
2316 ></H4
2317 ><A
2318 NAME="FORWARD-SOCKS4"
2319 ></A
2320 ><A
2321 NAME="FORWARD-SOCKS4A"
2322 ></A
2323 ><P
2324 ></P
2325 ><DIV
2326 CLASS="VARIABLELIST"
2327 ><DL
2328 ><DT
2329 >Specifies:</DT
2330 ><DD
2331 ><P
2332 >    Through which SOCKS proxy (and to which parent HTTP proxy) specific requests should be routed.
2333    </P
2334 ></DD
2335 ><DT
2336 >Type of value:</DT
2337 ><DD
2338 ><P
2339 >    <TT
2340 CLASS="REPLACEABLE"
2341 ><I
2342 >target_pattern</I
2343 ></TT
2344 >
2345     <TT
2346 CLASS="REPLACEABLE"
2347 ><I
2348 >socks_proxy</I
2349 ></TT
2350 >[:<TT
2351 CLASS="REPLACEABLE"
2352 ><I
2353 >port</I
2354 ></TT
2355 >]
2356     <TT
2357 CLASS="REPLACEABLE"
2358 ><I
2359 >http_parent</I
2360 ></TT
2361 >[:<TT
2362 CLASS="REPLACEABLE"
2363 ><I
2364 >port</I
2365 ></TT
2366 >]
2367    </P
2368 ><P
2369 >    where <TT
2370 CLASS="REPLACEABLE"
2371 ><I
2372 >target_pattern</I
2373 ></TT
2374 > is a <A
2375 HREF="actions-file.html#AF-PATTERNS"
2376 >URL pattern</A
2377
2378     that specifies to which requests (i.e. URLs) this forward rule shall apply. Use <TT
2379 CLASS="LITERAL"
2380 >/</TT
2381 > to
2382     denote <SPAN
2383 CLASS="QUOTE"
2384 >"all URLs"</SPAN
2385 >.
2386     <TT
2387 CLASS="REPLACEABLE"
2388 ><I
2389 >http_parent</I
2390 ></TT
2391 > and <TT
2392 CLASS="REPLACEABLE"
2393 ><I
2394 >socks_proxy</I
2395 ></TT
2396 >
2397     are IP addresses in dotted decimal notation or valid DNS names (<TT
2398 CLASS="REPLACEABLE"
2399 ><I
2400 >http_parent</I
2401 ></TT
2402 >
2403     may be <SPAN
2404 CLASS="QUOTE"
2405 >"."</SPAN
2406 > to denote <SPAN
2407 CLASS="QUOTE"
2408 >"no HTTP forwarding"</SPAN
2409 >), and the optional 
2410     <TT
2411 CLASS="REPLACEABLE"
2412 ><I
2413 >port</I
2414 ></TT
2415 > parameters are TCP ports, i.e. integer values from 1 to 64535
2416    </P
2417 ></DD
2418 ><DT
2419 >Default value:</DT
2420 ><DD
2421 ><P
2422 ><I
2423 CLASS="EMPHASIS"
2424 >Unset</I
2425 ></P
2426 ></DD
2427 ><DT
2428 >Effect if unset:</DT
2429 ><DD
2430 ><P
2431 >    Don't use SOCKS proxies.
2432    </P
2433 ></DD
2434 ><DT
2435 >Notes:</DT
2436 ><DD
2437 ><P
2438 >    Multiple lines are OK, they are checked in sequence, and the last match wins.
2439    </P
2440 ><P
2441 >    The difference between <TT
2442 CLASS="LITERAL"
2443 >forward-socks4</TT
2444 > and <TT
2445 CLASS="LITERAL"
2446 >forward-socks4a</TT
2447 >
2448     is that in the SOCKS 4A protocol, the DNS resolution of the target hostname happens on the SOCKS
2449     server, while in SOCKS 4 it happens locally.
2450    </P
2451 ><P
2452 >    If <TT
2453 CLASS="REPLACEABLE"
2454 ><I
2455 >http_parent</I
2456 ></TT
2457 > is <SPAN
2458 CLASS="QUOTE"
2459 >"."</SPAN
2460 >, then requests are not
2461     forwarded to another HTTP proxy but are made (HTTP-wise) directly to the web servers, albeit through
2462     a SOCKS proxy.
2463    </P
2464 ></DD
2465 ><DT
2466 >Examples:</DT
2467 ><DD
2468 ><P
2469 >     From the company example.com, direct connections are made to all
2470      <SPAN
2471 CLASS="QUOTE"
2472 >"internal"</SPAN
2473 > domains, but everything outbound goes through
2474      their ISP's proxy by way of example.com's corporate SOCKS 4A gateway to
2475      the Internet.
2476    </P
2477 ><P
2478 >    <TABLE
2479 BORDER="0"
2480 BGCOLOR="#E0E0E0"
2481 WIDTH="90%"
2482 ><TR
2483 ><TD
2484 ><PRE
2485 CLASS="SCREEN"
2486 >  forward-socks4a   /              socks-gw.example.com:1080  www-cache.example-isp.net:8080
2487   forward           .example.com   .</PRE
2488 ></TD
2489 ></TR
2490 ></TABLE
2491 >
2492    </P
2493 ><P
2494 >    A rule that uses a SOCKS 4 gateway for all destinations but no HTTP parent looks like this:
2495    </P
2496 ><P
2497 >    <TABLE
2498 BORDER="0"
2499 BGCOLOR="#E0E0E0"
2500 WIDTH="90%"
2501 ><TR
2502 ><TD
2503 ><PRE
2504 CLASS="SCREEN"
2505 >  forward-socks4   /               socks-gw.example.com:1080  .</PRE
2506 ></TD
2507 ></TR
2508 ></TABLE
2509 >
2510    </P
2511 ></DD
2512 ></DL
2513 ></DIV
2514 ></DIV
2515 ><DIV
2516 CLASS="SECT3"
2517 ><H4
2518 CLASS="SECT3"
2519 ><A
2520 NAME="ADVANCED-FORWARDING-EXAMPLES"
2521 >7.5.3. Advanced Forwarding Examples</A
2522 ></H4
2523 ><P
2524 > If you have links to multiple ISPs that provide various special content 
2525  only to their subscribers, you can configure multiple <SPAN
2526 CLASS="APPLICATION"
2527 >Privoxies</SPAN
2528 >
2529  which have connections to the respective ISPs to act as forwarders to each other, so that
2530  <I
2531 CLASS="EMPHASIS"
2532 >your</I
2533 > users can see the internal content of all ISPs.</P
2534 ><P
2535 > Assume that host-a has a PPP connection to isp-a.net. And host-b has a PPP connection to
2536  isp-b.net. Both run <SPAN
2537 CLASS="APPLICATION"
2538 >Privoxy</SPAN
2539 >. Their forwarding
2540  configuration can look like this:</P
2541 ><P
2542 > host-a:</P
2543 ><P
2544 > <TABLE
2545 BORDER="0"
2546 BGCOLOR="#E0E0E0"
2547 WIDTH="100%"
2548 ><TR
2549 ><TD
2550 ><PRE
2551 CLASS="SCREEN"
2552 >  forward    /           .
2553   forward    .isp-b.net  host-b:8118</PRE
2554 ></TD
2555 ></TR
2556 ></TABLE
2557 ></P
2558 ><P
2559 > host-b:</P
2560 ><P
2561 > <TABLE
2562 BORDER="0"
2563 BGCOLOR="#E0E0E0"
2564 WIDTH="100%"
2565 ><TR
2566 ><TD
2567 ><PRE
2568 CLASS="SCREEN"
2569 >  forward    /           .
2570   forward    .isp-a.net  host-a:8118</PRE
2571 ></TD
2572 ></TR
2573 ></TABLE
2574 ></P
2575 ><P
2576 > Now, your users can set their browser's proxy to use either
2577  host-a or host-b and be able to browse the internal content
2578  of both isp-a and isp-b.</P
2579 ><P
2580 > If you intend to chain <SPAN
2581 CLASS="APPLICATION"
2582 >Privoxy</SPAN
2583 > and 
2584  <SPAN
2585 CLASS="APPLICATION"
2586 >squid</SPAN
2587 > locally, then chain as 
2588  <TT
2589 CLASS="LITERAL"
2590 >browser -&#62; squid -&#62; privoxy</TT
2591 > is the recommended way. </P
2592 ><P
2593 > Assuming that <SPAN
2594 CLASS="APPLICATION"
2595 >Privoxy</SPAN
2596 > and <SPAN
2597 CLASS="APPLICATION"
2598 >squid</SPAN
2599 >
2600  run on the same box, your <SPAN
2601 CLASS="APPLICATION"
2602 >squid</SPAN
2603 > configuration could then look like this:</P
2604 ><P
2605 > <TABLE
2606 BORDER="0"
2607 BGCOLOR="#E0E0E0"
2608 WIDTH="100%"
2609 ><TR
2610 ><TD
2611 ><PRE
2612 CLASS="SCREEN"
2613 >  # Define Privoxy as parent proxy (without ICP) 
2614   cache_peer 127.0.0.1 parent 8118 7 no-query 
2615
2616   # Define ACL for protocol FTP 
2617   acl ftp proto FTP 
2618
2619   # Do not forward FTP requests to Privoxy
2620   always_direct allow ftp 
2621
2622   # Forward all the rest to Privoxy
2623   never_direct allow all</PRE
2624 ></TD
2625 ></TR
2626 ></TABLE
2627 ></P
2628 ><P
2629 > You would then need to change your browser's proxy settings to <SPAN
2630 CLASS="APPLICATION"
2631 >squid</SPAN
2632 >'s address and port.
2633  Squid normally uses port 3128. If unsure consult <TT
2634 CLASS="LITERAL"
2635 >http_port</TT
2636 > in <TT
2637 CLASS="FILENAME"
2638 >squid.conf</TT
2639 >.</P
2640 ><P
2641 > You could just as well decide to only forward requests for Windows executables through
2642  a virus-scanning parent proxy, say, on <TT
2643 CLASS="LITERAL"
2644 >antivir.example.com</TT
2645 >, port 8010:</P
2646 ><P
2647 > <TABLE
2648 BORDER="0"
2649 BGCOLOR="#E0E0E0"
2650 WIDTH="100%"
2651 ><TR
2652 ><TD
2653 ><PRE
2654 CLASS="SCREEN"
2655 >  forward   /                          .
2656   forward   /.*\.(exe|com|dll|zip)$    antivir.example.com:8010</PRE
2657 ></TD
2658 ></TR
2659 ></TABLE
2660 > </P
2661 ></DIV
2662 ></DIV
2663 ><DIV
2664 CLASS="SECT2"
2665 ><H2
2666 CLASS="SECT2"
2667 ><A
2668 NAME="WINDOWS-GUI"
2669 >7.6. Windows GUI Options</A
2670 ></H2
2671 ><P
2672 > <SPAN
2673 CLASS="APPLICATION"
2674 >Privoxy</SPAN
2675 > has a number of options specific to the
2676  Windows GUI interface:</P
2677 ><A
2678 NAME="ACTIVITY-ANIMATION"
2679 ></A
2680 ><P
2681 > If <SPAN
2682 CLASS="QUOTE"
2683 >"activity-animation"</SPAN
2684 > is set to 1, the
2685  <SPAN
2686 CLASS="APPLICATION"
2687 >Privoxy</SPAN
2688 > icon will animate when
2689  <SPAN
2690 CLASS="QUOTE"
2691 >"Privoxy"</SPAN
2692 > is active. To turn off, set to 0.</P
2693 ><P
2694 > <TT
2695 CLASS="LITERAL"
2696 >  <P
2697 CLASS="LITERALLAYOUT"
2698 >&nbsp;&nbsp;<I
2699 CLASS="EMPHASIS"
2700 >activity-animation   1</I
2701 ><br>
2702 &nbsp;&nbsp;&nbsp;</P
2703
2704  </TT
2705 ></P
2706 ><A
2707 NAME="LOG-MESSAGES"
2708 ></A
2709 ><P
2710 > If <SPAN
2711 CLASS="QUOTE"
2712 >"log-messages"</SPAN
2713 > is set to 1,
2714  <SPAN
2715 CLASS="APPLICATION"
2716 >Privoxy</SPAN
2717 > will log messages to the console
2718  window:</P
2719 ><P
2720 > <TT
2721 CLASS="LITERAL"
2722 >  <P
2723 CLASS="LITERALLAYOUT"
2724 >&nbsp;&nbsp;<I
2725 CLASS="EMPHASIS"
2726 >log-messages       1</I
2727 ><br>
2728 &nbsp;&nbsp;&nbsp;</P
2729
2730  </TT
2731 ></P
2732 ><A
2733 NAME="LOG-BUFFER-SIZE"
2734 ></A
2735 ><P
2736
2737  If <SPAN
2738 CLASS="QUOTE"
2739 >"log-buffer-size"</SPAN
2740 > is set to 1, the size of the log buffer,
2741  i.e. the amount of memory used for the log messages displayed in the
2742  console window, will be limited to <SPAN
2743 CLASS="QUOTE"
2744 >"log-max-lines"</SPAN
2745 > (see below).</P
2746 ><P
2747 > Warning: Setting this to 0 will result in the buffer to grow infinitely and
2748  eat up all your memory!</P
2749 ><P
2750 > <TT
2751 CLASS="LITERAL"
2752 >  <P
2753 CLASS="LITERALLAYOUT"
2754 >&nbsp;&nbsp;<I
2755 CLASS="EMPHASIS"
2756 >log-buffer-size      1</I
2757 ><br>
2758 &nbsp;&nbsp;&nbsp;</P
2759
2760  </TT
2761 ></P
2762 ><A
2763 NAME="LOG-MAX-LINES"
2764 ></A
2765 ><P
2766 > <SPAN
2767 CLASS="APPLICATION"
2768 >log-max-lines</SPAN
2769 > is the maximum number of lines held
2770  in the log buffer. See above.</P
2771 ><P
2772 > <TT
2773 CLASS="LITERAL"
2774 >  <P
2775 CLASS="LITERALLAYOUT"
2776 >&nbsp;&nbsp;<I
2777 CLASS="EMPHASIS"
2778 >log-max-lines      200</I
2779 ><br>
2780 &nbsp;&nbsp;&nbsp;</P
2781
2782  </TT
2783 ></P
2784 ><A
2785 NAME="LOG-HIGHLIGHT-MESSAGES"
2786 ></A
2787 ><P
2788 > If <SPAN
2789 CLASS="QUOTE"
2790 >"log-highlight-messages"</SPAN
2791 > is set to 1,
2792  <SPAN
2793 CLASS="APPLICATION"
2794 >Privoxy</SPAN
2795 > will highlight portions of the log
2796  messages with a bold-faced font:</P
2797 ><P
2798 > <TT
2799 CLASS="LITERAL"
2800 >  <P
2801 CLASS="LITERALLAYOUT"
2802 >&nbsp;&nbsp;<I
2803 CLASS="EMPHASIS"
2804 >log-highlight-messages   1</I
2805 ><br>
2806 &nbsp;&nbsp;&nbsp;</P
2807
2808  </TT
2809 ></P
2810 ><A
2811 NAME="LOG-FONT-NAME"
2812 ></A
2813 ><P
2814 > The font used in the console window:</P
2815 ><P
2816 > <TT
2817 CLASS="LITERAL"
2818 >  <P
2819 CLASS="LITERALLAYOUT"
2820 >&nbsp;&nbsp;<I
2821 CLASS="EMPHASIS"
2822 >log-font-name        Comic Sans MS</I
2823 ><br>
2824 &nbsp;&nbsp;&nbsp;</P
2825
2826  </TT
2827 ></P
2828 ><A
2829 NAME="LOG-FONT-SIZE"
2830 ></A
2831 ><P
2832 > Font size used in the console window:</P
2833 ><P
2834 > <TT
2835 CLASS="LITERAL"
2836 >  <P
2837 CLASS="LITERALLAYOUT"
2838 >&nbsp;&nbsp;<I
2839 CLASS="EMPHASIS"
2840 >log-font-size        8</I
2841 ><br>
2842 &nbsp;&nbsp;&nbsp;</P
2843
2844  </TT
2845 ></P
2846 ><A
2847 NAME="SHOW-ON-TASK-BAR"
2848 ></A
2849 ><P
2850 >  
2851  <SPAN
2852 CLASS="QUOTE"
2853 >"show-on-task-bar"</SPAN
2854 > controls whether or not
2855  <SPAN
2856 CLASS="APPLICATION"
2857 >Privoxy</SPAN
2858 > will appear as a button on the Task bar
2859  when minimized:</P
2860 ><P
2861 > <TT
2862 CLASS="LITERAL"
2863 >  <P
2864 CLASS="LITERALLAYOUT"
2865 >&nbsp;&nbsp;<I
2866 CLASS="EMPHASIS"
2867 >show-on-task-bar     0</I
2868 ><br>
2869 &nbsp;&nbsp;&nbsp;</P
2870
2871  </TT
2872 ></P
2873 ><A
2874 NAME="CLOSE-BUTTON-MINIMIZES"
2875 ></A
2876 ><P
2877 > If <SPAN
2878 CLASS="QUOTE"
2879 >"close-button-minimizes"</SPAN
2880 > is set to 1, the Windows close
2881  button will minimize <SPAN
2882 CLASS="APPLICATION"
2883 >Privoxy</SPAN
2884 > instead of closing
2885  the program (close with the exit option on the File menu).</P
2886 ><P
2887 > <TT
2888 CLASS="LITERAL"
2889 >  <P
2890 CLASS="LITERALLAYOUT"
2891 >&nbsp;&nbsp;<I
2892 CLASS="EMPHASIS"
2893 >close-button-minimizes  1</I
2894 ><br>
2895 &nbsp;&nbsp;&nbsp;</P
2896
2897  </TT
2898 ></P
2899 ><A
2900 NAME="HIDE-CONSOLE"
2901 ></A
2902 ><P
2903 > The <SPAN
2904 CLASS="QUOTE"
2905 >"hide-console"</SPAN
2906 > option is specific to the MS-Win console
2907  version of <SPAN
2908 CLASS="APPLICATION"
2909 >Privoxy</SPAN
2910 >. If this option is used,
2911  <SPAN
2912 CLASS="APPLICATION"
2913 >Privoxy</SPAN
2914 > will disconnect from and hide  the
2915  command console.</P
2916 ><P
2917 > <TT
2918 CLASS="LITERAL"
2919 >  <P
2920 CLASS="LITERALLAYOUT"
2921 >&nbsp;&nbsp;#<I
2922 CLASS="EMPHASIS"
2923 >hide-console</I
2924 ><br>
2925 &nbsp;&nbsp;&nbsp;</P
2926
2927  </TT
2928 ></P
2929 ></DIV
2930 ></DIV
2931 ><DIV
2932 CLASS="NAVFOOTER"
2933 ><HR
2934 ALIGN="LEFT"
2935 WIDTH="100%"><TABLE
2936 WIDTH="100%"
2937 BORDER="0"
2938 CELLPADDING="0"
2939 CELLSPACING="0"
2940 ><TR
2941 ><TD
2942 WIDTH="33%"
2943 ALIGN="left"
2944 VALIGN="top"
2945 ><A
2946 HREF="configuration.html"
2947 >Prev</A
2948 ></TD
2949 ><TD
2950 WIDTH="34%"
2951 ALIGN="center"
2952 VALIGN="top"
2953 ><A
2954 HREF="index.html"
2955 >Home</A
2956 ></TD
2957 ><TD
2958 WIDTH="33%"
2959 ALIGN="right"
2960 VALIGN="top"
2961 ><A
2962 HREF="actions-file.html"
2963 >Next</A
2964 ></TD
2965 ></TR
2966 ><TR
2967 ><TD
2968 WIDTH="33%"
2969 ALIGN="left"
2970 VALIGN="top"
2971 ><SPAN
2972 CLASS="APPLICATION"
2973 >Privoxy</SPAN
2974 > Configuration</TD
2975 ><TD
2976 WIDTH="34%"
2977 ALIGN="center"
2978 VALIGN="top"
2979 >&nbsp;</TD
2980 ><TD
2981 WIDTH="33%"
2982 ALIGN="right"
2983 VALIGN="top"
2984 >Actions Files</TD
2985 ></TR
2986 ></TABLE
2987 ></DIV
2988 ></BODY
2989 ></HTML
2990 >