All HTML docs for 3.0.6 release.
[privoxy.git] / doc / webserver / faq / configuration.html
1 <HTML
2 ><HEAD
3 ><TITLE
4 >Configuration</TITLE
5 ><META
6 NAME="GENERATOR"
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
8 "><LINK
9 REL="HOME"
10 TITLE="Privoxy Frequently Asked Questions"
11 HREF="index.html"><LINK
12 REL="PREVIOUS"
13 TITLE="Installation"
14 HREF="installation.html"><LINK
15 REL="NEXT"
16 TITLE="Miscellaneous"
17 HREF="misc.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 SUMMARY="Header navigation table"
32 WIDTH="100%"
33 BORDER="0"
34 CELLPADDING="0"
35 CELLSPACING="0"
36 ><TR
37 ><TH
38 COLSPAN="3"
39 ALIGN="center"
40 >Privoxy Frequently Asked Questions</TH
41 ></TR
42 ><TR
43 ><TD
44 WIDTH="10%"
45 ALIGN="left"
46 VALIGN="bottom"
47 ><A
48 HREF="installation.html"
49 ACCESSKEY="P"
50 >Prev</A
51 ></TD
52 ><TD
53 WIDTH="80%"
54 ALIGN="center"
55 VALIGN="bottom"
56 ></TD
57 ><TD
58 WIDTH="10%"
59 ALIGN="right"
60 VALIGN="bottom"
61 ><A
62 HREF="misc.html"
63 ACCESSKEY="N"
64 >Next</A
65 ></TD
66 ></TR
67 ></TABLE
68 ><HR
69 ALIGN="LEFT"
70 WIDTH="100%"></DIV
71 ><DIV
72 CLASS="SECT1"
73 ><H1
74 CLASS="SECT1"
75 ><A
76 NAME="CONFIGURATION"
77 ></A
78 >3. Configuration</H1
79 ><DIV
80 CLASS="SECT2"
81 ><H3
82 CLASS="SECT2"
83 ><A
84 NAME="AEN351"
85 ></A
86 >3.1. What exactly is an <SPAN
87 CLASS="QUOTE"
88 >"actions"</SPAN
89 > file?</H3
90 ><P
91 > <SPAN
92 CLASS="APPLICATION"
93 >Privoxy</SPAN
94 > utilizes the concept of <SPAN
95 CLASS="QUOTE"
96 >" <A
97 HREF="../user-manual/actions-file.html#ACTIONS"
98 TARGET="_top"
99 >actions</A
100 >"</SPAN
101
102  that are used to manipulate and control web page data.
103  <A
104 HREF="../user-manual/actions-file.html"
105 TARGET="_top"
106 >Actions files</A
107 >
108  are where these <A
109 HREF="../user-manual/actions-file.html#ACTIONS"
110 TARGET="_top"
111 >actions</A
112 >
113  that <SPAN
114 CLASS="APPLICATION"
115 >Privoxy</SPAN
116 > could take while processing a certain
117  request, are configured. Typically, you would define a set of default actions
118  that apply globally to all URLs, then add exceptions to these defaults where needed.
119  There is a wide array of actions available that give the user a high degree
120  of control and flexibility on how to process each and every web page.</P
121 ><P
122 > Actions can be defined on a <A
123 HREF="../user-manual/actions-file.html#AF-PATTERNS"
124 TARGET="_top"
125 >URL pattern</A
126 > basis, i.e.
127  for single URLs, whole web sites, groups or parts thereof etc. Actions can also be
128  grouped together and then applied to requests matching one or more patterns.
129  There are many possible actions that might apply to any given site. As an example,
130  if you are blocking <A
131 HREF="http://en.wikipedia.org/wiki/Browser_cookie"
132 TARGET="_top"
133 >cookies</A
134 >
135  as one of your default actions, but need to accept cookies from a given site,
136  you would need to define an exception for this site in one of your actions
137  files, preferably in <TT
138 CLASS="FILENAME"
139 >user.action</TT
140 >.</P
141 ></DIV
142 ><DIV
143 CLASS="SECT2"
144 ><H3
145 CLASS="SECT2"
146 ><A
147 NAME="ACTIONSS"
148 ></A
149 >3.2. The <SPAN
150 CLASS="QUOTE"
151 >"actions"</SPAN
152 > concept confuses me. Please list 
153 some of these <SPAN
154 CLASS="QUOTE"
155 >"actions"</SPAN
156 >.</H3
157 ><P
158 > For a comprehensive discussion of the actions concept, please refer
159  to the <A
160 HREF="../user-manual/actions-file.html"
161 TARGET="_top"
162 >actions file
163  chapter</A
164 > in the <A
165 HREF="../user-manual/index.html"
166 TARGET="_top"
167 >User
168  Manual</A
169 >. It includes a <A
170 HREF="../user-manual/actions-file.html#ACTIONS"
171 TARGET="_top"
172 >list of all actions</A
173 >
174  and an <A
175 HREF="../user-manual/actions-file.html#ACT-EXAMPLES"
176 TARGET="_top"
177 >actions
178  file tutorial</A
179 > to get you started.</P
180 ></DIV
181 ><DIV
182 CLASS="SECT2"
183 ><H3
184 CLASS="SECT2"
185 ><A
186 NAME="AEN374"
187 ></A
188 >3.3. How are actions files configured? What is the easiest
189 way to do this?</H3
190 ><P
191 > Actions files are just text files in a special syntax and can be edited
192  with a text editor. But probably the easiest way is to access
193  <SPAN
194 CLASS="APPLICATION"
195 >Privoxy</SPAN
196 >'s user interface with your web browser
197  at <A
198 HREF="http://config.privoxy.org/"
199 TARGET="_top"
200 >http://config.privoxy.org/</A
201 >
202  (Shortcut: <A
203 HREF="http://p.p/"
204 TARGET="_top"
205 >http://p.p/</A
206 >) and then select
207  <SPAN
208 CLASS="QUOTE"
209 >"<A
210 HREF="http://config.privoxy.org/show-status"
211 TARGET="_top"
212 >View &#38;
213  change the current configuration</A
214 >"</SPAN
215 > from the menu.</P
216 ></DIV
217 ><DIV
218 CLASS="SECT2"
219 ><H3
220 CLASS="SECT2"
221 ><A
222 NAME="AEN382"
223 ></A
224 >3.4. There are several different <SPAN
225 CLASS="QUOTE"
226 >"actions"</SPAN
227 > files. What are
228 the differences?</H3
229 ><P
230 > Three actions files 
231  are being included by the developers, to be used for 
232  different purposes: These are 
233  <TT
234 CLASS="FILENAME"
235 >default.action</TT
236 >, the <SPAN
237 CLASS="QUOTE"
238 >"main"</SPAN
239 > actions file
240  which is actively maintained by the <SPAN
241 CLASS="APPLICATION"
242 >Privoxy</SPAN
243 >
244  developers and typically sets the default policies, <TT
245 CLASS="FILENAME"
246 >user.action</TT
247 >, where users are encouraged
248  to make their private customizations, and <TT
249 CLASS="FILENAME"
250 >standard.action</TT
251 >, 
252  which is for internal <SPAN
253 CLASS="APPLICATION"
254 >Privoxy</SPAN
255 > use only.
256  Please see <A
257 HREF="../user-manual/actions-file.html"
258 TARGET="_top"
259 >the actions chapter</A
260 >
261  in the <A
262 HREF="../user-manual/index.html"
263 TARGET="_top"
264 >User Manual</A
265 > for a more
266  detailed explanation.</P
267 ><P
268 > Earlier versions included three different versions of the 
269  <TT
270 CLASS="FILENAME"
271 >default.action</TT
272 > file. The new scheme allows for 
273  greater flexibility of local configuration, and for browser based 
274  selection of pre-defined <SPAN
275 CLASS="QUOTE"
276 >"aggressiveness"</SPAN
277 > levels.</P
278 ></DIV
279 ><DIV
280 CLASS="SECT2"
281 ><H3
282 CLASS="SECT2"
283 ><A
284 NAME="GETUPDATES"
285 ></A
286 >3.5. Where can I get updated Actions Files?</H3
287 ><P
288 >   Based on your feedback and the continuing development, updates of 
289    <TT
290 CLASS="FILENAME"
291 >default.action</TT
292 > will be
293    made available from   time to time on the <A
294 HREF="http://sourceforge.net/project/showfiles.php?group_id=11118"
295 TARGET="_top"
296 >files section</A
297 > of
298   our <A
299 HREF="http://sf.net/projects/ijbswa/"
300 TARGET="_top"
301 >project page</A
302 >.
303  </P
304 ><P
305 >  If you wish to receive an email notification whenever we release updates of
306   <SPAN
307 CLASS="APPLICATION"
308 >Privoxy</SPAN
309 > or the actions file, <A
310 HREF="http://lists.sourceforge.net/lists/listinfo/ijbswa-announce/"
311 TARGET="_top"
312 >subscribe
313   to our announce  mailing list</A
314 >, ijbswa-announce@lists.sourceforge.net.
315  </P
316 ></DIV
317 ><DIV
318 CLASS="SECT2"
319 ><H3
320 CLASS="SECT2"
321 ><A
322 NAME="NEWCONFIG"
323 ></A
324 >3.6. Can I use my old config files?</H3
325 ><P
326 >  The syntax and purpose of configuration files has remained the same
327   throughout the 3.x series. Although each release contains updated, 
328   <SPAN
329 CLASS="QUOTE"
330 >"improved"</SPAN
331 > versions and it is recommended to use the newer
332   configuration files.
333   
334    If upgrading from version prior to 3.0.4 the syntax for <TT
335 CLASS="LITERAL"
336 >fast-redirects</TT
337 >
338    has changed. See the <A
339 HREF="../user-manual/whatsnew.html"
340 TARGET="_top"
341 >What's New section</A
342
343    of the <I
344 CLASS="CITETITLE"
345 >User Manual</I
346 > for details.
347  </P
348 ><P
349 >   But all configuration files have substantially
350    changed from the <SPAN
351 CLASS="APPLICATION"
352 >Junkbuster</SPAN
353 > days, and early
354    versions of <SPAN
355 CLASS="APPLICATION"
356 >Privoxy 2.x</SPAN
357 >. The old files, like
358    <TT
359 CLASS="FILENAME"
360 >blocklist</TT
361 > will not work at all. 
362  </P
363 ><P
364 >  Refer to the <A
365 HREF="../user-manual/whatsnew.html"
366 TARGET="_top"
367 >What's New</A
368
369  page for information on configuration changes that may occur from one release to another.
370  </P
371 ></DIV
372 ><DIV
373 CLASS="SECT2"
374 ><H3
375 CLASS="SECT2"
376 ><A
377 NAME="DIFFICULT"
378 ></A
379 >3.7. Why is the configuration so complicated?</H3
380 ><P
381 >  <SPAN
382 CLASS="QUOTE"
383 >"Complicated"</SPAN
384 > is in the eye of the beholder. Those that are 
385   familiar with some of the underlying concepts, such as regular expression
386   syntax, take to it like a fish takes to water. Also, software that tries
387   hard to be <SPAN
388 CLASS="QUOTE"
389 >"user friendly"</SPAN
390 >, often lacks sophistication and
391   flexibility. There is always that trade-off there between power vs.
392   easy-of-use. Furthermore, anyone is welcome to contribute ideas and
393   implementations to enhance <SPAN
394 CLASS="APPLICATION"
395 >Privoxy</SPAN
396 >. 
397  </P
398 ></DIV
399 ><DIV
400 CLASS="SECT2"
401 ><H3
402 CLASS="SECT2"
403 ><A
404 NAME="YAHOO"
405 ></A
406 >3.8. How can I make my Yahoo/Hotmail/Gmail account work?</H3
407 ><P
408 >  The default configuration shouldn't impact the usability of any of these services.
409   It may, however, make all <A
410 HREF="http://en.wikipedia.org/wiki/Browser_cookie"
411 TARGET="_top"
412 >cookies</A
413
414   temporary, so that your browser will forget your
415   login credentials in between browser sessions. If you would like not to have to log
416   in manually each time you access those websites, simply turn off all cookie handling
417   for them in the <TT
418 CLASS="FILENAME"
419 >user.action</TT
420 > file. An example for yahoo might
421   look like:
422  </P
423 ><P
424 >  <TABLE
425 BORDER="0"
426 BGCOLOR="#E0E0E0"
427 WIDTH="100%"
428 ><TR
429 ><TD
430 ><PRE
431 CLASS="SCREEN"
432 ># Allow all cookies for Yahoo login:
433 #
434 { -<A
435 HREF="../user-manual/actions-file.html#CRUNCH-INCOMING-COOKIES"
436 TARGET="_top"
437 >crunch-incoming-cookies</A
438 > -<A
439 HREF="../user-manual/actions-file.html#CRUNCH-OUTGOING-COOKIES"
440 TARGET="_top"
441 >crunch-outgoing-cookies</A
442 > -<A
443 HREF="../user-manual/actions-file.html#SESSION-COOKIES-ONLY"
444 TARGET="_top"
445 >session-cookies-only</A
446 > }
447 .login.yahoo.com</PRE
448 ></TD
449 ></TR
450 ></TABLE
451 >
452  </P
453 ><P
454 >  These kinds of sites are often quite complex and heavy with 
455   <A
456 HREF="http://en.wikipedia.org/wiki/Javascript"
457 TARGET="_top"
458 >Javascript</A
459 > and 
460   thus <SPAN
461 CLASS="QUOTE"
462 >"fragile"</SPAN
463 >. So if <SPAN
464 CLASS="emphasis"
465 ><I
466 CLASS="EMPHASIS"
467 >still</I
468 ></SPAN
469 > a problem, 
470   we have an <A
471 HREF="../user-manual/actions-file.html#ALIASES"
472 TARGET="_top"
473 >alias</A
474 > just for such
475   sticky situations:
476  </P
477 ><P
478 >  <TABLE
479 BORDER="0"
480 BGCOLOR="#E0E0E0"
481 WIDTH="100%"
482 ><TR
483 ><TD
484 ><PRE
485 CLASS="SCREEN"
486 ># Gmail is a _fragile_ site:
487 #
488 { <TT
489 CLASS="LITERAL"
490 >fragile</TT
491 > }
492  # Gmail is ...
493  mail.google.com</PRE
494 ></TD
495 ></TR
496 ></TABLE
497 >
498  </P
499 ><P
500 >  Be sure to flush your browser's caches whenever making these kinds of
501   changes, just to make sure the changes <SPAN
502 CLASS="QUOTE"
503 >"take"</SPAN
504 >.
505  </P
506 ><P
507 >  Make sure the domain, host and path are appropriate as well. Your browser can
508   tell you where you are specifically and you should use that information for 
509   your configuration settings. Note that above it is not referenced as 
510   <TT
511 CLASS="LITERAL"
512 >gmail.com</TT
513 >, which is a valid domain name.
514  </P
515 ></DIV
516 ><DIV
517 CLASS="SECT2"
518 ><H3
519 CLASS="SECT2"
520 ><A
521 NAME="CONFIGFILES"
522 ></A
523 >3.9. What's the difference between the
524 <SPAN
525 CLASS="QUOTE"
526 >"Cautious"</SPAN
527 >, <SPAN
528 CLASS="QUOTE"
529 >"Medium"</SPAN
530 > and <SPAN
531 CLASS="QUOTE"
532 >"Advanced"</SPAN
533 > defaults?</H3
534 ><P
535 >  Configuring <SPAN
536 CLASS="APPLICATION"
537 >Privoxy</SPAN
538 > is not entirely trivial. To
539   help you get started, we provide you with three different default action
540   <SPAN
541 CLASS="QUOTE"
542 >"profiles"</SPAN
543 > in the web based actions file editor at <A
544 HREF="http://config.privoxy.org/show-status"
545 TARGET="_top"
546 >http://config.privoxy.org/show-status</A
547 >.
548   See the <A
549 HREF="../user-manual/actions-file.html"
550 TARGET="_top"
551 ><I
552 CLASS="CITETITLE"
553 >User
554   Manual</I
555 ></A
556 > for a list of actions, and how the default 
557   profiles are set.
558  </P
559 ><P
560 > Where the defaults are likely to break some sites, exceptions for
561  known popular <SPAN
562 CLASS="QUOTE"
563 >"problem"</SPAN
564 > sites are included, but in
565  general, the more aggressive your default settings are, the more exceptions
566  you will have to make later. New users are best to start off in 
567  <SPAN
568 CLASS="QUOTE"
569 >"Cautious"</SPAN
570 > setting. This is safest and will have the fewest 
571  problems. See the <A
572 HREF="../user-manual/index.html"
573 TARGET="_top"
574 ><I
575 CLASS="CITETITLE"
576 >User Manual</I
577 ></A
578 >
579  for a more detailed discussion.</P
580 ><P
581 > It should be noted that the <SPAN
582 CLASS="QUOTE"
583 >"Advanced"</SPAN
584 > profile (formerly known 
585  as the <SPAN
586 CLASS="QUOTE"
587 >"Adventuresome"</SPAN
588 > profile) is more
589  aggressive, and will make use of some of 
590  <SPAN
591 CLASS="APPLICATION"
592 >Privoxy's</SPAN
593 > advanced features. Use at your own risk!</P
594 ></DIV
595 ><DIV
596 CLASS="SECT2"
597 ><H3
598 CLASS="SECT2"
599 ><A
600 NAME="BROWSECONFIG"
601 ></A
602 >3.10. Why can I change the configuration 
603 with a browser? Does that not raise security issues?</H3
604 ><P
605 >  It may seem strange that regular users can edit the config files with their
606   browsers, although the whole <TT
607 CLASS="FILENAME"
608 >/etc/privoxy</TT
609 > hierarchy
610   belongs to the user <SPAN
611 CLASS="QUOTE"
612 >"privoxy"</SPAN
613 >, with only 644 permissions.
614  </P
615 ><P
616 >  When you use the browser-based editor, <SPAN
617 CLASS="APPLICATION"
618 >Privoxy</SPAN
619 >
620   itself is writing to the config files.  Because
621   <SPAN
622 CLASS="APPLICATION"
623 >Privoxy</SPAN
624 > is running as the user <SPAN
625 CLASS="QUOTE"
626 >"privoxy"</SPAN
627 >,
628   it can update the config files.
629  </P
630 ><P
631 >  If you run <SPAN
632 CLASS="APPLICATION"
633 >Privoxy</SPAN
634 > for multiple untrusted users (e.g. in
635   a LAN), you will probably want to turn the web-based editor and remote toggle
636   features off by setting <SPAN
637 CLASS="QUOTE"
638 >"<TT
639 CLASS="LITERAL"
640 ><A
641 HREF="../user-manual/config.html#ENABLE-EDIT-ACTIONS"
642 TARGET="_top"
643 >enable-edit-actions</A
644 >
645   0</TT
646 >"</SPAN
647 > and <SPAN
648 CLASS="QUOTE"
649 >"<TT
650 CLASS="LITERAL"
651 ><A
652 HREF="../user-manual/config.html#ENABLE-REMOTE-TOGGLE"
653 TARGET="_top"
654 >enable-remote-toggle</A
655 >
656   0</TT
657 >"</SPAN
658 > in the <A
659 HREF="../user-manual/config.html"
660 TARGET="_top"
661 >main configuration file</A
662 >.
663  </P
664 ><P
665 >  Note that in the default configuration, only local users (i.e. those on
666   <SPAN
667 CLASS="QUOTE"
668 >"localhost"</SPAN
669 >) can connect to <SPAN
670 CLASS="APPLICATION"
671 >Privoxy</SPAN
672 >,
673   so this is not (normally) a security problem.
674  </P
675 ></DIV
676 ><DIV
677 CLASS="SECT2"
678 ><H3
679 CLASS="SECT2"
680 ><A
681 NAME="AEN488"
682 ></A
683 >3.11. What is the <TT
684 CLASS="FILENAME"
685 >default.filter</TT
686 > file? What is a <SPAN
687 CLASS="QUOTE"
688 >"filter"</SPAN
689 >?</H3
690 ><P
691 > The <A
692 HREF="../user-manual/filter-file.html"
693 TARGET="_top"
694 ><TT
695 CLASS="FILENAME"
696 >default.filter</TT
697 ></A
698 >
699  file is where <SPAN
700 CLASS="emphasis"
701 ><I
702 CLASS="EMPHASIS"
703 >filters</I
704 ></SPAN
705 > as supplied by the developers are defined. 
706  Filters are a special subset of actions that can be used to modify or
707  remove, web page content on the fly. Filters apply to <SPAN
708 CLASS="emphasis"
709 ><I
710 CLASS="EMPHASIS"
711 >anything</I
712 ></SPAN
713 >
714  in the page source (and optionally both client and server headers), including
715  HTML tags, and JavaScript. Regular expressions are used to accomplish this.
716  There are a number of pre-defined filters to deal with common annoyances. The
717  filters are only defined here, to invoke them, you need to use the
718  <A
719 HREF="../user-manual/actions-file.html#FILTER"
720 TARGET="_top"
721 ><TT
722 CLASS="LITERAL"
723 >filter</TT
724 >
725  action</A
726 > in one of the actions files. Filtering is automatically
727  disabled for inappropriate MIME types.</P
728 ><P
729 > If you are familiar with regular expressions, and HTML, you can look at 
730  the provided <TT
731 CLASS="FILENAME"
732 >default.filter</TT
733 > with a text editor and define
734  your own filters.  This is potentially a very powerful feature, but
735  requires some expertise in both regular expressions and HTML/HTTP. 
736   You should 
737  place any modifications to the default filters, or any new ones you create 
738  in a separate file, such as <TT
739 CLASS="FILENAME"
740 >user.filter</TT
741 >, so they won't 
742  be overwritten during upgrades. 
743  The ability to define multiple filter files 
744  in <TT
745 CLASS="FILENAME"
746 >config</TT
747 > is a new feature as of v. 3.0.5.</P
748 ><P
749 > There is no GUI editor option for this part of the configuration, 
750  but you can disable/enable the various pre-defined filters of the included 
751  <TT
752 CLASS="FILENAME"
753 >default.filter</TT
754 > file with the <A
755 HREF="http://config.privoxy.org/show-status"
756 TARGET="_top"
757 >web-based actions file editor</A
758 >.</P
759 ></DIV
760 ><DIV
761 CLASS="SECT2"
762 ><H3
763 CLASS="SECT2"
764 ><A
765 NAME="LANCONFIG"
766 ></A
767 >3.12. How can I set up Privoxy to act as a proxy for my 
768  LAN?</H3
769 ><P
770 > By default, <SPAN
771 CLASS="APPLICATION"
772 >Privoxy</SPAN
773 > only responds to requests 
774  from <TT
775 CLASS="LITERAL"
776 >127.0.0.1</TT
777 > (localhost). To have it act as a server for
778  a network, this needs to be changed in the <A
779 HREF="../user-manual/config.html"
780 TARGET="_top"
781 >main configuration file</A
782 >. Look for
783  the <TT
784 CLASS="LITERAL"
785 ><A
786 HREF="../user-manual/config.html#LISTEN-ADDRESS"
787 TARGET="_top"
788 >listen-address</A
789 ></TT
790 >
791  option, which may be commented out with a <SPAN
792 CLASS="QUOTE"
793 >"#"</SPAN
794 > symbol. Make sure
795  it is uncommented, and assign it the address of the LAN gateway interface,
796  and port number to use. Assuming your LAN address is 192.168.1.1 and you
797  wish to run <SPAN
798 CLASS="APPLICATION"
799 >Privoxy</SPAN
800 > on port 8118, this line
801  should look like:</P
802 ><P
803 > <TABLE
804 BORDER="0"
805 BGCOLOR="#E0E0E0"
806 WIDTH="100%"
807 ><TR
808 ><TD
809 ><PRE
810 CLASS="SCREEN"
811 >  listen-address  192.168.1.1:8118</PRE
812 ></TD
813 ></TR
814 ></TABLE
815 ></P
816 ><P
817 > Save the file, and restart <SPAN
818 CLASS="APPLICATION"
819 >Privoxy</SPAN
820 >. Configure 
821  all browsers on the network then to use this address and port number.</P
822 ><P
823 > Alternately, you can have <SPAN
824 CLASS="APPLICATION"
825 >Privoxy</SPAN
826 > listen on 
827  all available interfaces:</P
828 ><P
829 > <TABLE
830 BORDER="0"
831 BGCOLOR="#E0E0E0"
832 WIDTH="100%"
833 ><TR
834 ><TD
835 ><PRE
836 CLASS="SCREEN"
837 >  listen-address    :8118</PRE
838 ></TD
839 ></TR
840 ></TABLE
841 ></P
842 ><P
843 > And then use <SPAN
844 CLASS="APPLICATION"
845 >Privoxy's</SPAN
846
847  <A
848 HREF="../user-manual/config.html#PERMIT-ACCESS"
849 TARGET="_top"
850 >permit-access</A
851
852  feature to limit connections. A firewall in this situation is recommended 
853  as well.</P
854 ><P
855 > The above steps should be the same for any TCP network, regardless of
856  operating system.</P
857 ><P
858 > If you run <SPAN
859 CLASS="APPLICATION"
860 >Privoxy</SPAN
861 > on a LAN with untrusted users,
862  we recommend that you double-check the <A
863 HREF="../user-manual/config.html#ACCESS-CONTROL"
864 TARGET="_top"
865 >access control and security</A
866 >
867  options!</P
868 ></DIV
869 ><DIV
870 CLASS="SECT2"
871 ><H3
872 CLASS="SECT2"
873 ><A
874 NAME="AEN531"
875 ></A
876 >3.13. Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</H3
877 ><P
878 > The replacement for blocked images can be controlled with the <A
879 HREF="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"
880 TARGET="_top"
881 ><TT
882 CLASS="LITERAL"
883 >set-image-blocker</TT
884 >
885  action</A
886 >. You have the choice of a checkerboard pattern, a transparent 1x1 GIF
887  image (aka <SPAN
888 CLASS="QUOTE"
889 >"blank"</SPAN
890 >), or a redirect to a custom image of your choice.
891  Note that this choice only has effect for images which are blocked as images, i.e.
892  whose URLs match both a <TT
893 CLASS="LITERAL"
894 ><A
895 HREF="../user-manual/actions-file.html#HANDLE-AS-IMAGE"
896 TARGET="_top"
897 >handle-as-image</A
898 ></TT
899 >
900  <SPAN
901 CLASS="emphasis"
902 ><I
903 CLASS="EMPHASIS"
904 >and</I
905 ></SPAN
906 > <TT
907 CLASS="LITERAL"
908 ><A
909 HREF="../user-manual/actions-file.html#BLOCK"
910 TARGET="_top"
911 >block</A
912 ></TT
913 > action.</P
914 ><P
915 > If you want to see nothing, then change the <A
916 HREF="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"
917 TARGET="_top"
918 ><TT
919 CLASS="LITERAL"
920 >set-image-blocker</TT
921 >
922  action</A
923 > to <SPAN
924 CLASS="QUOTE"
925 >"blank"</SPAN
926 >. This can be done by editing the 
927  <TT
928 CLASS="FILENAME"
929 >user.action</TT
930 > file, or through the <A
931 HREF="http://config.privoxy.org/show-status"
932 TARGET="_top"
933 >web-based actions file editor</A
934 >.</P
935 ></DIV
936 ><DIV
937 CLASS="SECT2"
938 ><H3
939 CLASS="SECT2"
940 ><A
941 NAME="AEN548"
942 ></A
943 >3.14. Why would anybody want to see a checkerboard pattern?</H3
944 ><P
945 > Remember that <A
946 HREF="general.html#WHATSANAD"
947 >telling which image is an ad and which
948  isn't</A
949 >, is an educated guess. While we hope that the standard configuration
950  is rather smart, it will make occasional mistakes. The checkerboard image is visually
951  decent, and it shows you where images have been blocked, which can be very
952  helpful in case some navigation aid or otherwise innocent image was
953  erroneously blocked. It is recommended for new users so they can 
954  <SPAN
955 CLASS="QUOTE"
956 >"see"</SPAN
957 > what is happening. Some people might also enjoy seeing how
958  many banners they <SPAN
959 CLASS="emphasis"
960 ><I
961 CLASS="EMPHASIS"
962 >don't</I
963 ></SPAN
964 > have to see.</P
965 ></DIV
966 ><DIV
967 CLASS="SECT2"
968 ><H3
969 CLASS="SECT2"
970 ><A
971 NAME="AEN554"
972 ></A
973 >3.15. I see some images being replaced by a text
974 instead of the checkerboard image. Why and how do I get rid of this?</H3
975 ><P
976 > This happens when the banners are not embedded in the HTML code of the
977  page itself, but in separate HTML (sub)documents that are loaded into (i)frames
978  or (i)layers, and these external HTML documents are blocked. Being non-images
979  they get replaced by a substitute HTML page rather than a substitute image,
980  which wouldn't work out technically, since the browser expects and accepts
981  only HTML when it has requested an HTML document. </P
982 ><P
983 > The substitute page adapts to the available space and shows itself as a
984  miniature two-liner if loaded into small frames, or full-blown with a
985  large red "BLOCKED" banner if space allows.</P
986 ><P
987 > If you prefer the banners to be blocked by images, you must see to it that
988  the HTML documents in which they are embedded are not blocked. Clicking
989  the <SPAN
990 CLASS="QUOTE"
991 >"See why"</SPAN
992 > link offered in the substitute page will show
993  you which rule blocked the page. After changing the rule and un-blocking
994  the HTML documents, the browser will try to load the actual banner images
995  and the usual image blocking will (hopefully!) kick in.</P
996 ></DIV
997 ><DIV
998 CLASS="SECT2"
999 ><H3
1000 CLASS="SECT2"
1001 ><A
1002 NAME="SRVANY"
1003 ></A
1004 >3.16. Can Privoxy run as a service 
1005 on Win2K/NT/XP?</H3
1006 ><P
1007 > Yes. Version 3.0.5 introduces full <SPAN
1008 CLASS="APPLICATION"
1009 >Windows</SPAN
1010 > service
1011  functionality. See <A
1012 HREF="../user-manual/installation.html#installation-pack-win"
1013 TARGET="_top"
1014 > the <I
1015 CLASS="CITETITLE"
1016 >User Manual</I
1017 ></A
1018 > for details on how to install and configure 
1019  <SPAN
1020 CLASS="APPLICATION"
1021 >Privoxy</SPAN
1022 > as a service.</P
1023 ><P
1024 > Earlier 3.x versions could run as a system service using <B
1025 CLASS="COMMAND"
1026 >srvany.exe</B
1027 >.
1028  See the discussion at <A
1029 HREF="http://sourceforge.net/tracker/?func=detail&atid=361118&aid=485617&group_id=11118"
1030 TARGET="_top"
1031 >http://sourceforge.net/tracker/?func=detail&#38;atid=361118&#38;aid=485617&#38;group_id=11118</A
1032 >,
1033  for details, and a sample configuration.</P
1034 ></DIV
1035 ><DIV
1036 CLASS="SECT2"
1037 ><H3
1038 CLASS="SECT2"
1039 ><A
1040 NAME="OTHERPROXY"
1041 ></A
1042 >3.17. How can I make Privoxy work with other 
1043 proxies like Squid or Tor?</H3
1044 ><P
1045 > This can be done and is often useful to combine the benefits of
1046  <SPAN
1047 CLASS="APPLICATION"
1048 >Privoxy</SPAN
1049 > with those of a another proxy.
1050  See the <A
1051 HREF="../user-manual/config.html#FORWARDING"
1052 TARGET="_top"
1053 >forwarding chapter</A
1054 >
1055  in the <A
1056 HREF="../user-manual/index.html"
1057 TARGET="_top"
1058 >User Manual</A
1059 > which
1060  describes how to do this, and the <A
1061 HREF="misc.html#TOR"
1062 > How do I use Privoxy together with 
1063  Tor</A
1064 > section below.</P
1065 ></DIV
1066 ><DIV
1067 CLASS="SECT2"
1068 ><H3
1069 CLASS="SECT2"
1070 ><A
1071 NAME="PORT-80"
1072 ></A
1073 >3.18. Can I just set Privoxy to use port 80
1074 and thus avoid individual browser configuration?</H3
1075 ><P
1076 > No, its more complicated than that. This only works with special kinds 
1077  of proxies known as <SPAN
1078 CLASS="QUOTE"
1079 >"transparent"</SPAN
1080 > proxies (see below).</P
1081 ></DIV
1082 ><DIV
1083 CLASS="SECT2"
1084 ><H3
1085 CLASS="SECT2"
1086 ><A
1087 NAME="TRANSPARENT"
1088 ></A
1089 >3.19. Can Privoxy run as a <SPAN
1090 CLASS="QUOTE"
1091 >"transparent"</SPAN
1092 > proxy?</H3
1093 ><P
1094 > No, <SPAN
1095 CLASS="APPLICATION"
1096 >Privoxy</SPAN
1097 > currently does not have this ability, 
1098  though it may be added in a future release. Transparent proxies require
1099  special handling of the request headers beyond what
1100  <SPAN
1101 CLASS="APPLICATION"
1102 >Privoxy</SPAN
1103 > is now capable of. </P
1104 ><P
1105 > Chaining <SPAN
1106 CLASS="APPLICATION"
1107 >Privoxy</SPAN
1108 > behind another proxy that has 
1109  this ability should work though. 
1110  See the <A
1111 HREF="../user-manual/config.html#FORWARDING"
1112 TARGET="_top"
1113 >forwarding chapter</A
1114 >
1115  in the <A
1116 HREF="../user-manual/index.html"
1117 TARGET="_top"
1118 >User Manual</A
1119 >. As
1120  a transparent proxy to be used for chaining we suggest Transproxy
1121  (<A
1122 HREF="http://transproxy.sourceforge.net/"
1123 TARGET="_top"
1124 >http://transproxy.sourceforge.net/</A
1125 >).</P
1126 ></DIV
1127 ><DIV
1128 CLASS="SECT2"
1129 ><H3
1130 CLASS="SECT2"
1131 ><A
1132 NAME="OUTLOOK"
1133 ></A
1134 >3.20. How can I configure Privoxy for use with Outlook
1135  Express?</H3
1136 ><P
1137 > <SPAN
1138 CLASS="APPLICATION"
1139 >Outlook Express</SPAN
1140 > uses <SPAN
1141 CLASS="APPLICATION"
1142 >Internet Explorer</SPAN
1143
1144  components to both render HTML, and fetch any HTTP requests that may be embedded in an HTML email.
1145  So however you have <SPAN
1146 CLASS="APPLICATION"
1147 >Privoxy</SPAN
1148 > configured to work
1149  with IE, this configuration should automatically be shared.</P
1150 ></DIV
1151 ><DIV
1152 CLASS="SECT2"
1153 ><H3
1154 CLASS="SECT2"
1155 ><A
1156 NAME="OUTLOOK-MORE"
1157 ></A
1158 >3.21. How can I have separate rules just for HTML mail?</H3
1159 ><P
1160 > The short answer is, you can't. <SPAN
1161 CLASS="APPLICATION"
1162 >Privoxy</SPAN
1163 > has no way
1164  of knowing which particular application makes a request, so there is no way to
1165  distinguish between web pages and HTML mail.
1166  <SPAN
1167 CLASS="APPLICATION"
1168 >Privoxy</SPAN
1169 > just blindly proxies all requests. In the
1170  case of <SPAN
1171 CLASS="APPLICATION"
1172 >Outlook Express</SPAN
1173 > (see above), OE uses 
1174  IE anyway, and there is no way for <SPAN
1175 CLASS="APPLICATION"
1176 >Privoxy</SPAN
1177 > to ever 
1178  be able to distinguish between them (nor could any other proxy type application for
1179  that matter).</P
1180 ><P
1181 > For a good discussion of some of the issues involved (including privacy and 
1182  security issues), see 
1183  <A
1184 HREF="http://sourceforge.net/tracker/?func=detail&atid=211118&aid=629518&group_id=11118"
1185 TARGET="_top"
1186 >http://sourceforge.net/tracker/?func=detail&#38;atid=211118&#38;aid=629518&#38;group_id=11118</A
1187 >.</P
1188 ></DIV
1189 ><DIV
1190 CLASS="SECT2"
1191 ><H3
1192 CLASS="SECT2"
1193 ><A
1194 NAME="SNEAKY-COOKIES"
1195 ></A
1196 >3.22. I sometimes notice cookies sneaking through. How?</H3
1197 ><P
1198 > <A
1199 HREF="http://en.wikipedia.org/wiki/Browser_cookie"
1200 TARGET="_top"
1201 >Cookies</A
1202 > can be 
1203  set in several ways. The classic method is via the 
1204  <TT
1205 CLASS="LITERAL"
1206 >Set-Cookie</TT
1207 > HTTP header. This is straightforward, and an
1208  easy one to manipulate, such as the <SPAN
1209 CLASS="APPLICATION"
1210 >Privoxy</SPAN
1211 > concept of 
1212  <A
1213 HREF="../user-manual/actions-file.html#SESSION-COOKIES-ONLY"
1214 TARGET="_top"
1215 >session-cookies-only</A
1216 >.
1217  There is also the possibility of using 
1218   <A
1219 HREF="http://en.wikipedia.org/wiki/Javascript"
1220 TARGET="_top"
1221 >Javascript</A
1222 > to
1223  set cookies (<SPAN
1224 CLASS="APPLICATION"
1225 >Privoxy</SPAN
1226 > calls these <TT
1227 CLASS="LITERAL"
1228 >content-cookies</TT
1229 >). This
1230  is trickier because the syntax can vary widely, and thus requires a certain
1231  amount of guesswork. It is not realistic to catch all of these short of
1232  disabling Javascript, which would break many sites. And lastly, if the
1233  cookies are embedded in a HTTPS/SSL secure session via Javascript, they are beyond
1234  <SPAN
1235 CLASS="APPLICATION"
1236 >Privoxy's</SPAN
1237 > reach.</P
1238 ><P
1239 > All in all, <SPAN
1240 CLASS="APPLICATION"
1241 >Privoxy</SPAN
1242 > can help manage cookies in general, can help minimize
1243  the loss of privacy posed by cookies, but can't realistically stop all
1244  cookies.</P
1245 ></DIV
1246 ><DIV
1247 CLASS="SECT2"
1248 ><H3
1249 CLASS="SECT2"
1250 ><A
1251 NAME="EVIL-COOKIES"
1252 ></A
1253 >3.23. Are all cookies bad? Why?</H3
1254 ><P
1255 > No, in fact there are many beneficial uses of 
1256  <A
1257 HREF="http://en.wikipedia.org/wiki/Browser_cookie"
1258 TARGET="_top"
1259 >cookies</A
1260 >. Cookies are just a
1261  method that browsers can use to store data between pages, or between browser
1262  sessions. Sometimes there is a good reason for this, and the user's life is a
1263  bit easier as a result. But there is a long history of some websites taking
1264  advantage of this layer of trust, and using the data they glean from you  and 
1265  your browsing habits for their own purposes, and maybe to your potential
1266  detriment. Such sites are using you and storing their data on your system.
1267  That is why the security conscious watch from whom those cookies come, and why
1268  they really <SPAN
1269 CLASS="emphasis"
1270 ><I
1271 CLASS="EMPHASIS"
1272 >need</I
1273 ></SPAN
1274 > to be there.</P
1275 ><P
1276 >  See the 
1277    <A
1278 HREF="http://en.wikipedia.org/wiki/Browser_cookie"
1279 TARGET="_top"
1280 >Wikipedia cookie
1281   definition</A
1282 > for more.</P
1283 ></DIV
1284 ><DIV
1285 CLASS="SECT2"
1286 ><H3
1287 CLASS="SECT2"
1288 ><A
1289 NAME="ALLOW-COOKIES"
1290 ></A
1291 >3.24. How can I allow permanent cookies for my trusted sites?</H3
1292 ><P
1293 >  There are several actions that relate to cookies. The default behavior is to 
1294   allow only <SPAN
1295 CLASS="QUOTE"
1296 >"session cookies"</SPAN
1297 >, which means the cookies only last
1298   for the current browser session. This eliminates most kinds of abuse related 
1299   to cookies. But there may be cases where we want cookies to last.</P
1300 ><P
1301 >  To disable all cookie actions, so that cookies are allowed unrestricted,
1302   both in and out, for <TT
1303 CLASS="LITERAL"
1304 >example.com</TT
1305 >: </P
1306 ><P
1307 > <TABLE
1308 BORDER="0"
1309 BGCOLOR="#E0E0E0"
1310 WIDTH="100%"
1311 ><TR
1312 ><TD
1313 ><PRE
1314 CLASS="SCREEN"
1315 > { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
1316   .example.com</PRE
1317 ></TD
1318 ></TR
1319 ></TABLE
1320 ></P
1321 ><P
1322 > Place the above in <TT
1323 CLASS="FILENAME"
1324 >user.action</TT
1325 >. Note some of these may
1326  be off by default anyway, so this might be redundant, but there is no harm
1327  being explicit in what you want to happen. <TT
1328 CLASS="FILENAME"
1329 >user.action</TT
1330 >
1331  includes an alias for this situation, called
1332  <TT
1333 CLASS="LITERAL"
1334 >allow-all-cookies</TT
1335 >.</P
1336 ></DIV
1337 ><DIV
1338 CLASS="SECT2"
1339 ><H3
1340 CLASS="SECT2"
1341 ><A
1342 NAME="MULTIPLES"
1343 ></A
1344 >3.25. Can I have separate configurations for different users?</H3
1345 ><P
1346 > Each instance of <SPAN
1347 CLASS="APPLICATION"
1348 >Privoxy</SPAN
1349 > has its own
1350  configuration, including such attributes as the TCP port that it listens on.
1351  What you can do is run multiple instances of <SPAN
1352 CLASS="APPLICATION"
1353 >Privoxy</SPAN
1354 >, each with 
1355  a unique 
1356  <A
1357 HREF="../user-manual/config.html#LISTEN-ADDRESS"
1358 TARGET="_top"
1359 >listen-address</A
1360 >
1361  configuration setting, and configuration path, and then
1362  each of these can have their own configurations. Think of it as per-port
1363  configuration.</P
1364 ><P
1365
1366  Simple enough for a few users, but for large installations, consider having
1367  groups of users that might share like configurations.</P
1368 ></DIV
1369 ><DIV
1370 CLASS="SECT2"
1371 ><H3
1372 CLASS="SECT2"
1373 ><A
1374 NAME="WHITELISTS"
1375 ></A
1376 >3.26. Can I set-up Privoxy as a whitelist of
1377 <SPAN
1378 CLASS="QUOTE"
1379 >"good"</SPAN
1380 > sites?</H3
1381 ><P
1382 > Sure. There are a couple of things you can do for simple white-listing.
1383  Here's one real easy one:</P
1384 ><TABLE
1385 BORDER="0"
1386 BGCOLOR="#E0E0E0"
1387 WIDTH="100%"
1388 ><TR
1389 ><TD
1390 ><PRE
1391 CLASS="SCREEN"
1392 > ############################################################
1393  # Blacklist
1394  ############################################################
1395  { <A
1396 HREF="../user-manual/actions-file.html#BLOCK"
1397 TARGET="_top"
1398 >+block</A
1399 > }
1400  / # Block *all* URLs
1401  
1402  ############################################################
1403  # Whitelist
1404  ############################################################
1405  { <A
1406 HREF="../user-manual/actions-file.html#BLOCK"
1407 TARGET="_top"
1408 >-block</A
1409 > }
1410   kids.example.com
1411   toys.example.com
1412   games.example.com</PRE
1413 ></TD
1414 ></TR
1415 ></TABLE
1416 ><P
1417 > This allows access to only those three sites by first blocking all URLs, and 
1418  then subsequently allowing three specific exceptions.</P
1419 ><P
1420 > A more interesting approach is <SPAN
1421 CLASS="APPLICATION"
1422 >Privoxy's</SPAN
1423
1424  <TT
1425 CLASS="LITERAL"
1426 >trustfile</TT
1427 > concept, which incorporates the notion of 
1428  <SPAN
1429 CLASS="QUOTE"
1430 >"trusted referrers"</SPAN
1431 >. See the <A
1432 HREF="../user-manual/config.html#TRUSTFILE"
1433 TARGET="_top"
1434 >User Manual Trust</A
1435 >
1436  documentation.</P
1437 ><P
1438 > These are fairly simple approaches and are not completely foolproof. There
1439  are various other configuration options that should be disabled (described
1440  elsewhere here and in <A
1441 HREF="../user-manual/"
1442 TARGET="_top"
1443 >the User Manual</A
1444 >)
1445  so that users can't modify their own configuration and easily circumvent the
1446  whitelist.  </P
1447 ></DIV
1448 ><DIV
1449 CLASS="SECT2"
1450 ><H3
1451 CLASS="SECT2"
1452 ><A
1453 NAME="NO-ADBLOCK"
1454 ></A
1455 >3.27. How can I turn off ad-blocking?</H3
1456 ><P
1457 > Ad blocking is achieved through a complex application of various <SPAN
1458 CLASS="APPLICATION"
1459 >Privoxy</SPAN
1460
1461  <A
1462 HREF="../user-manual/actions-file.html"
1463 TARGET="_top"
1464 >actions</A
1465 >. These 
1466  actions are deployed against simple images, banners, flash animations, 
1467  text pages, JavaScript, pop-ups and pop-unders, etc., so its not as simple as
1468  just turning one or two actions off. The various actions that make up
1469  <SPAN
1470 CLASS="APPLICATION"
1471 >Privoxy</SPAN
1472 > ad blocking are hard-coded into the default configuration files. It
1473  has been assumed that everyone using <SPAN
1474 CLASS="APPLICATION"
1475 >Privoxy</SPAN
1476 > is interested in this
1477  particular feature. 
1478  </P
1479 ><P
1480 > If you want to do without this, there are several approaches you can take:
1481  You can manually undo the many block rules in
1482  <TT
1483 CLASS="FILENAME"
1484 >default.action</TT
1485 >. Or even easier, just create your own
1486  <TT
1487 CLASS="FILENAME"
1488 >default.action</TT
1489 > file from scratch without the many ad
1490  blocking rules, and corresponding exceptions. Or lastly, if you are not
1491  concerned about the additional blocks that are done for privacy reasons, you
1492  can very easily over-ride <SPAN
1493 CLASS="emphasis"
1494 ><I
1495 CLASS="EMPHASIS"
1496 >all</I
1497 ></SPAN
1498 > blocking with the
1499  following very simple rule in your <TT
1500 CLASS="FILENAME"
1501 >user.action</TT
1502 >: 
1503  </P
1504 ><P
1505 > <TABLE
1506 BORDER="0"
1507 BGCOLOR="#E0E0E0"
1508 WIDTH="100%"
1509 ><TR
1510 ><TD
1511 ><PRE
1512 CLASS="SCREEN"
1513 > # Unblock everybody, everywhere
1514  { <A
1515 HREF="../user-manual/actions-file.html#BLOCK"
1516 TARGET="_top"
1517 >-block</A
1518 > }
1519  / # UN-Block *all* URLs</PRE
1520 ></TD
1521 ></TR
1522 ></TABLE
1523 ></P
1524 ><P
1525
1526  Or even a more comprehensive reversing of various ad related actions:</P
1527 ><P
1528 > <TABLE
1529 BORDER="0"
1530 BGCOLOR="#E0E0E0"
1531 WIDTH="100%"
1532 ><TR
1533 ><TD
1534 ><PRE
1535 CLASS="SCREEN"
1536 > # Unblock everybody, everywhere, and turn off appropriate filtering, etc
1537  { <A
1538 HREF="../user-manual/actions-file.html#BLOCK"
1539 TARGET="_top"
1540 >-block</A
1541 > \
1542   <A
1543 HREF="../user-manual/actions-file.html#FILTER-BANNERS-BY-SIZE"
1544 TARGET="_top"
1545 >-filter{banners-by-size}</A
1546 > \
1547   <A
1548 HREF="../user-manual/actions-file.html#FILTER-BANNERS-BY-LINK"
1549 TARGET="_top"
1550 >-filter{banners-by-link}</A
1551 > \
1552   <TT
1553 CLASS="LITERAL"
1554 >allow-popups</TT
1555 > \
1556  }
1557  / # UN-Block *all* URLs and allow ads</PRE
1558 ></TD
1559 ></TR
1560 ></TABLE
1561 ></P
1562 ><P
1563 > This last <SPAN
1564 CLASS="QUOTE"
1565 >"action"</SPAN
1566 > in this compound statement,
1567  <TT
1568 CLASS="LITERAL"
1569 >allow-popups</TT
1570 >, is an <A
1571 HREF="../user-manual/actions-file.html#ALIASES"
1572 TARGET="_top"
1573 >alias</A
1574 > that disables
1575  various pop-up blocking features.</P
1576 ></DIV
1577 ><DIV
1578 CLASS="SECT2"
1579 ><H3
1580 CLASS="SECT2"
1581 ><A
1582 NAME="TEMPLATES"
1583 ></A
1584 >3.28. How can I have custom template pages, like the 
1585 <SPAN
1586 CLASS="emphasis"
1587 ><I
1588 CLASS="EMPHASIS"
1589 >BLOCKED</I
1590 ></SPAN
1591 > page?</H3
1592 ><P
1593 > <SPAN
1594 CLASS="APPLICATION"
1595 >Privoxy</SPAN
1596 > <SPAN
1597 CLASS="QUOTE"
1598 >"templates"</SPAN
1599 > are specialized text files utilized by
1600  <SPAN
1601 CLASS="APPLICATION"
1602 >Privoxy</SPAN
1603 > for various purposes and can easily be modified using any text
1604  editor. All the template pages are installed in a sub-directory appropriately
1605  named: <TT
1606 CLASS="FILENAME"
1607 >templates</TT
1608 >.  Knowing something about HTML syntax
1609  will of course be helpful. You cannot rename any of these files, or create
1610  completely new templates, that is not possible. But you can change the page
1611  content to whatever you like. Be forewarned that these files are subject to
1612  being overwritten during upgrades, so be sure to save any customizations.</P
1613 ></DIV
1614 ><DIV
1615 CLASS="SECT2"
1616 ><H3
1617 CLASS="SECT2"
1618 ><A
1619 NAME="BLOCKALL"
1620 ></A
1621 >3.29. How can I remove the <SPAN
1622 CLASS="QUOTE"
1623 >"Go There Anyway"</SPAN
1624 > link from 
1625 the <SPAN
1626 CLASS="emphasis"
1627 ><I
1628 CLASS="EMPHASIS"
1629 >BLOCKED</I
1630 ></SPAN
1631 > page?</H3
1632 ><P
1633 > Editing the BLOCKED template page (see above) may dissuade some users, but
1634  this method is easily circumvented. Where you need this level of control, you
1635  should build <SPAN
1636 CLASS="APPLICATION"
1637 >Privoxy</SPAN
1638 > from source, and enable various features that are
1639  available as compile-time options. You should 
1640  <B
1641 CLASS="COMMAND"
1642 >configure</B
1643 > the sources as follows:</P
1644 ><P
1645 > <TABLE
1646 BORDER="0"
1647 BGCOLOR="#E0E0E0"
1648 WIDTH="100%"
1649 ><TR
1650 ><TD
1651 ><PRE
1652 CLASS="SCREEN"
1653 > ./configure  --disable-toggle  --disable-editor  --disable-force</PRE
1654 ></TD
1655 ></TR
1656 ></TABLE
1657 ></P
1658 ><P
1659 > This will create an executable with hard-coded security features so that
1660  <SPAN
1661 CLASS="APPLICATION"
1662 >Privoxy</SPAN
1663 > does not allow easy bypassing of blocked sites, or changing the
1664  current configuration via any connected user's web browser. Some of these
1665  features can also be toggled on/off via options in
1666  <SPAN
1667 CLASS="APPLICATION"
1668 >Privoxy's</SPAN
1669 > main 
1670  <A
1671 HREF="../user-manual/config.html#ACCESS-CONTROL"
1672 TARGET="_top"
1673 >config</A
1674 > file. But 
1675  compiled-in compliance is a much better method of ensuring that a block is
1676  really a block. </P
1677 ><P
1678 > Default builds of <SPAN
1679 CLASS="APPLICATION"
1680 >Privoxy</SPAN
1681 > are typically built with these features
1682  disabled.</P
1683 ></DIV
1684 ></DIV
1685 ><DIV
1686 CLASS="NAVFOOTER"
1687 ><HR
1688 ALIGN="LEFT"
1689 WIDTH="100%"><TABLE
1690 SUMMARY="Footer navigation table"
1691 WIDTH="100%"
1692 BORDER="0"
1693 CELLPADDING="0"
1694 CELLSPACING="0"
1695 ><TR
1696 ><TD
1697 WIDTH="33%"
1698 ALIGN="left"
1699 VALIGN="top"
1700 ><A
1701 HREF="installation.html"
1702 ACCESSKEY="P"
1703 >Prev</A
1704 ></TD
1705 ><TD
1706 WIDTH="34%"
1707 ALIGN="center"
1708 VALIGN="top"
1709 ><A
1710 HREF="index.html"
1711 ACCESSKEY="H"
1712 >Home</A
1713 ></TD
1714 ><TD
1715 WIDTH="33%"
1716 ALIGN="right"
1717 VALIGN="top"
1718 ><A
1719 HREF="misc.html"
1720 ACCESSKEY="N"
1721 >Next</A
1722 ></TD
1723 ></TR
1724 ><TR
1725 ><TD
1726 WIDTH="33%"
1727 ALIGN="left"
1728 VALIGN="top"
1729 >Installation</TD
1730 ><TD
1731 WIDTH="34%"
1732 ALIGN="center"
1733 VALIGN="top"
1734 >&nbsp;</TD
1735 ><TD
1736 WIDTH="33%"
1737 ALIGN="right"
1738 VALIGN="top"
1739 >Miscellaneous</TD
1740 ></TR
1741 ></TABLE
1742 ></DIV
1743 ></BODY
1744 ></HTML
1745 >