name change related issue.
[privoxy.git] / doc / source / faq.sgml
1 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
2 <!--
3  File        :  $Source: /cvsroot/ijbswa/current/doc/source/faq.sgml,v $
4
5  Purpose     :  FAQ
6                 This file belongs into
7                 ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
8                 
9  $Id: faq.sgml,v 1.23 2002/03/24 12:33:01 swa Exp $
10
11  Written by and Copyright (C) 2001 the SourceForge
12  PRIVOXY team.  http://ijbswa.sourceforge.net
13
14  Based on the Internet Junkbuster originally written
15  by and Copyright (C) 1997 Anonymous Coders and 
16  Junkbusters Corporation.  http://www.junkbusters.com
17 -->
18
19 <article id="index">
20 <artheader>
21 <title>Privoxy Frequently Asked Questions</title>
22
23 <pubdate>$Id: faq.sgml,v 1.23 2002/03/24 12:33:01 swa Exp $</pubdate>
24
25 <authorgroup>
26  <author>
27   <affiliation>
28    <orgname>By: Privoxy Developers</orgname>
29    </affiliation>
30  </author>
31 </authorgroup>
32
33 <abstract>
34  <para>
35 The FAQ document gives users and developers alike answers to frequently asked
36 questions about
37 <application>Privoxy</application>. <application>Privoxy</application> is a web
38 proxy with advanced filtering capabilities for protecting privacy, filtering
39 web page content, managing cookies, controlling access, and removing ads,
40 banners, pop-ups and other obnoxious Internet
41 Junk. <application>Privoxy</application> has a very flexible configuration and
42 can be customized to suit individual needs and
43 tastes. <application>Privoxy</application> has application for both stand-alone
44 systems and multi-user networks.
45  </para>
46  <para>
47 You can find the latest version of the document at <ulink url="http://ijbswa.sourceforge.net/faq/">http://ijbswa.sourceforge.net/faq/</ulink>.
48 Please see the Contact section in the 
49 <ulink url="http://ijbswa.sourceforge.net/user-manual/contact.html">user-manual</ulink> if you want to contact the developers.
50  </para>
51
52 <!--   <para> -->
53 <!--    Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
54 <!--   </para> -->
55 </abstract>
56 </artheader>
57
58
59 <!--   ~~~~~       New section      ~~~~~     -->
60
61 <!--
62 <sect1 id="introduction"><title>Introduction</title>
63 <para>
64    Fillme.
65 </para>
66 </sect1>
67 -->
68 <!--   ~~~~~       New section      ~~~~~     -->
69
70 <sect1 id="questions"><title>Frequently Asked Questions</title>
71
72 <!--   ~~~~~       New section      ~~~~~     -->
73
74 <sect2 id="general"><title>General Information</title>
75
76 <sect3 id="newjb"><title>What is this new version of <application>Privoxy</application>?</title>
77  <para>
78   The original <application>Internet Junkbuster</application> (tm) is a 
79   coyrighted product of <ulink url="http://www.junkbusters.com">Junkbusters
80   Corporation</ulink>. Development of this effort stopped some time ago as of
81   version 2.0.2. Stefan Waldherr started the ijbswa project on <ulink
82   url="http://ijbswa.sourceforge.net">Sourceforge</ulink> to rekindle
83   development. Other developers subsequently joined with Stefan, and have
84   since added many new features, refinements and enhancements. 
85  </para>
86  <para>
87   The new <application>Privoxy</application> started with the same
88   code base, but has changed significantly at this point.
89  </para>
90
91 </sect3>
92
93 <sect3 id="differs"><title>How does it differ from the old <application>Junkbuster?</application></title>
94  <para>
95    All the old features remain. The new <application>Privoxy</application> 
96    still blocks ads and banners, still manages cookies, and still helps protect
97    your privacy. But, these are all enhanced, and many new features have been 
98    added, all in the same vein.
99  </para>
100  <para>
101   The configuration has changed significantly as well. This is something that
102   users will notice right off the bat. The <quote>blocklist</quote> file does
103   not exist any more. This is replaced by <quote>actions</quote> files, such
104   as <filename>default.actions</filename>. This is where most of the per site
105   configuration is now.
106
107  </para>
108 </sect3>
109
110 <sect3 id="features"><title>What are some of the new features?</title>
111 <!--
112  The section is in both user-manual and faq. Please keep in sync!!!
113 -->
114 <para>
115  <itemizedlist>
116
117  <listitem>
118   <para>
119    Integrated browser based configuration and control utility (<ulink
120    url="http://p.p">http://p.p</ulink>). Browser-based tracing of rule
121    and filter effects.
122   </para>
123  </listitem> 
124 <!--
125  <listitem>
126   <para>
127    Modularized configuration that will allow for system wide settings, and
128    individual user settings. (not implemented yet, probably a 3.1 feature)
129   </para>
130  </listitem> 
131 -->
132  <listitem>
133   <para>
134     Blocking of annoying pop-up browser windows.
135   </para>
136  </listitem> 
137
138  <listitem>
139   <para>
140    HTTP/1.1 compliant (most, but not all 1.1 features are supported).
141   </para>
142  </listitem> 
143
144  <listitem>
145   <para>
146    Support for Perl Compatible Regular Expressions in the configuration files, and 
147    generally a more sophisticated and flexible configuration syntax over
148    previous versions. 
149   </para>
150  </listitem> 
151
152  <listitem>
153   <para>
154    GIF de-animation. 
155   </para>
156  </listitem> 
157  
158  <listitem>
159   <para>
160    Web page content filtering (removes banners based on size,
161    invisible <quote>web-bugs</quote>, JavaScript, pop-ups, status bar abuse,
162    etc.)
163   </para>
164  </listitem> 
165  
166  <listitem>
167   <para>
168    Bypass many click-tracking scripts (avoids script redirection).
169  
170   </para>
171  </listitem> 
172  
173  <listitem>
174   <para>
175    Multi-threaded (POSIX and native threads).
176   </para>
177  </listitem> 
178
179  <listitem>
180   <para>
181    Auto-detection and re-reading of config file changes.
182   </para>
183  </listitem> 
184
185  <listitem>
186   <para>
187    User-customizable HTML templates (e.g. 404 error page).
188   </para>
189  </listitem> 
190
191  <listitem>
192   <para>
193    Improved cookie management features (e.g. session based cookies).
194   </para>
195 </listitem> 
196
197  <listitem>
198   <para>
199    Builds from source on most UNIX-like systems. Packages available for: Linux
200    (RedHat, SuSE, or Debian), Windows, Sun Solaris, Mac OSX, OS/2, HP-UX 11 and AmigaOS.
201  
202   </para>
203  </listitem> 
204
205  <listitem>
206   <para>
207    In addition, the configuration is much more powerful and versatile over-all.
208   </para>
209 </listitem> 
210
211  </itemizedlist>
212 </para>
213
214 </sect3>
215
216 <sect3 id="proxymoron"><title>What is a <quote>proxy</quote>? How does
217 <application>Privoxy</application> work? </title>
218  <para>
219   When you connect to a web site with <application>Privoxy</application>, 
220   you are really connecting to your locally running version of 
221   <application>Privoxy</application>. <application>Privoxy</application>
222   intercepts your requests for the web page, and relays that to the 
223   <quote>real</quote> web site. The web site sends the HTTP data stream 
224   back to <application>Privoxy</application>, where
225   <application>Privoxy</application> can work its magic before it 
226   relays this data back to your web browser.
227  </para>
228
229  <para>
230   Since <application>Privoxy</application> sits between you and the 
231   WWW, it is in a position to intercept and completely manage all web traffic and 
232   HTTP content before it gets to your browser.
233   <application>Privoxy</application> uses various programming methods to do
234   this, all of which is under your control via the various configuration
235   files and options.
236  </para>
237
238  <para>
239   There are many kinds of proxies. <application>Privoxy</application> best 
240   fits the <quote>filtering proxy</quote> category.
241  </para>
242
243 </sect3>
244
245 <sect3 id="browsers2"><title>My browser does the same things as
246 <application>Privoxy</application>. Why should I use
247 <application>Privoxy</application> at all?</title>
248  <para>
249   Modern browsers do indeed have <emphasis>some</emphasis> of the same
250   functionality as <application>Privoxy</application>. Maybe this is
251   adequate for you. But <application>Privoxy</application> is much more
252   verstatile and powerful, and can do a number of things that browsers just can't.
253  </para>
254  <para>
255   In addition, a proxy is good choice if you use multiple browsers, or 
256   have a LAN with multiple computers. This way all the configuration 
257   is in one place, and you don't have to maintain a similar configuration 
258   for possibly many browsers.
259
260  </para>
261 </sect3>
262
263
264
265 <sect3 id="license"><title>Is there is a license or fee? What about a 
266 warranty? Registration?</title>
267  <para>
268   <application>Privoxy</application> is licensed under the 
269   GNU General Public License (GPL). It is free to use, copy, 
270   modify or distribute as you wish under the terms of this license.
271   See <ulink
272   url="http://www.gnu.org/copyleft/gpl.html">http://www.gnu.org/copyleft/gpl.html</ulink>
273   for specifics.
274   </para>
275  <para>
276   There is no warranty of any kind, expressed, implied or otherwise. That is
277   something that would cost real money ;-) There is no registration either.
278   <application>Privoxy</application> really is <emphasis>free</emphasis>
279   in every respect!
280
281  </para>
282 </sect3>
283
284 <sect3 id="jointeam"><title>I would like to help you, what do I do?</title>
285
286 <sect4 id="jointeam-money"><title>Money Money Money</title>
287 <para>
288  We, of course, welcome donations and use the money for domain registering,
289  regular world-wide get-togethers (hahaha). Anyway, we'll soon describe the
290  process how to donate money to the team.
291 </para>
292 </sect4>
293
294 <sect4 id="jointeam-work"><title>You want to work with us?</title>
295 <para>
296    Well, helping the team is always a good idea. We welcome new developers,
297    RPM gurus or documentation makers. Simply get an account on sourceforge.net
298    and mail your id to the developer mailing list. Then read the
299    section Quickstart in the developers manual.
300 </para>
301 <para>
302 Once we have added you to the team, you'll have write access to the CVS
303 repository, and together we'll find a suitable task for you.
304 </para>
305 </sect4>
306
307 </sect3>
308
309 </sect2>
310
311
312 <!--   ~~~~~       New section      ~~~~~     -->
313
314 <sect2 id="installation"><title>Installation</title>
315
316 <sect3 id="newinstall"><title>Can I install the new 
317  <application>Privoxy</application> over the old one?</title>
318  <para>
319    We recommend you uninstall the old <application>Junkbuster</application>
320    first to minimize conflicts and confusion. You may want to 
321    save your old configuration files for future reference. The configuration
322    is substantially changed.
323  </para>
324  <para>
325   See the <ulink
326   url="http://ijbswa.sourceforge.net/user-manual/">user-manual</ulink> for
327   platform specific installation instructions. [FIXME: This is meant for after
328   the name change for 3.0!]
329  </para>
330  
331 </sect3>
332
333 <sect3>
334 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything 
335 special I have to do now?</title>
336
337 <para>
338  All browsers must be told to use <application>Privoxy</application> 
339  as a proxy by specifying the correct proxy address and port number 
340  in the appropriate configuration area for the browser. See below.
341
342 </para>
343
344 </sect3>
345
346
347 <sect3 id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
348  <para>
349   If you set up the <application>Privoxy</application> to run on
350   the computer you browse from (rather than your ISP's server or some
351   networked computer on a LAN), the proxy will be on <quote>localhost</quote>
352   (which is the special name used by every computer on the Internet to refer
353   to itself) and the port will be 8118 (unless you have <application>Privoxy</application> to run on a different port with the
354   <emphasis>listen-address</emphasis> config option). 
355  </para>
356  <para>
357   When configuring your browser's proxy settings you typically enter
358   the word <quote>localhost</quote> in the boxes next to <quote>HTTP</quote>
359   and <quote>Secure</quote> (HTTPS) and then the number <quote>8118</quote>
360   for <quote>port</quote>.  This tells your browser to send all web 
361   requests to <application>Privoxy</application> instead of directly to the 
362   Interenet.
363  </para>
364  <para>
365   <application>Privoxy</application> can also be used to proxy for 
366   a Local Area Network. In this case, your would enter either the IP 
367   address of the LAN host where <application>Privoxy</application> 
368   is running, or the equivalent hostname. Port assignment would be 
369   same as above.
370  </para>
371  <para>
372   <application>Privoxy</application> does not currently handle
373   protocols such as FTP, SMTP, IM, IRC, ICQ, or other Internet
374   protocols. 
375  </para>
376 </sect3>
377
378 <sect3>
379 <title id="nothing">I just installed <application>Privoxy</application>, and nothing is happening.
380 All the ads are there. What's wrong?</title>
381
382 <para>
383  Did you configure your browser to use <application>Privoxy</application> 
384  as a proxy? It does not sound like it. See above. You might also try flushing
385  the browser's caches to force a full re-reading of pages. You can verify 
386  that <application>Privoxy</application> is running, and your browser 
387  is correctly configured by entering the special URL: 
388  <ulink url="http://p.p/">http://p.p/</ulink>. This should give you 
389  a banner that says <quote>This is Privoxy</quote> and 
390  access to <application>Privoxy's</application> internal configuration. 
391  If you see this, then you are good to go. If not, the browser or 
392  <application>Privoxy</application> are not set up correctly.
393
394 </para>
395
396 </sect3>
397
398 </sect2>
399
400
401 <!--   ~~~~~       New section      ~~~~~     -->
402
403 <sect2 id="configuration"><title>Configuration</title>
404
405 <sect3 id="newconfig"><title>Can I use my old config files?</title>
406  <para>
407    There are major changes to <application>Junkbuster</application> 
408    configuration from version 2.0.x to 2.9.x and later. The older files will
409    not work at all. If this is the case, you will need to re-enter your old
410    data into the new configuration structure. This is probably also a good 
411    recommendation even if upgrading from 2.9.x to 3.x since there were 
412    many minor changes along the way.
413  </para>
414 </sect3>
415
416 <sect3>
417 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
418
419 <para>
420  <quote>actions</quote> files are where various actions that
421  <application>Privoxy</application> might take, are configured. 
422  Typically, you would define a set of default actions that apply 
423  to all URLs, then add exceptions to these defaults.
424 </para>
425  
426 <para>
427  Actions can be defined on a per site basis, or for groups of sites. Actions
428  can also be grouped together and then applied to one or more sites. There
429  are many possible actions that might apply to any given site. As an example,
430  if we are blocking cookies as one of our default
431  <application>actions</application>, but need to accept cookies from a given
432  site, we would define this in our <quote>actions</quote> file.
433
434 </para>
435
436 <para>
437  <application>Privoxy</application> comes with several default
438  <application>actions</application> files, with varying degrees 
439  of filtering and blocking, as starting points for your own 
440  configuration (see below).
441 </para>
442
443 </sect3>
444
445 <sect3 id="actionss">
446 <title>The <quote>actions</quote>concept confuses me. Please list 
447 some of these <quote>actions</quote>.</title>
448 <para>
449  These are all explained in the 
450  <ulink url="http://ijbswa.sourceforge.net/user-manual/configuration.html#ACTIONSFILE">user-manual</ulink>.
451  Please refer to that.
452 </para>
453 </sect3>
454
455
456 <sect3>
457 <title id="actconfig">How are actions files configured? What is the easiest
458 way to do this?</title> 
459
460 <para>
461  The easiest way to do this, is to access <application>Privoxy</application>
462  with your web browser at <ulink url="http://p.p/">http://p.p/</ulink>, 
463  and then select 
464  "<ulink url="http://ijbswa.sourceforge.net/config/edit-actions">Edit the actions list</ulink>"
465  from the selection list. You can also do this by editing the appropriate 
466  file with a text editor.
467 </para>
468
469 <para>
470  Please see the 
471  <ulink
472  url="http://ijbswa.sourceforge.net/user-manual/configuration.html#ACTIONSFILE">user-manual</ulink> for a
473  detailed explanation of these and other configuration files, and their
474  various options and syntax.
475 </para>
476 </sect3>
477
478
479 <!--
480 FIXME: Commenting these out until we have some data there. HB 03/17/02.
481
482 <sect3 id="yahoo"><title>How can I make my Yahoo account work?</title>
483  <para>
484    Fillme.
485  </para>
486 </sect3>
487
488 <sect3 id="hotmail"> <title>How can I make my Hotmail account work?</title>
489   <para>
490    Fillme.
491   </para>
492 </sect3>
493
494 <sect3 id="gmx"> <title>How can I make my GMX account work?</title>
495  <para>
496    Fillme.
497  </para>
498 </sect3>
499 -->
500
501 <sect3 id="configfiles"> <title>What are the differences between
502 intermediate.action, basic.action, etc.?</title>
503  <para>
504 Configuring <application>Privoxy</application> is not easy. To help you get
505 started, we provide you with three different default configurations. The
506 following table shows you, which features are enabled in each configuration.
507  </para>
508  <para>
509 <table frame=all><title>Default Configurations</title>
510 <tgroup cols=5 align=left colsep=1 rowsep=1>
511 <colspec colname=c1>
512 <colspec colname=c2>
513 <colspec colname=c3>
514 <colspec colname=c4>
515 <colspec colname=c5>
516 <thead>
517 <row>
518   <entry>Feature</entry>
519   <entry>default.action</entry>
520   <entry>basic.action</entry>
521   <entry>intermediate.action</entry>
522   <entry>advanced.action</entry>
523 </row>
524 </thead>
525
526 <!--  <tfoot> -->
527 <!--  <row> -->
528 <!--    <entry>f1</entry> -->
529 <!--    <entry>f2</entry> -->
530 <!--    <entry>f3</entry> -->
531 <!--    <entry>f4</entry> -->
532 <!--    <entry>f5</entry> -->
533 <!--  </row> -->
534 <!--  </tfoot> -->
535
536 <tbody>
537 <!-- new row -->
538 <row>
539   <entry>ad-filtering</entry>
540   <entry>?</entry>
541   <entry>x</entry>
542   <entry>x</entry>
543   <entry>x</entry>
544 </row>
545 <!-- new row -->
546 <row>
547   <entry>blank image</entry>
548   <entry>?</entry>
549   <entry>x</entry>
550   <entry>x</entry>
551   <entry>x</entry>
552 </row>
553 <!-- new row -->
554 <row>
555   <entry>de-animate GIFs</entry>
556   <entry>?</entry>
557   <entry>x</entry>
558   <entry>x</entry>
559   <entry>x</entry>
560 </row>
561 <!-- new row -->
562 <row>
563   <entry>referer forging</entry>
564   <entry>?</entry>
565   <entry>x</entry>
566   <entry>x</entry>
567   <entry>x</entry>
568 </row>
569 <!-- new row -->
570 <row>
571   <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
572   <entry>?</entry>
573   <entry>x</entry>
574   <entry>x</entry>
575   <entry>x</entry>
576 </row>
577 <!-- new row -->
578 <row>
579   <entry>no-popup windows</entry>
580   <entry>?</entry>
581   <entry></entry>
582   <entry>x</entry>
583   <entry>x</entry>
584 </row>
585 <!-- new row -->
586 <row>
587   <entry>fast redirects</entry>
588   <entry>?</entry>
589   <entry></entry>
590   <entry>x</entry>
591   <entry>x</entry>
592 </row>
593 <!-- new row -->
594 <row>
595   <entry>hide-referrer</entry>
596   <entry>?</entry>
597   <entry></entry>
598   <entry>x</entry>
599   <entry>x</entry>
600 </row>
601 <!-- new row -->
602 <row>
603   <entry>hide-useragent</entry>
604   <entry>?</entry>
605   <entry></entry>
606   <entry>x</entry>
607   <entry>x</entry>
608 </row>
609 <!-- new row -->
610 <row>
611   <entry>content-modification</entry>
612   <entry>?</entry>
613   <entry></entry>
614   <entry></entry>
615   <entry>x</entry>
616 </row>
617 <!-- new row -->
618 <row>
619   <entry>feature-x</entry>
620   <entry>?</entry>
621   <entry></entry>
622   <entry></entry>
623   <entry></entry>
624 </row>
625 <!-- new row -->
626 <row>
627   <entry>feature-y</entry>
628   <entry>?</entry>
629   <entry></entry>
630   <entry></entry>
631   <entry></entry>
632 </row>
633 <!-- new row -->
634 <row>
635   <entry>feature-z</entry>
636   <entry>?</entry>
637   <entry></entry>
638   <entry></entry>
639   <entry></entry>
640 </row>
641 <!-- finish -->
642 </tbody>
643 </tgroup>
644 </table>
645 </para>
646 </sect3>
647
648 <sect3 id="browseconfig"> <title>Why can I change the configuration with a
649 browser? Does that not raise security issues?</title>
650  <para>
651 What I don't understand, is how I can browser edit the config file as a
652 regular user, while the whole /etc/privoxy hierarchy belongs to the user
653 "privoxy", with only 644 perms.
654  </para>
655  <para>
656 When you use the browser-based editor, <application>Privoxy</application>
657 itself is writing to the config files.  Because
658 <application>Privoxy</application> is running as the user "privoxy", it can
659 update the config files.
660  </para>
661  <para>
662 If you don't like this, setting "enable-edit-actions 0" in the config file
663 will disable the browser-based editor.  If you're that paranoid, you should
664 also consider setting "enable-remote-toggle 0" to prevent browser-based
665 enabling/disabling of <application>Privoxy</application>.
666  </para>
667  <para>
668 Note that normally only local users can connect to <application>Privoxy</application>, so this is not
669 (normally) a security problem.
670  </para>
671 </sect3>
672
673 <sect3>
674 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my 
675  LAN?</title>
676 <para>
677  By default, <application>Privoxy</application> only responds to requests 
678  from localhost. To have it act as a server for a network, this needs to be 
679  changed in the main config file where the <application>Privoxy</application>
680  configuration is located. In that file is a <quote>listen-address</quote> 
681  option. It may be commented out with a <quote>#</quote> symbol. Make sure 
682  it is uncommented, and assign it the address of the LAN gateway interface, 
683  and port number to use:
684 </para>
685
686 <para>
687  <screen>
688   listen-address  192.168.1.1:8118
689  </screen>
690 </para>
691
692 <para>
693  Save the file, and restart <application>Privoxy</application>. Configure 
694  all browsers on the network then to use this address and port number.
695 </para>
696
697 </sect3>
698
699
700 <sect3>
701 <title id="noseeum">Instead of ads, now I get a Privoxy logo [or 
702 checkerboard]. I don't want to see anything.</title>
703 <para>
704  This is a configuration option for images that
705  <application>Privoxy</application> is stopping. You have the choice of the
706  <application>Privoxy</application> logo, a checkerboard pattern (this
707  scales better), a transparent 1x1 GIF image, or a custom URL or your choice.
708 </para>
709
710 <para>
711  If you want to see nothing, then change the <quote>+image-blocker</quote> 
712  action to <quote>+image-blocker{blank}</quote>. This can be done from the 
713  <quote>Edit Actions List</quote> selection at <ulink
714  url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate 
715  actions file. This will only effect what is defined as <quote>images</quote>
716  though. 
717
718 </para>
719
720 </sect3>
721
722
723 <sect3>
724 <title id="whyseeum">Why would anybody want to see the logo or checkerboard?</title>
725 <para>
726  This can be helpful for troubleshooting problems. It might also be good 
727  for anyone new to <application>Privoxy</application> so that they can 
728  see if their favorite pages are displaying correctly, and
729  <application>Privoxy</application> is not inadvertantly removing something 
730  important.
731 </para>
732
733 </sect3>
734
735 <sect3>
736 <title id="blockedisugly">I see large red banners on some pages that say 
737 <quote>Blocked</quote>. How do I get rid of this?</title>
738 <para>
739  These are URLs that match something in one of 
740  <application>Privoxy's</application> block actions (+block). It is meant
741  to be a warning so that you know something has been blocked and an easy way
742  for you to see why. These are handled differently than what has been defined
743  as <quote>images</quote> (e.g. ad banners). If you want them to be treated
744  as if they were images, so that they can be invisible, then move the
745  offending URL from the <quote>+block</quote> section to the
746  <quote>+imageblock</quote> section of your actions file. Alternately, you
747  could modify the <quote><filename>block</filename></quote> HTML template that
748  is used by <application>Privoxy</application> to display this, and make it
749  something more to your liking.
750 </para>
751
752 </sect3>
753
754 </sect2>
755
756 <!--   ~~~~~       New section      ~~~~~     -->
757
758 <sect2 id="misc"><title>Misc</title>
759
760 <sect3>
761 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This 
762 has to add extra time to browsing.</title>
763 <para>
764  It should not slow you down any in real terms, and may actually help 
765  speed things up since ads, banners and other junk are not being displayed.
766  The actual processing time required by <application>Privoxy</application> 
767  itself for each page, is relatively small in the overall scheme of things,
768  and happens very quickly. This is typically more than offset by time saved
769  not downloading and rendering ad images.
770 </para>
771
772 <para>
773  <quote>Filtering</quote> via the <filename>filterfile</filename> 
774  mechanism may cause a perceived slowdown, since the entire page is buffered
775  before displaying. See below.
776 </para>
777
778 </sect3>
779
780
781
782 <sect3 id="loadingtimes"><title>I noticed considerable
783 delays in page requests compared to the old Junkbuster. What's wrong?</title>
784 <para>
785 Using the default filtering configuration, I noticed considerable delays in
786 page requests compared to the old Junkbuster. Loading pages with large contents
787 seemed to take forever, then suddenly delivering all the content at once.
788  </para>
789 <para>
790 The whole content must be loaded in order to filter, and nothing is is
791 sent to the browser during this time. The loading time does not really
792 change in real numbers, but the feeling is different, because most
793 browsers are able to start rendering incomplete content, giving the
794 user a feeling of "it works". 
795  </para>
796 <para>
797 To modify the content of a page (i.e. make frames resizeable again, etc.) and
798 not just replace ads, <application>Privoxy</application> needs to download the
799 entire page first, do its content magic and then send the page to the browser.
800 </para>
801 </sect3>
802
803
804 <sect3 id="configurl"><title>What is the "http://p.p/"?</title>
805 <para>
806 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
807 programmed to handle certain pages specially.
808 </para>
809
810 <para>
811 With recent versions of <application>Privoxy</application> (version 2.9.x), you can get some
812 information about <application>Privoxy</application> and change some settings by going to
813 http://p.p/ or, equivalently, http://ijbswa.sourceforge.net/config/
814 (Note that p.p is far easier to type but may not work in some
815 configurations).
816 </para>
817
818 <para>
819 These pages are *not* forwarded to a server on the internet - instead they are
820 handled by a special web server which is built in to <application>Privoxy</application>.
821 </para>
822
823 <para>
824 If you are not running <application>Privoxy</application>, then http://p.p/ will fail, and
825 http://ijbswa.sourceforge.net/config/ will return a web page telling you
826 you're not running <application>Privoxy</application>.
827 </para>
828
829 <para>
830 If you have version 2.0.2, then the equivalent is
831 http://example.com/show-proxy-args (but you get far less information, and you
832 should really consider upgrading to 2.9.x).
833 </para>
834 </sect3>
835
836 <!--
837 FIXME: commented out until we have data. HB 03/18/02.
838
839 <sect3 id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
840 <para>
841    Fillme.
842 </para>
843 </sect3>
844
845 <sect3 id="proxy-chaining"><title>How do I chain <application>Privoxy</application> with other proxies
846 (e.g. squid)?</title>
847 <para>
848    Fillme.
849 </para>
850 </sect3>
851 -->
852
853 <sect3 id="blocklist"><title>Do you still maintain the blocklists?</title>
854 <para>
855     No. The format of the blocklists has changed significantly in the versions
856     2.9.x. Once we have released the new version, there will again be
857     blocklists that you can update automatically.
858 </para>
859 </sect3>
860
861 <sect3 id="newads"><title>How can I submit new ads?</title>
862 <para>
863     As of now, please discontinue to submit new ad blocking infos. Once we
864     have released the new version, there will again be a form on the website,
865     which you can use to contribute new ads.
866 </para>
867 </sect3>
868
869 <sect3 id="ip"><title>How can I hide my IP address?</title>
870 <para>
871  You cannot hide your IP address with <application>Privoxy</application> or any other software, since
872 the server needs to know your IP address to send the answer to you.
873 </para>
874 <para>
875 Fortunately there are many publicly usable anonymous proxies out there, which
876 solve the problem by providing a further level of indirection between you and
877 the web server, shared by many people and thus letting your requests "drown"
878 in white noise of unrelated requests as far as user tracking is concerned.
879 </para>
880 <para>
881 Most of them will, however, log your IP address and make it available to the
882 authorities in case you abuse that anonymity for criminal purposes. In fact
883 you can't even rule out that some of them only exist to *collect* information
884 on (those suspicious) people with a more than average preference for privacy.
885 </para>
886 <para>
887 You can find a list of anonymous public proxies at <ulink
888 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
889 more through Google.
890 </para>
891 </sect3>
892
893 <!--  <sect3 id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
894 <!--  <para> -->
895 <!--   Anytime <application>Privoxy</application> determines (with the help of the blocklist) that a URL -->
896 <!--   contains an advertisement, it has to decide whether this advertisement is an -->
897 <!--   image or not. <application>Privoxy</application> uses the imagefile for that purpose. -->
898 <!--  </para> -->
899 <!--  </sect3> -->
900
901 <sect3>
902 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
903 <para>
904  No. Your chances of remaining anonymous are greatly improved, but unless you
905  are an expert on Internet security it would be safest to assume that
906  everything you do on the Web can be traced back to you.
907 </para>
908 <para>
909  <application>Privoxy</application> can remove various information about you,
910  and allows <emphasis>you</emphasis> more freedom  to decide which sites 
911  you can trust. But it's still possible that web sites can find out who you
912  are. Here's one way this can happen.
913 </para>
914 <para>
915  A few browsers disclose the user's email address in certain situations, such
916  as when transferring a file by FTP. <application>Privoxy</application>
917  does not filter FTP. If you need this feature, or are concerned about the
918  mail handler of your browser disclosing your email address, you might
919  consider products such as <application>NSClean</application>.
920 </para>
921 <para>
922  Browsers available only as binaries could use non-standard headers to give
923  out any information they can have access to: see the manufacturer's license
924  agreement. It's impossible to anticipate and prevent every breach of privacy
925  that might occur. The professionally paranoid prefer browsers available as
926  source code, because anticipating their behavior is easier. Trust the source,
927  Luke!
928 </para>
929
930 </sect3>
931
932 <sect3>
933 <title id="sitebreak">Might some things break because header information is
934 being altered?</title>
935
936 <para>
937  Definitely. More and more sites use HTTP header content to decide what to
938  display and how to display it. There is many ways that this can be handled, 
939  so having hard and fast rules, is tricky.
940 </para>
941
942 <para>
943  <quote>USER AGENT</quote> in particular is often used in this way to identify
944  the browser, and adjust content accordingly. Changing this now is not
945  recommended, since so many sites do look for this. You may get undesirable 
946  results by changing this.
947 </para>
948
949 <para>
950  For instance, different browsers use different encodings of Russian and Czech
951  characters, certain web servers convert pages on-the-fly according to the
952  User Agent header. Giving a <quote>User Agent</quote> with the wrong
953  operating system or browser manufacturer causes some sites in these languages
954  to be garbled; Surfers to Eastern European sites should change it to
955  something closer. And then some page access counters work by looking at the
956  <quote>REFERER</quote> header; they may fail or break if unavailable. The
957  weather maps of Intellicast have been blocked by their server when no
958  <quote>REFERER</quote> or cookie is provided, is another example. There are
959  many, many other ways things can go wrong when trying to fool a web server.
960 </para>
961
962 <para>
963  If you have problems with a site, you will have to adjust your configuration 
964  accordingly. Cookies are probably the most likely adjustment that may 
965  be required, but by no means the only one.
966
967 </para>
968
969 </sect3>
970
971
972 <sect3>
973 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to 
974 speed up web browsing?</title>
975 <para>
976  No, it does not have this ability at all. You want something like 
977  <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes, 
978  before you ask, <application>Privoxy</application> can co-exist 
979  with other kinds of proxies like <quote>Squid</quote>.
980 </para>
981 </sect3>
982
983 <sect3>
984 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
985 <para>
986  Not in the way you mean, or in the way a true firewall can, or a proxy that
987  has this specific capability. <application>Privoxy</application> can help
988  protect your privacy, but not really protect you from intrusion attempts.
989 </para>
990 </sect3>
991
992
993 <sect3>
994 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky 
995 and ugly looking. Can't a better font be used?</title>
996
997 <para>
998  This is not a font problem. The logo is an image that is created by 
999  <application>Privoxy</application> on the fly. So as to not waste 
1000  memory, the image is rather small. The blockiness comes when the 
1001  image is scaled to fill a largish area. There is not much to be done 
1002  about this, other than to use one of the other
1003  <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>, 
1004  <emphasis>blank</emphasis>, or a URL of your chosing.
1005 </para>
1006 </sect3>
1007
1008
1009 <sect3>
1010 <title id="wasted">I have large empty spaces now where ads used to be. 
1011 Why does <application>Privoxy</application> leave these large gaps?</title>
1012 <para>
1013  It would be easy enough to just eliminate this space altogether, rather than
1014  fill it with blank space. But, this would create problems with many pages
1015  that use the overall size of the ad to help organize the page layout and
1016  position the various components of the page where they were intended to be.
1017  It is best left this way.
1018 </para>
1019
1020 </sect3>
1021
1022 <sect3>
1023 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1024 <para>
1025  This is a limitation since HTTPS transactions are encrypted SSL sessions
1026  between your browser and the secure site, and are meant to be reliably 
1027  <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1028  header information are also encrypted from the time they leave your browser,
1029  to the site, and vice versa. <application>Privoxy</application> does not
1030  try to unencrypt this information, so it just passes through as is.
1031  <application>Privoxy</application> can still catch images and ads that
1032  are embedded in the SSL stream though.
1033 </para>
1034
1035 </sect3>
1036
1037
1038 <sect3>
1039 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How 
1040 secure is it? Do I need to take any special precautions?</title>
1041 <para>
1042  There are no known exploits that might effect
1043  <application>Privoxy</application>. On Unix-like systems, 
1044  <application>Privoxy</application> can run as a non-privileged 
1045  user, which is how we recommend it be run. Also, by default 
1046  <application>Privoxy</application> only listens to requests 
1047  from <quote>localhost</quote>. It is not itself directly exposed to the
1048  Internet in this configuration. If you want to have
1049  <application>Privoxy</application> serve as a LAN proxy, this will have to
1050  be opened up to allow for LAN requests. In this case, we'd recommend
1051  you specify only the LAN gateway address, e.g. 192.168.1.1 in the main 
1052  <application>Privoxy</application> config file. All LAN hosts can then use 
1053  this as their proxy address in the browser proxy configuration. In this way, 
1054  <application>Privoxy</application> will not listen on any external ports.
1055  Of course, a firewall is always good too. Better safe than sorry.
1056 </para>
1057
1058 </sect3>
1059
1060 <sect3>
1061 <title id="filterfile">What is a <quote>default.filter</quote>?</title>
1062 <para>
1063  The <quote>default.filter</quote> is used to <quote>filter</quote> any
1064  page content. By <quote>filtering</quote> we mean it can modify, remove, 
1065  or change <emphasis>anything</emphasis> on the page, including HTML tags, and
1066  JavaScript. Regular expressions are used to accomplish this. This is
1067  potentially a very powerful feature, but requires some expertise.
1068 </para>
1069
1070 <para>
1071  If you are familiar with regular expressions, and HTML, you can look at 
1072  the provided <filename>default.filter</filename> with a text editor and see
1073  some of things it can be used for.
1074 </para>
1075
1076 <para>
1077  Presently, there is no GUI editor option for this part of the configuration.
1078 </para>
1079
1080 </sect3>
1081 </sect2>
1082
1083
1084 <!--   ~~~~~       New section      ~~~~~     -->
1085
1086 <sect2>
1087 <title id="trouble">Troubleshooting</title>
1088
1089 <sect3>
1090 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1091 with every web page?</title>
1092 <para>
1093  Either <application>Privoxy</application> is not running, or your 
1094  browser is configured for a different port than what
1095  <application>Privoxy</application> is using.
1096 </para>
1097
1098 <para>
1099  The old <application>Privoxy</application> used port 8000 by 
1100  default. This has been changed to port 8118 now, due to a conflict 
1101  with NAS (Network Audio Service), which uses port 8000. If you haven't, 
1102  you need to change your browser to the new port number, or alternately 
1103  change <application>Privoxy's</application> <quote>listen-address</quote>
1104  setting in the <filename>config</filename> file used to start 
1105  <application>Privoxy</application>.
1106 </para>
1107
1108 </sect3>
1109
1110 <sect3>
1111 <title id="flushit">I just added a new rule, but the steenkin ad is 
1112 still getting through. How?</title>
1113 <para>
1114  If the ad had been displayed before you added its URL, it will probably be
1115  held in the browser's cache for some time, so it will be displayed without
1116  the need for any request to the server, and <application>Privoxy</application>
1117  will not be in the picture. The best thing to do is try flusing the browser's
1118  caches. And then try again.
1119 </para>
1120
1121 <para>
1122  If this doesn't help, you probably have an error in the rule you
1123  applied. Try pasting the full URL of the offending ad into <ulink
1124  url="http://ijbswa.sourceforge.net/config/show-url-info">http://ijbswa.sourceforge.net/config/show-url-info</ulink>
1125  and see if any actions match your new rule.
1126 </para>
1127
1128 </sect3>
1129
1130 <sect3>
1131 <title id="badsite">One of my favorite sites does not work with <application>Privoxy</application>.
1132 What can I do?</title>
1133
1134 <para>
1135  First verify that it is indeed a <application>Privoxy</application> problem, 
1136  by disabling <application>Privoxy</application> filtering and blocking. 
1137  Go to <ulink url="http://p.p/">http://p.p/</ulink> and click on 
1138  <quote>Toggle Privoxy On or Off</quote>, then disable it. Now try that 
1139  page again.
1140 </para>
1141
1142 <para>
1143  If still a problem, go to <quote>Show which actions apply to a URL and
1144  why</quote> from <ulink url="http://p.p/">http://p.p/</ulink> and paste
1145  the full URL of the page in question into the prompt. See which actions are
1146  being applied to the URL. Now, armed with this information, go to <quote>Edit
1147  the actions list</quote>. Here you should see various sections that have
1148  various <application>Privoxy</application> features disabled for specific
1149  sites. Disabled <quote>actions</quote> will have a <quote>-</quote> (minus
1150  sign) in front of them. Add your problem page URL to one of these sections
1151  that looks like it is disabling the feature that is causing the
1152  problem. Re-try the page. There might be some trial and error involved. This
1153  is discussed in a little more detail in the <ulink
1154  url="http://ijbswa.sourceforge.net/user-manual/appenix.html#ACTIONSANAT">user-manual
1155  appendix</ulink>.
1156
1157 </para>
1158
1159 <para>
1160  Alternately, if you are comfortable with a text editor, you can accomplish 
1161  the same thing by editing the appropriate <quote>actions</quote> file.
1162 </para>
1163
1164 </sect3>
1165
1166 <sect3>
1167 <title id="time">What time is it?</title>
1168 <para>
1169  Time for you to go!
1170 </para>
1171 </sect3>
1172
1173 </sect2>
1174
1175 </sect1>
1176
1177
1178 <!--   ~~~~~       New section      ~~~~~     -->
1179 <!--
1180 FIXME: Commented out until we have something to put here. HB 03/18/02.
1181 <sect1 id="knownissues"><title>Known Issues</title>
1182 <para>
1183    Fillme.
1184 </para>
1185 </sect1>
1186 -->
1187 <!--   ~~~~~       New section      ~~~~~     -->
1188 <sect1 id="contact"><title>Contact the developers</title>
1189 <para>Please see the user manual for information on how to contact the developers.
1190 </para>
1191 </sect1>
1192
1193 <!--   ~~~~~       New section      ~~~~~     -->
1194 <sect1 id="copyright"><title>Copyright and History</title>
1195 <para>Please see the user manual for information on Copyright and History.
1196 </para>
1197 </sect1>
1198
1199 <!--   ~~~~~       New section      ~~~~~     -->
1200 <sect1 id="seealso"><title>See also</title>
1201 <para>Please see the user manual for information on references.
1202 </para>
1203 </sect1>
1204
1205 <!-- hhmts end -->
1206  <!--
1207  Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
1208  
1209  Last modified: Mon Sep 10 19:22:09 CEST 2001
1210  
1211  This program is free software; you can redistribute it 
1212  and/or modify it under the terms of the GNU General
1213  Public License as published by the Free Software
1214  Foundation; either version 2 of the License, or (at
1215  your option) any later version.
1216
1217  This program is distributed in the hope that it will
1218  be useful, but WITHOUT ANY WARRANTY; without even the
1219  implied warranty of MERCHANTABILITY or FITNESS FOR A
1220  PARTICULAR PURPOSE.  See the GNU General Public
1221  License for more details.
1222
1223  The GNU General Public License should be included with
1224  this file.  If not, you can view it at
1225  http://www.gnu.org/copyleft/gpl.html
1226  or write to the Free Software Foundation, Inc., 59
1227  Temple Place - Suite 330, Boston, MA  02111-1307, USA.
1228
1229 $Log: faq.sgml,v $
1230 Revision 1.23  2002/03/24 12:33:01  swa
1231 more additions.
1232
1233 Revision 1.22  2002/03/24 11:51:00  swa
1234 name change. changed filenames.
1235
1236 Revision 1.21  2002/03/24 11:01:06  swa
1237 name change
1238
1239 Revision 1.20  2002/03/23 15:13:11  swa
1240 renamed every reference to the old name with foobar.
1241 fixed "application foobar application" tag, fixed
1242 "the foobar" with "foobar". left junkbustser in cvs
1243 comments and remarks to history untouched.
1244
1245 Revision 1.19  2002/03/21 17:01:54  hal9
1246 Some touch ups.
1247
1248 Revision 1.18  2002/03/18 16:40:31  hal9
1249 More additions.
1250
1251 Revision 1.17  2002/03/18 03:53:53  hal9
1252 Some new additions.
1253
1254 Revision 1.16  2002/03/17 21:32:56  hal9
1255 A few more additions.
1256
1257 Revision 1.15  2002/03/17 07:25:59  hal9
1258 Correcting some of my typos, and some additions.
1259
1260 Revision 1.14  2002/03/17 02:39:13  hal9
1261 A little more added ...
1262
1263 Revision 1.13  2002/03/17 00:22:20  hal9
1264 Adding new stuff, and trying to incorporate stuff from old faq.
1265
1266 Revision 1.12  2002/03/11 20:13:21  swa
1267 typo
1268
1269 Revision 1.11  2002/03/11 18:42:27  swa
1270 new section
1271
1272 Revision 1.10  2002/03/11 13:13:27  swa
1273 correct feedback channels
1274
1275 Revision 1.9  2002/03/10 23:34:04  swa
1276 more info on not hiding ip address
1277
1278 Revision 1.8  2002/03/09 15:55:48  swa
1279 added default config section
1280
1281 Revision 1.7  2002/03/07 18:16:55  swa
1282 looks better
1283
1284 Revision 1.6  2002/03/07 13:16:31  oes
1285 Committing changes by Stefan
1286
1287 Revision 1.5  2002/03/02 15:50:04  swa
1288 2.9.11 version. more input for docs.
1289
1290 Revision 1.4  2002/02/24 14:34:24  jongfoster
1291 Formatting changes.  Now changing the doctype to DocBook XML 4.1
1292 will work - no other changes are needed.
1293
1294 Revision 1.3  2001/09/23 10:13:48  swa
1295 upload process established. run make webserver and
1296 the documentation is moved to the webserver. documents
1297 are now linked correctly.
1298
1299 Revision 1.2  2001/09/13 15:20:17  swa
1300 merged standards into developer manual
1301
1302 Revision 1.1  2001/09/12 15:36:41  swa
1303 source files for junkbuster documentation
1304
1305 Revision 1.3  2001/09/10 17:43:59  swa
1306 first proposal of a structure.
1307
1308 Revision 1.2  2001/06/13 14:28:31  swa
1309 docs should have an author.
1310
1311 Revision 1.1  2001/06/13 14:20:37  swa
1312 first import of project's documentation for the webserver.
1313
1314 -->
1315
1316 </article>