1 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN"[
2 <!entity % dummy "INCLUDE">
3 <!entity supported SYSTEM "supported.sgml">
4 <!entity newfeatures SYSTEM "newfeatures.sgml">
5 <!entity p-intro SYSTEM "privoxy.sgml">
6 <!entity seealso SYSTEM "seealso.sgml">
9 File : $Source: /cvsroot/ijbswa/current/doc/source/faq.sgml,v $
12 This file belongs into
13 ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
15 $Id: faq.sgml,v 1.39 2002/04/03 03:53:03 hal9 Exp $
17 Written by and Copyright (C) 2001 the SourceForge
18 Privoxy team. http://www.privoxy.org/
20 Based on the Internet Junkbuster originally written
21 by and Copyright (C) 1997 Anonymous Coders and
22 Junkbusters Corporation. http://www.junkbusters.com
24 <Qandaset defaultlabel='qanda'>
42 <article id="index" class="faq">
44 <title>Privoxy Frequently Asked Questions</title>
46 <pubdate>$Id: faq.sgml,v 1.39 2002/04/03 03:53:03 hal9 Exp $</pubdate>
51 <orgname>By: Privoxy Developers</orgname>
60 This is here to keep vim syntax file from breaking :/
61 If I knew enough to fix it, I would.
62 PLEASE DO NOT REMOVE! HB: hal@foobox.net
67 This FAQ gives users and developers alike answers to frequently asked
68 questions about <ulink url="http://www.privoxy.org">Privoxy</ulink>.
72 Include privoxy.sgml boilerplate:
77 You can find the latest version of the document at <ulink
78 url="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/</ulink>.
79 Please see the Contact section in the <ulink
80 url="../user-manual/contact.html">user-manual</ulink> if
81 you want to contact the developers.
85 <!-- Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
90 <!-- ~~~~~ New section ~~~~~ -->
91 <sect1 id="intro" label=""><title></title>
92 <!-- dummy section to force TOC on page by itself -->
93 <!-- DO NOT REMOVE! please ;) -->
97 <!-- ~~~~~ New section ~~~~~ -->
99 <sect1 label="1" id="general"><title>General Information</title>
101 <sect2 renderas="sect3" id="newjb"><title>What is this new version of <application>Privoxy</application>?</title>
103 The original <application><trademark>Internet
104 Junkbuster</trademark></application> (tm) is a copyrighted product of <ulink
105 url="http://www.junkbusters.com">Junkbusters Corporation</ulink>.
106 Development of this effort stopped some time ago as of version 2.0.2. Stefan
107 Waldherr started the ijbswa project on <ulink
108 url="http://sourceforge.net/projects/ijbswa/">Sourceforge</ulink> to
109 rekindle development. Other developers subsequently joined with Stefan, and
110 have since added many new features, refinements and enhancements. The result
111 of this effort is <application>Privoxy</application>.
114 <application>Privoxy</application> has evolved from the
115 <application>Junkbuster 2.0.2</application> code base, and has advanced
116 significantly at this point.
119 Please see the <ulink
120 url="../user-manual/copyright.html#HISTORY">user-manual</ulink> for more
121 information on the history of <application>Junkbuster</application> and
122 <application>Privoxy</application>.
128 <sect2 renderas="sect3">
129 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why a name change at all?</title>
131 <application>Privoxy</application> is the
132 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>.
135 There are potential legal complications from the continued use of the
136 <application>Junkbuster</application> name, which is a trademark of
137 <ulink url="http://junkbusters.com">Junkbusters Corporation</ulink>.
138 (There are, however, no objections from Junkbusters Corporation to the
139 <application>Privoxy</application> project itself, and they, in fact, still
140 share our ideals and goals.)
144 The developers also believed that there are so many changes from the original
145 code, that it was time to make a clean break from the past and make
146 a name in their own right, especially now with the pending release of
152 <sect2 renderas="sect3" id="differs"><title>How does <application>Privoxy</application> differ
153 from the old <application>Junkbuster?</application></title>
155 <application>Privoxy</application> picks up where
156 <application>Junkbuster</application> left off. All the old features remain.
157 The new <application>Privoxy</application> still blocks ads and banners,
158 still manages cookies, and still helps protect your privacy. But, these are
159 all enhanced, and many new features have been added, all in the same vein.
162 The configuration has changed significantly as well. This is something that
163 users will notice right off the bat. The <quote>blocklist</quote> file does
164 not exist any more. This is replaced by <quote>actions</quote> files, such
165 as <filename>default.actions</filename>. This is where most of the per site
166 configuration is now.
170 <sect2 renderas="sect3" id="features"><title>What are some of the new features?</title>
172 Include newfeatures.sgml
178 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
179 <application>Privoxy</application> work? </title>
181 When you connect to a web site with <application>Privoxy</application>,
182 you are really connecting to your locally running version of
183 <application>Privoxy</application>. <application>Privoxy</application>
184 intercepts your requests for the web page, and relays that to the
185 <quote>real</quote> web site. The web site sends the HTTP data stream
186 back to <application>Privoxy</application>, where
187 <application>Privoxy</application> can work its magic before it
188 relays this data back to your web browser.
192 Since <application>Privoxy</application> sits between you and the
193 WWW, it is in a position to intercept and completely manage all web traffic and
194 HTTP content before it gets to your browser.
195 <application>Privoxy</application> uses various programming methods to do
196 this, all of which is under your control via the various configuration
201 There are many kinds of proxies. <application>Privoxy</application> best
202 fits the <quote>filtering proxy</quote> category.
208 <sect2 renderas="sect3">
209 <title id="knows">How does <application>Privoxy</application> know what is
210 an ad, and what is not?</title>
212 <application>Privoxy</application> processes all the raw content of every
213 web page. So it reads everything on each page. It then compares this to the
214 rules as set up in the configuration files, and looks for any matches to
215 these rules. <application>Privoxy</application> makes heavy use of
216 <quote>regular expressions</quote>. (If you are not familiar with regular
217 expressions, it is explained briefly in <ulink
218 url="../user-manual/appendix.html">the user manual</ulink>.) Regular
219 expressions facilitate matching of one text string against another, using
220 wildcards to build complex patterns. So <application>Privoxy</application>
221 will typically look for URLs and other content that match certain key words
222 and expressions as defined in the configuration files. For instance a URL
223 that contains <quote>/banners</quote>, has a high probability of containing
224 ad banners, and thus would be a prime candidate to have a matching rule.
227 So <application>Privoxy</application> will look for these kinds of obvious
228 looking culprits. And also, will use lists of known organizations that
229 specialize in ads. Again, using complex patterns to match as many potential
230 combinations as possible since there tend to be many, many variations used by
231 advertisers, and new ones are being introduced all the time.
235 <sect2 renderas="sect3">
236 <title id="mistakes">Can <application>Privoxy</application> make mistakes?
237 This does not sound very scientific.</title>
239 Actually, it's a black art ;-) And yes, it is always possible to have a broad rule
240 accidentally block something by mistake. There is a good chance you may run
241 into such a situation at some point. It is tricky writing rules to cover
242 every conceivable possibility, and not occasionally get false positives.
246 But this should not be a big concern since the
247 <application>Privoxy</application> configuration is very flexible, and
248 includes tools to help identify these types of situations so they can be
249 addressed as needed, allowing you to customize your installation.
250 (<link linkend="badsite">See the Troubleshooting section below</link>.)
256 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
257 <application>Privoxy</application>. Why should I use
258 <application>Privoxy</application> at all?</title>
260 Modern browsers do indeed have <emphasis>some</emphasis> of the same
261 functionality as <application>Privoxy</application>. Maybe this is
262 adequate for you. But <application>Privoxy</application> is much more
263 versatile and powerful, and can do a number of things that browsers just can't.
266 In addition, a proxy is good choice if you use multiple browsers, or
267 have a LAN with multiple computers. This way all the configuration
268 is in one place, and you don't have to maintain a similar configuration
269 for possibly many browsers.
276 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
277 warranty? Registration?</title>
279 <application>Privoxy</application> is licensed under the
280 GNU General Public License (GPL). It is free to use, copy,
281 modify or distribute as you wish under the terms of this license.
283 <ulink url="../user-manual/copyright.html#HISTORY">user-manual</ulink> for
284 more information on the license and copyright.
288 There is no warranty of any kind, expressed, implied or otherwise. That is
289 something that would cost real money ;-) There is no registration either.
290 <application>Privoxy</application> really is <emphasis>free</emphasis>
297 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what do I do?</title>
299 <sect3 renderas="sect4" id="jointeam-money"><title>Money Money Money</title>
301 We, of course, welcome donations and use the money for domain registering,
302 regular world-wide get-togethers (hahaha). Anyway, we'll soon describe the
303 process how to donate money to the team.
307 <sect3 renderas="sect4" id="jointeam-work"><title>You want to work with us?</title>
309 Well, helping the team is always a good idea. We welcome new developers,
310 RPM gurus or documentation makers. Simply get an account on sourceforge.net
311 and mail your id to the developer mailing list. Then read the
312 section Quickstart in the <ulink url="../developer-manual/quickstart.html">
313 Developer's Manual</ulink>.
316 Once we have added you to the team, you'll have write access to the CVS
317 repository, and together we'll find a suitable task for you.
326 <!-- ~~~~~ New section ~~~~~ -->
328 <sect1 label="2" id="installation"><title>Installation</title>
330 <sect2 renderas="sect3" id="whichbrowsers">
331 <title>Which browsers are supported by <application>Privoxy</application>?</title>
333 Any browser that can be configured to use a <quote>proxy</quote>, which
334 should be virtually all browsers. Direct browser support is not necessary
335 since <application>Privoxy</application> runs as a separate application and
336 just exchanges standard HTML data with your browser, just like a web server
341 <sect2 renderas="sect3" id="whichos">
342 <title>Which operating systems are supported?</title>
344 Include supported.sgml here:
349 <sect2 renderas="sect3" id="newinstall"><title>Can I install
350 <application>Privoxy</application> over <application>Junkbuster</application>?</title>
352 We recommend you uninstall <application>Junkbuster</application>
353 first to minimize conflicts and confusion. You may want to
354 save your old configuration files for future reference. The configuration
355 is substantially changed.
359 url="../user-manual/index.html">user-manual</ulink> for
360 platform specific installation instructions. [FIXME: This is meant for after
361 the name change for 3.0!]
364 Note: Some installers may automatically uninstall
365 <application>Junkbuster</application>, if present!
370 <sect2 renderas="sect3">
371 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything
372 special I have to do now?</title>
375 All browsers must be told to use <application>Privoxy</application>
376 as a proxy by specifying the correct proxy address and port number
377 in the appropriate configuration area for the browser. See below.
378 Also, you should flush your browser's memory and disk cache to get rid of any
386 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
388 If you set up the <application>Privoxy</application> to run on
389 the computer you browse from (rather than your ISP's server or some
390 networked computer on a LAN), the proxy will be on <quote>localhost</quote>
391 (which is the special name used by every computer on the Internet to refer
392 to itself) and the port will be 8118 (unless you have <application>Privoxy</application> to run on a different port with the
393 <emphasis>listen-address</emphasis> config option).
396 When configuring your browser's proxy settings you typically enter
397 the word <quote>localhost</quote> in the boxes next to <quote>HTTP</quote>
398 and <quote>Secure</quote> (HTTPS) and then the number <quote>8118</quote>
399 for <quote>port</quote>. This tells your browser to send all web
400 requests to <application>Privoxy</application> instead of directly to the
404 <application>Privoxy</application> can also be used to proxy for
405 a Local Area Network. In this case, your would enter either the IP
406 address of the LAN host where <application>Privoxy</application>
407 is running, or the equivalent hostname. Port assignment would be
411 <application>Privoxy</application> does not currently handle
412 protocols such as FTP, SMTP, IM, IRC, ICQ, or other Internet
417 <sect2 renderas="sect3">
418 <title id="nothing">I just installed <application>Privoxy</application>, and nothing is happening.
419 All the ads are there. What's wrong?</title>
422 Did you configure your browser to use <application>Privoxy</application>
423 as a proxy? It does not sound like it. See above. You might also try flushing
424 the browser's caches to force a full re-reading of pages. You can verify
425 that <application>Privoxy</application> is running, and your browser
426 is correctly configured by entering the special URL:
427 <ulink url="http://p.p/">http://p.p/</ulink>. This should give you
428 a banner that says <quote>This is Privoxy</quote> and
429 access to <application>Privoxy's</application> internal configuration.
430 If you see this, then you are good to go. If not, the browser or
431 <application>Privoxy</application> are not set up correctly.
440 <!-- ~~~~~ New section ~~~~~ -->
442 <sect1 label="3" id="configuration"><title>Configuration</title>
444 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
446 There are major changes to <application>Junkbuster</application>/
447 <application>Privoxy</application> configuration from version 2.0.x to
448 2.9.x and later. Most of the older files will not work at all. This is
449 especially true of <filename>blocklist</filename>. If this is the case, you
450 will need to re-enter your old data into the new configuration structure.
451 This is probably also a good recommendation even if upgrading from 2.9.x to
452 3.x since there were many minor changes along the way.
456 <sect2 renderas="sect3">
457 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
460 <quote>actions</quote> files are where various actions that
461 <application>Privoxy</application> might take, are configured.
462 Typically, you would define a set of default actions that apply
463 to all URLs, then add exceptions to these defaults.
467 Actions can be defined on a per site basis, or for groups of sites. Actions
468 can also be grouped together and then applied to one or more sites. There
469 are many possible actions that might apply to any given site. As an example,
470 if we are blocking cookies as one of our default
471 <application>actions</application>, but need to accept cookies from a given
472 site, we would define this in our <quote>actions</quote> file.
477 <application>Privoxy</application> comes with several default
478 <application>actions</application> files, with varying degrees
479 of filtering and blocking, as starting points for your own
480 configuration (see below).
485 <sect2 renderas="sect3" id="actionss">
486 <title>The <quote>actions</quote> concept confuses me. Please list
487 some of these <quote>actions</quote>.</title>
489 These are all explained in the
490 <ulink url="../user-manual/configuration.html#ACTIONSFILE">user-manual</ulink>.
491 Please refer to that.
496 <sect2 renderas="sect3">
497 <title id="actconfig">How are actions files configured? What is the easiest
498 way to do this?</title>
501 The easiest way to do this, is to access <application>Privoxy</application>
502 with your web browser at <ulink url="http://p.p/">http://p.p/</ulink>,
504 "<ulink url="http://config.privoxy.org">Edit the actions list</ulink>"
505 from the selection list. You can also do this by editing the appropriate
506 file with a text editor.
512 url="../user-manual/configuration.html#ACTIONSFILE">user-manual</ulink> for a
513 detailed explanation of these and other configuration files, and their
514 various options and syntax.
520 FIXME: Commenting these out until we have some data there. HB 03/17/02.
522 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo account work?</title>
528 <sect2 renderas="sect3" id="hotmail"> <title>How can I make my Hotmail account work?</title>
534 <sect2 renderas="sect3" id="gmx"> <title>How can I make my GMX account work?</title>
541 <sect2 renderas="sect3" id="configfiles"> <title>What are the differences between
542 intermediate.action, basic.action, etc.?</title>
544 Configuring <application>Privoxy</application> is not easy. To help you get
545 started, we provide you with three different default configurations. The
546 following table shows you, which features are enabled in each configuration.
549 <table frame=all><title>Default Configurations</title>
550 <tgroup cols=5 align=left colsep=1 rowsep=1>
558 <entry>Feature</entry>
559 <entry>default.action</entry>
560 <entry>basic.action</entry>
561 <entry>intermediate.action</entry>
562 <entry>advanced.action</entry>
568 <!-- <entry>f1</entry> -->
569 <!-- <entry>f2</entry> -->
570 <!-- <entry>f3</entry> -->
571 <!-- <entry>f4</entry> -->
572 <!-- <entry>f5</entry> -->
579 <entry>ad-filtering</entry>
587 <entry>blank image</entry>
595 <entry>de-animate GIFs</entry>
603 <entry>referer forging</entry>
611 <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
619 <entry>no-popup windows</entry>
627 <entry>fast redirects</entry>
635 <entry>hide-referrer</entry>
643 <entry>hide-useragent</entry>
651 <entry>content-modification</entry>
659 <entry>feature-x</entry>
667 <entry>feature-y</entry>
675 <entry>feature-z</entry>
688 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration with a
689 browser? Does that not raise security issues?</title>
691 What I don't understand, is how I can browser edit the config file as a
692 regular user, while the whole <filename>/etc/privoxy</filename> hierarchy
693 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
696 When you use the browser-based editor, <application>Privoxy</application>
697 itself is writing to the config files. Because
698 <application>Privoxy</application> is running as the user <quote>privoxy</quote>, it can
699 update the config files.
702 If you don't like this, setting <quote>enable-edit-actions 0</quote> in the
703 config file will disable the browser-based editor. If you're that paranoid,
704 you should also consider setting <quote>enable-remote-toggle 0</quote> to prevent
705 browser-based enabling/disabling of <application>Privoxy</application>.
708 Note that normally only local users can connect to
709 <application>Privoxy</application>, so this is not (normally) a security
715 <sect2 renderas="sect3">
716 <title id="filterfile">What is <quote>default.filter</quote>?</title>
718 The <quote>default.filter</quote> file is used to <quote>filter</quote> any
719 web page content. By <quote>filtering</quote> we mean it can modify, remove,
720 or change <emphasis>anything</emphasis> on the page, including HTML tags, and
721 JavaScript. Regular expressions are used to accomplish this, and operate
722 on a line by line basis. This is potentially a very powerful feature, but
723 requires some expertise.
727 If you are familiar with regular expressions, and HTML, you can look at
728 the provided <filename>default.filter</filename> with a text editor and see
729 some of things it can be used for.
733 Presently, there is no GUI editor option for this part of the configuration,
734 but you can disable/enable various sections of the included default
735 file with the <quote>Actions List Editor</quote> from your browser.
740 <sect2 renderas="sect3">
741 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
744 By default, <application>Privoxy</application> only responds to requests
745 from localhost. To have it act as a server for a network, this needs to be
746 changed in the main config file where the <application>Privoxy</application>
747 configuration is located. In that file is a <quote>listen-address</quote>
748 option. It may be commented out with a <quote>#</quote> symbol. Make sure
749 it is uncommented, and assign it the address of the LAN gateway interface,
750 and port number to use:
755 listen-address 192.168.1.1:8118
760 Save the file, and restart <application>Privoxy</application>. Configure
761 all browsers on the network then to use this address and port number.
767 <sect2 renderas="sect3">
768 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
770 This is a configuration option for images that
771 <application>Privoxy</application> is stopping. You have the choice <!-- of
772 the --> <!-- <application>Privoxy</application> logo, --> of a checkerboard
773 pattern, a transparent 1x1 GIF image (aka <quote>blank</quote>), or a custom
774 URL of your choice. Note that to fit this category, the URL must match both
775 the <quote>+image</quote> and <quote>+block</quote> actions.
779 If you want to see nothing, then change the <quote>+image-blocker</quote>
780 action to <quote>+image-blocker{blank}</quote>. This can be done from the
781 <quote>Edit Actions List</quote> selection at <ulink
782 url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate
783 actions file. This will only effect what is defined as <quote>images</quote>
784 though. Also, some URLs that generate the bright red <quote>Blocked</quote>
785 banner, can be moved to the <quote>+image-blocker</quote> section for the
786 same reason, but there are some limits and risks to this (see below).
792 <sect2 renderas="sect3">
793 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
795 This can be helpful for troubleshooting problems. It might also be good
796 for anyone new to <application>Privoxy</application> so that they can
797 see if their favorite pages are displaying correctly, and
798 <application>Privoxy</application> is not inadvertently removing something
804 <sect2 renderas="sect3">
805 <title id="blockedisugly">I see large red banners on some pages that say
806 <quote>Blocked</quote>. Why and how do I get rid of this?</title>
808 These are URLs that match something in one of
809 <application>Privoxy's</application> block actions (+block). It is meant
810 to be a warning so that you know something has been blocked and an easy way
811 for you to see why. These are handled differently than what has been defined
812 explicitly as <quote>images</quote> (e.g. ad banners). Depending on the
813 URL itself, it is sometimes hard for <application>Privoxy</application> to
814 really know whether there is indeed an ad image there or not. And there are
815 limitations as to what <application>Privoxy</application> can do to
816 <quote>fool</quote> the browser.
820 For instance, if the ad is in a frame, then it is embedded in the separate
821 HTML page used for the frame. In this case, you cannot just substitute an
822 aribitray image (like we would for a <quote>blank</quote> image), for an HTML
823 page. The browser is expecting an HTML page, and that is what it must have
824 for frames. So this situation can be a little trickier to deal with, and
825 <application>Privoxy</application> will use the <quote>Blocked</quote> page.
829 If you want these to be treated as if they were images, so that they can be
830 made invisible, you can try moving the offending URL from the
831 <quote>+block</quote> section to the <quote>+imageblock</quote> section of
832 your actions file. Just be forewarned, if any URL is made
833 <quote>invisible</quote>, you may not have any inkling that something has
834 been removed from that page, or why. If this approach does not work, then you are
835 probably dealing with a frame (or <quote>ilayer</quote>), and the only thing
836 that can go there is an HTML page of some sort.
839 To deal with this situation, you could modify the
840 <quote><filename>block</filename></quote> HTML template that is used by
841 <application>Privoxy</application> to display this, and make it something
842 more to your liking. Currently, there is no configuration option for this.
843 You will have to modify, or create your own page, and use this to replace
844 <filename>templates/blocked</filename>, which is what
845 <application>Privoxy</application> uses to display the <quote>Blocked</quote>
849 Another way to deal with this is find why and where
850 <application>Privoxy</application> is blocking the frame, and
851 diable this. Then let the <quote>+image-blocker</quote> action
852 handle the ad that is embedded in the frame's HTML page.
857 <sect2 renderas="sect3" id="alliseeisred">
858 <title>I cannot see all of the <quote>Blocked</quote> page banner. All I
859 see is a bright red square.</title>
861 There is not enough space to fit the entire page. Try right clicking on the
862 visible, red portion, and select <quote>Show Frame</quote>, or equivalent.
863 This will usually allow you to see the entire Privoxy <quote>Blocked</quote>
864 page, and from there you can see just what is being blocked, and why.
868 <sect2 renderas="sect3" id="otherproxy">
869 <title>How can I make <application>Privoxy</application> work with other
870 proxies like <application>Squid</application>?</title>
872 This can be done. See the <ulink
873 url="../user-manual/configuration.html#FORWARDING">user manual</ulink>,
874 which describes how to do this.
882 <!-- ~~~~~ New section ~~~~~ -->
884 <sect1 label="4"id="misc"><title>Miscellaneous</title>
886 <sect2 renderas="sect3">
887 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
888 has to add extra time to browsing.</title>
890 It should not slow you down any in real terms, and may actually help
891 speed things up since ads, banners and other junk are not being displayed.
892 The actual processing time required by <application>Privoxy</application>
893 itself for each page, is relatively small in the overall scheme of things,
894 and happens very quickly. This is typically more than offset by time saved
895 not downloading and rendering ad images.
899 <quote>Filtering</quote> via the <filename>filterfile</filename>
900 mechanism may cause a perceived slowdown, since the entire page is buffered
901 before displaying. See below.
908 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
909 delays in page requests compared to the old Junkbuster. What's wrong?</title>
911 Using the default filtering configuration, I noticed considerable delays in
912 page requests compared to the old Junkbuster. Loading pages with large contents
913 seemed to take forever, then suddenly delivering all the content at once.
916 The whole content must be loaded in order to filter, and nothing is is
917 sent to the browser during this time. The loading time does not really
918 change in real numbers, but the feeling is different, because most
919 browsers are able to start rendering incomplete content, giving the
920 user a feeling of "it works".
923 To modify the content of a page (i.e. make frames resizeable again, etc.) and
924 not just replace ads, <application>Privoxy</application> needs to download the
925 entire page first, do its content magic and then send the page to the browser.
930 <sect2 renderas="sect3" id="configurl"><title>What is the "http://p.p/"?</title>
932 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
933 programmed to handle certain pages specially.
937 With recent versions of <application>Privoxy</application> (version 2.9.x), you can get some
938 information about <application>Privoxy</application> and change some settings by going to
939 <ulink url="http://p.p/">http://p.p/</ulink> or, equivalently, <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
940 (Note that p.p is far easier to type but may not work in some
941 configurations. With the name change to <application>Privoxy</application>,
942 this is changed from the previous http://i.j.b/ or earlier 2.9.x versions).
946 These pages are <emphasis>not</emphasis> forwarded to a server on the Internet
947 - instead they are handled by a special web server which is built in to
948 <application>Privoxy</application>.
952 If you are not running <application>Privoxy</application>, then <ulink
953 url="http://p.p/">http://p.p/</ulink> will fail, and <ulink
954 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> will
955 return a web page telling you you're not running
956 <application>Privoxy</application>.
960 If you have version 2.0.2, then the equivalent is
961 http://example.com/show-proxy-args (but you get far less information, and you
962 should really consider upgrading to 2.9.x).
967 FIXME: commented out until we have data. HB 03/18/02.
969 <sect2 renderas="sect3" id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
975 <sect2 renderas="sect3" id="proxy-chaining"><title>How do I chain <application>Privoxy</application> with other proxies
976 (e.g. squid)?</title>
983 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
985 No. The format of the blocklists has changed significantly in the versions
986 2.9.x. Once we have released the new stable version, v3.0, there will
987 again be blocklists that you can update automatically.
991 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads?</title>
993 As of now, please discontinue to submit new ad blocking infos. Once we
994 have released the new version, there will again be a form on the website,
995 which you can use to contribute new ads.
999 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1001 You cannot hide your IP address with <application>Privoxy</application> or any other software, since
1002 the server needs to know your IP address to send the answer to you.
1005 Fortunately there are many publicly usable anonymous proxies out there, which
1006 solve the problem by providing a further level of indirection between you and
1007 the web server, shared by many people and thus letting your requests "drown"
1008 in white noise of unrelated requests as far as user tracking is concerned.
1011 Most of them will, however, log your IP address and make it available to the
1012 authorities in case you abuse that anonymity for criminal purposes. In fact
1013 you can't even rule out that some of them only exist to *collect* information
1014 on (those suspicious) people with a more than average preference for privacy.
1017 You can find a list of anonymous public proxies at <ulink
1018 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
1019 more through Google.
1023 <!-- <sect2 renderas="sect3" id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
1025 <!-- Anytime <application>Privoxy</application> determines (with the help of the blocklist) that a URL -->
1026 <!-- contains an advertisement, it has to decide whether this advertisement is an -->
1027 <!-- image or not. <application>Privoxy</application> uses the imagefile for that purpose. -->
1031 <sect2 renderas="sect3">
1032 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1034 No. Your chances of remaining anonymous are greatly improved, but unless you
1035 are an expert on Internet security it would be safest to assume that
1036 everything you do on the Web can be traced back to you.
1039 <application>Privoxy</application> can remove various information about you,
1040 and allows <emphasis>you</emphasis> more freedom to decide which sites
1041 you can trust. But it's still possible that web sites can find out who you
1042 are. Here's one way this can happen.
1045 A few browsers disclose the user's email address in certain situations, such
1046 as when transferring a file by FTP. <application>Privoxy</application>
1047 does not filter FTP. If you need this feature, or are concerned about the
1048 mail handler of your browser disclosing your email address, you might
1049 consider products such as <application>NSClean</application>.
1052 Browsers available only as binaries could use non-standard headers to give
1053 out any information they can have access to: see the manufacturer's license
1054 agreement. It's impossible to anticipate and prevent every breach of privacy
1055 that might occur. The professionally paranoid prefer browsers available as
1056 source code, because anticipating their behavior is easier. Trust the source,
1062 <sect2 renderas="sect3">
1063 <title id="sitebreak">Might some things break because header information is
1064 being altered?</title>
1067 Definitely. More and more sites use HTTP header content to decide what to
1068 display and how to display it. There is many ways that this can be handled,
1069 so having hard and fast rules, is tricky.
1073 <quote>USER AGENT</quote> in particular is often used in this way to identify
1074 the browser, and adjust content accordingly. Changing this now is not
1075 recommended, since so many sites do look for this. You may get undesirable
1076 results by changing this.
1080 For instance, different browsers use different encodings of Russian and Czech
1081 characters, certain web servers convert pages on-the-fly according to the
1082 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1083 operating system or browser manufacturer causes some sites in these languages
1084 to be garbled; Surfers to Eastern European sites should change it to
1085 something closer. And then some page access counters work by looking at the
1086 <quote>REFERER</quote> header; they may fail or break if unavailable. The
1087 weather maps of Intellicast have been blocked by their server when no
1088 <quote>REFERER</quote> or cookie is provided, is another example. There are
1089 many, many other ways things can go wrong when trying to fool a web server.
1093 If you have problems with a site, you will have to adjust your configuration
1094 accordingly. Cookies are probably the most likely adjustment that may
1095 be required, but by no means the only one.
1102 <sect2 renderas="sect3">
1103 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1104 speed up web browsing?</title>
1106 No, it does not have this ability at all. You want something like
1107 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1108 before you ask, <application>Privoxy</application> can co-exist
1109 with other kinds of proxies like <application>Squid</application>.
1113 <sect2 renderas="sect3">
1114 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1116 Not in the way you mean, or in the way a true firewall can, or a proxy that
1117 has this specific capability. <application>Privoxy</application> can help
1118 protect your privacy, but not really protect you from intrusion attempts.
1123 <sect2 renderas="sect3">
1124 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky
1125 and ugly looking. Can't a better font be used?</title>
1128 This is not a font problem. The logo is an image that is created by
1129 <application>Privoxy</application> on the fly. So as to not waste
1130 memory, the image is rather small. The blockiness comes when the
1131 image is scaled to fill a largish area. There is not much to be done
1132 about this, other than to use one of the other
1133 <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>,
1134 <emphasis>blank</emphasis>, or a URL of your choosing.
1137 Given the above problem, we have decided to remove the logo option entirely
1143 <sect2 renderas="sect3">
1144 <title id="wasted">I have large empty spaces now where ads used to be.
1147 It would be easy enough to just eliminate this space altogether, rather than
1148 fill it with blank space. But, this would create problems with many pages
1149 that use the overall size of the ad to help organize the page layout and
1150 position the various components of the page where they were intended to be.
1151 It is best left this way.
1156 <sect2 renderas="sect3">
1157 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1159 This is a limitation since HTTPS transactions are encrypted SSL sessions
1160 between your browser and the secure site, and are meant to be reliably
1161 <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1162 header information are also encrypted from the time they leave your browser,
1163 to the site, and vice versa. <application>Privoxy</application> does not
1164 try to unencrypt this information, so it just passes through as is.
1165 <application>Privoxy</application> can still catch images and ads that
1166 are embedded in the SSL stream though.
1172 <sect2 renderas="sect3">
1173 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1174 secure is it? Do I need to take any special precautions?</title>
1176 There are no known exploits that might effect
1177 <application>Privoxy</application>. On Unix-like systems,
1178 <application>Privoxy</application> can run as a non-privileged
1179 user, which is how we recommend it be run. Also, by default
1180 <application>Privoxy</application> only listens to requests
1181 from <quote>localhost</quote>. The server aspect of
1182 <application>Privoxy</application> is not itself directly exposed to the
1183 Internet in this configuration. If you want to have
1184 <application>Privoxy</application> serve as a LAN proxy, this will have to
1185 be opened up to allow for LAN requests. In this case, we'd recommend
1186 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1187 <application>Privoxy</application> config file. All LAN hosts can then use
1188 this as their proxy address in the browser proxy configuration. In this way,
1189 <application>Privoxy</application> will not listen on any external ports.
1190 Of course, a firewall is always good too. Better safe than sorry.
1195 <sect2 renderas="sect3" id="turnoff">
1196 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1198 The easiest way is to access <application>Privoxy</application> with your
1199 browser by using the special URL: <ulink url="http://p.p/">http://p.p/</ulink>
1200 and select "Toggle Privoxy on or off" from that page.
1205 <sect2 renderas="sect3" id="seealso">
1206 <title>Where can I find more information about <application>Privoxy</application>
1207 and related issues?</title>
1210 Include seealso.sgml
1218 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1227 <!-- ~~~~~ New section ~~~~~ -->
1229 <sect1 label="5" id="trouble">
1230 <title>Troubleshooting</title>
1232 <sect2 renderas="sect3">
1233 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1234 with every web page?</title>
1236 Either <application>Privoxy</application> is not running, or your
1237 browser is configured for a different port than what
1238 <application>Privoxy</application> is using.
1242 The old <application>Privoxy</application> (and also
1243 <application>Junkbuster</application>) used port 8000 by
1244 default. This has been changed to port 8118 now, due to a conflict
1245 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1246 you need to change your browser to the new port number, or alternately
1247 change <application>Privoxy's</application> <quote>listen-address</quote>
1248 setting in the <filename>config</filename> file used to start
1249 <application>Privoxy</application>.
1254 <sect2 renderas="sect3">
1255 <title id="flushit">I just added a new rule, but the steenkin ad is
1256 still getting through. How?</title>
1258 If the ad had been displayed before you added its URL, it will probably be
1259 held in the browser's cache for some time, so it will be displayed without
1260 the need for any request to the server, and <application>Privoxy</application>
1261 will not be in the picture. The best thing to do is try flushing the browser's
1262 caches. And then try again.
1266 If this doesn't help, you probably have an error in the rule you
1267 applied. Try pasting the full URL of the offending ad into <ulink
1268 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1269 and see if any actions match your new rule.
1274 <sect2 renderas="sect3">
1275 <title id="badsite">One of my favorite sites does not work with <application>Privoxy</application>.
1276 What can I do?</title>
1279 First verify that it is indeed a <application>Privoxy</application> problem,
1280 by disabling <application>Privoxy</application> filtering and blocking.
1281 Go to <ulink url="http://p.p/">http://p.p/</ulink> and click on
1282 <quote>Toggle Privoxy On or Off</quote>, then disable it. Now try that
1283 page again. It's probably a good idea to flush the browser cache as well.
1287 If still a problem, go to <quote>Show which actions apply to a URL and
1288 why</quote> from <ulink url="http://p.p/">http://p.p/</ulink> and paste
1289 the full URL of the page in question into the prompt. See which actions are
1290 being applied to the URL. Now, armed with this information, go to <quote>Edit
1291 the actions list</quote>. Here you should see various sections that have
1292 various <application>Privoxy</application> features disabled for specific
1293 sites. Most disabled <quote>actions</quote> will have a <quote>-</quote> (minus
1294 sign) in front of them. Some aliases are used just to disable other actions,
1295 e.g. <quote>shop</quote> and <quote>fragile</quote>, and won't necessarily
1296 use a <quote>+</quote> or <quote>-</quote> sign. Add your problem page
1297 URL to one of these sections that looks like it is disabling the feature that
1298 is causing the problem. Rember to flush your browser's caches when making
1299 such changes! As a last resort, try <quote>fragile</quote> which
1300 disables most actions. Now re-try the page. There might be some trial and
1301 error involved. This is discussed in a little more detail in the <ulink
1302 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1307 Alternately, if you are comfortable with a text editor, you can accomplish
1308 the same thing by editing the appropriate <quote>actions</quote> file.
1313 <sect2 renderas="sect3" id="bugs">
1314 <title>Where can I get help? Report bugs? Feature Requests? Etc?</title>
1316 Feedback is encouraged, whether good, bad or ugly. Please see the contact
1317 page in the <ulink url="../user-manual/contact.html">user-manual</ulink> for
1324 <sect2 renderas="sect3">
1325 <title id="time">What time is it?</title>
1336 <!-- ~~~~~ New section ~~~~~ -->
1338 FIXME: Commented out until we have something to put here. HB 03/18/02.
1339 <sect1 id="knownissues"><title>Known Issues</title>
1346 <!-- ~~~~~ New section ~~~~~ -->
1349 This is referenced in the doc header already. HB 03/25/02
1351 <sect1 id="contact"><title>Contact the developers</title>
1352 <para>Please see the user manual for information on how to contact the developers.
1360 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
1362 Last modified: Mon Sep 10 19:22:09 CEST 2001
1364 This program is free software; you can redistribute it
1365 and/or modify it under the terms of the GNU General
1366 Public License as published by the Free Software
1367 Foundation; either version 2 of the License, or (at
1368 your option) any later version.
1370 This program is distributed in the hope that it will
1371 be useful, but WITHOUT ANY WARRANTY; without even the
1372 implied warranty of MERCHANTABILITY or FITNESS FOR A
1373 PARTICULAR PURPOSE. See the GNU General Public
1374 License for more details.
1376 The GNU General Public License should be included with
1377 this file. If not, you can view it at
1378 http://www.gnu.org/copyleft/gpl.html
1379 or write to the Free Software Foundation, Inc., 59
1380 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1383 Revision 1.39 2002/04/03 03:53:03 hal9
1384 Revert some changes, and then make some news, to layout, and appearance.
1386 Revision 1.38 2002/04/02 03:49:10 hal9
1387 Major changes to doc structure and layout. Sections are not automatically
1388 numbered now. TOC is on page by itself.
1390 Revision 1.37 2002/04/01 16:24:07 hal9
1391 -Rework of supported Q/A.
1392 -Set up entities to include boilerplate text.
1394 Revision 1.36 2002/03/31 23:18:47 hal9
1395 More on dealing with BLOCKED.
1397 Revision 1.35 2002/03/30 04:14:19 hal9
1398 Fix privoxy.org/config links.
1400 Revision 1.34 2002/03/29 04:35:56 hal9
1403 Revision 1.33 2002/03/29 01:31:48 hal9
1404 Several new Q/A's and other touch ups.
1406 Revision 1.32 2002/03/27 00:57:03 hal9
1407 Touch ups for name change.
1409 Revision 1.31 2002/03/26 22:29:55 swa
1410 we have a new homepage!
1412 Revision 1.30 2002/03/25 16:39:22 hal9
1413 A few new sections. Made all links relative to user-manual.
1415 Revision 1.29 2002/03/25 05:23:57 hal9
1416 Moved section, and touch ups.
1418 Revision 1.28 2002/03/25 04:27:33 hal9
1419 New section related to name change.
1421 Revision 1.25 2002/03/24 16:08:08 swa
1422 we are too lazy to make a block-built
1423 privoxy logo. hence removed the option.
1425 Revision 1.24 2002/03/24 15:46:20 swa
1426 name change related issue.
1428 Revision 1.23 2002/03/24 12:33:01 swa
1431 Revision 1.22 2002/03/24 11:51:00 swa
1432 name change. changed filenames.
1434 Revision 1.21 2002/03/24 11:01:06 swa
1437 Revision 1.20 2002/03/23 15:13:11 swa
1438 renamed every reference to the old name with foobar.
1439 fixed "application foobar application" tag, fixed
1440 "the foobar" with "foobar". left junkbustser in cvs
1441 comments and remarks to history untouched.
1443 Revision 1.19 2002/03/21 17:01:54 hal9
1446 Revision 1.18 2002/03/18 16:40:31 hal9
1449 Revision 1.17 2002/03/18 03:53:53 hal9
1452 Revision 1.16 2002/03/17 21:32:56 hal9
1453 A few more additions.
1455 Revision 1.15 2002/03/17 07:25:59 hal9
1456 Correcting some of my typos, and some additions.
1458 Revision 1.14 2002/03/17 02:39:13 hal9
1459 A little more added ...
1461 Revision 1.13 2002/03/17 00:22:20 hal9
1462 Adding new stuff, and trying to incorporate stuff from old faq.
1464 Revision 1.12 2002/03/11 20:13:21 swa
1467 Revision 1.11 2002/03/11 18:42:27 swa
1470 Revision 1.10 2002/03/11 13:13:27 swa
1471 correct feedback channels
1473 Revision 1.9 2002/03/10 23:34:04 swa
1474 more info on not hiding ip address
1476 Revision 1.8 2002/03/09 15:55:48 swa
1477 added default config section
1479 Revision 1.7 2002/03/07 18:16:55 swa
1482 Revision 1.6 2002/03/07 13:16:31 oes
1483 Committing changes by Stefan
1485 Revision 1.5 2002/03/02 15:50:04 swa
1486 2.9.11 version. more input for docs.
1488 Revision 1.4 2002/02/24 14:34:24 jongfoster
1489 Formatting changes. Now changing the doctype to DocBook XML 4.1
1490 will work - no other changes are needed.
1492 Revision 1.3 2001/09/23 10:13:48 swa
1493 upload process established. run make webserver and
1494 the documentation is moved to the webserver. documents
1495 are now linked correctly.
1497 Revision 1.2 2001/09/13 15:20:17 swa
1498 merged standards into developer manual
1500 Revision 1.1 2001/09/12 15:36:41 swa
1501 source files for junkbuster documentation
1503 Revision 1.3 2001/09/10 17:43:59 swa
1504 first proposal of a structure.
1506 Revision 1.2 2001/06/13 14:28:31 swa
1507 docs should have an author.
1509 Revision 1.1 2001/06/13 14:20:37 swa
1510 first import of project's documentation for the webserver.