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