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