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