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