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