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.38 2002/04/02 03:49:10 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.38 2002/04/02 03:49:10 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 possible 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 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 appendix 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 /etc/privoxy hierarchy belongs to the user
693 "privoxy", with only 644 perms.
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 "privoxy", it can
699 update the config files.
702 If you don't like this, setting "enable-edit-actions 0" in the config file
703 will disable the browser-based editor. If you're that paranoid, you should
704 also consider setting "enable-remote-toggle 0" to prevent browser-based
705 enabling/disabling of <application>Privoxy</application>.
708 Note that normally only local users can connect to <application>Privoxy</application>, so this is not
709 (normally) a security problem.
714 <sect2 renderas="sect3">
715 <title id="filterfile">What is <quote>default.filter</quote>?</title>
717 The <quote>default.filter</quote> file is used to <quote>filter</quote> any
718 web page content. By <quote>filtering</quote> we mean it can modify, remove,
719 or change <emphasis>anything</emphasis> on the page, including HTML tags, and
720 JavaScript. Regular expressions are used to accomplish this, and operate
721 on a line by line basis. This is potentially a very powerful feature, but
722 requires some expertise.
726 If you are familiar with regular expressions, and HTML, you can look at
727 the provided <filename>default.filter</filename> with a text editor and see
728 some of things it can be used for.
732 Presently, there is no GUI editor option for this part of the configuration,
733 but you can disable/enable various sections of the included default
734 file with the <quote>Actions List Editor</quote> from your browser.
739 <sect2 renderas="sect3">
740 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
743 By default, <application>Privoxy</application> only responds to requests
744 from localhost. To have it act as a server for a network, this needs to be
745 changed in the main config file where the <application>Privoxy</application>
746 configuration is located. In that file is a <quote>listen-address</quote>
747 option. It may be commented out with a <quote>#</quote> symbol. Make sure
748 it is uncommented, and assign it the address of the LAN gateway interface,
749 and port number to use:
754 listen-address 192.168.1.1:8118
759 Save the file, and restart <application>Privoxy</application>. Configure
760 all browsers on the network then to use this address and port number.
766 <sect2 renderas="sect3">
767 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
769 This is a configuration option for images that
770 <application>Privoxy</application> is stopping. You have the choice <!-- of
771 the --> <!-- <application>Privoxy</application> logo, --> of a checkerboard
772 pattern, a transparent 1x1 GIF image (aka <quote>blank</quote>), or a custom
773 URL of your choice. Note that to fit this category, the URL must match both
774 the <quote>+image</quote> and <quote>+block</quote> actions.
778 If you want to see nothing, then change the <quote>+image-blocker</quote>
779 action to <quote>+image-blocker{blank}</quote>. This can be done from the
780 <quote>Edit Actions List</quote> selection at <ulink
781 url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate
782 actions file. This will only effect what is defined as <quote>images</quote>
783 though. Also, some URLs that generate the bright red <quote>Blocked</quote>
784 banner, can be moved to the <quote>+image-blocker</quote> section for the
785 same reason, but there are some limits and risks to this (see below).
791 <sect2 renderas="sect3">
792 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
794 This can be helpful for troubleshooting problems. It might also be good
795 for anyone new to <application>Privoxy</application> so that they can
796 see if their favorite pages are displaying correctly, and
797 <application>Privoxy</application> is not inadvertently removing something
803 <sect2 renderas="sect3">
804 <title id="blockedisugly">I see large red banners on some pages that say
805 <quote>Blocked</quote>. Why and how do I get rid of this?</title>
807 These are URLs that match something in one of
808 <application>Privoxy's</application> block actions (+block). It is meant
809 to be a warning so that you know something has been blocked and an easy way
810 for you to see why. These are handled differently than what has been defined
811 explicitly as <quote>images</quote> (e.g. ad banners). Depending on the
812 URL itself, it is sometimes hard for <application>Privoxy</application> to
813 really know whether there is indeed an ad image there or not. And there are
814 limitations as to what <application>Privoxy</application> can do to
815 <quote>fool</quote> the browser.
819 For instance, if the ad is in a frame, then it is embedded in the separate
820 HTML page used for the frame. In this case, you cannot just substitute an
821 aribitray image (like we would for a <quote>blank</quote> image), for an HTML
822 page. The browser is expecting an HTML page, and that is what it must have
823 for frames. So this situation can be a little trickier to deal with, and
824 <application>Privoxy</application> will use the <quote>Blocked</quote> page.
828 If you want these to be treated as if they were images, so that they can be
829 made invisible, you can try moving the offending URL from the
830 <quote>+block</quote> section to the <quote>+imageblock</quote> section of
831 your actions file. Just be forewarned, if any URL is made
832 <quote>invisible</quote>, you may not have any inkling that something has
833 been removed from that page, or why. If this approach does not work, then you are
834 probably dealing with a frame (or <quote>ilayer</quote>), and the only thing
835 that can go there is an HTML page of some sort.
838 To deal with this situation, you could modify the
839 <quote><filename>block</filename></quote> HTML template that is used by
840 <application>Privoxy</application> to display this, and make it something
841 more to your liking. Currently, there is no configuration option for this.
842 You will have to modify, or create your own page, and use this to replace
843 <filename>templates/blocked</filename>, which is what
844 <application>Privoxy</application> uses to display the <quote>Blocked</quote>
848 Another way to deal with this is find why and where
849 <application>Privoxy</application> is blocking the frame, and
850 diable this. Then let the <quote>+image-blocker</quote> action
851 handle the ad that is embedded in the frame's HTML page.
856 <sect2 renderas="sect3" id="alliseeisred">
857 <title>I cannot see all of the <quote>Blocked</quote> page banner. All I
858 see is a bright red square.</title>
860 There is not enough space to fit the entire page. Try right clicking on the
861 visible, red portion, and select <quote>Show Frame</quote>, or equivalent.
862 This will usually allow you to see the entire Privoxy <quote>Blocked</quote>
863 page, and from there you can see just what is being blocked, and why.
867 <sect2 renderas="sect3" id="otherproxy">
868 <title>How can I make <application>Privoxy</application> work with other
869 proxies like <application>Squid</application>?</title>
871 This can be done. See the <ulink
872 url="../user-manual/configuration.html#FORWARDING">user manual</ulink>,
873 which describes how to do this.
881 <!-- ~~~~~ New section ~~~~~ -->
883 <sect1 label="4"id="misc"><title>Miscellaneous</title>
885 <sect2 renderas="sect3">
886 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
887 has to add extra time to browsing.</title>
889 It should not slow you down any in real terms, and may actually help
890 speed things up since ads, banners and other junk are not being displayed.
891 The actual processing time required by <application>Privoxy</application>
892 itself for each page, is relatively small in the overall scheme of things,
893 and happens very quickly. This is typically more than offset by time saved
894 not downloading and rendering ad images.
898 <quote>Filtering</quote> via the <filename>filterfile</filename>
899 mechanism may cause a perceived slowdown, since the entire page is buffered
900 before displaying. See below.
907 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
908 delays in page requests compared to the old Junkbuster. What's wrong?</title>
910 Using the default filtering configuration, I noticed considerable delays in
911 page requests compared to the old Junkbuster. Loading pages with large contents
912 seemed to take forever, then suddenly delivering all the content at once.
915 The whole content must be loaded in order to filter, and nothing is is
916 sent to the browser during this time. The loading time does not really
917 change in real numbers, but the feeling is different, because most
918 browsers are able to start rendering incomplete content, giving the
919 user a feeling of "it works".
922 To modify the content of a page (i.e. make frames resizeable again, etc.) and
923 not just replace ads, <application>Privoxy</application> needs to download the
924 entire page first, do its content magic and then send the page to the browser.
929 <sect2 renderas="sect3" id="configurl"><title>What is the "http://p.p/"?</title>
931 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
932 programmed to handle certain pages specially.
936 With recent versions of <application>Privoxy</application> (version 2.9.x), you can get some
937 information about <application>Privoxy</application> and change some settings by going to
938 <ulink url="http://p.p/">http://p.p/</ulink> or, equivalently, <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
939 (Note that p.p is far easier to type but may not work in some
940 configurations. With the name change to <application>Privoxy</application>,
941 this is changed from the previous http://i.j.b/ or earlier 2.9.x versions).
945 These pages are <emphasis>not</emphasis> forwarded to a server on the Internet
946 - instead they are handled by a special web server which is built in to
947 <application>Privoxy</application>.
951 If you are not running <application>Privoxy</application>, then <ulink
952 url="http://p.p/">http://p.p/</ulink> will fail, and <ulink
953 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> will
954 return a web page telling you you're not running
955 <application>Privoxy</application>.
959 If you have version 2.0.2, then the equivalent is
960 http://example.com/show-proxy-args (but you get far less information, and you
961 should really consider upgrading to 2.9.x).
966 FIXME: commented out until we have data. HB 03/18/02.
968 <sect2 renderas="sect3" id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
974 <sect2 renderas="sect3" id="proxy-chaining"><title>How do I chain <application>Privoxy</application> with other proxies
975 (e.g. squid)?</title>
982 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
984 No. The format of the blocklists has changed significantly in the versions
985 2.9.x. Once we have released the new stable version, v3.0, there will
986 again be blocklists that you can update automatically.
990 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads?</title>
992 As of now, please discontinue to submit new ad blocking infos. Once we
993 have released the new version, there will again be a form on the website,
994 which you can use to contribute new ads.
998 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1000 You cannot hide your IP address with <application>Privoxy</application> or any other software, since
1001 the server needs to know your IP address to send the answer to you.
1004 Fortunately there are many publicly usable anonymous proxies out there, which
1005 solve the problem by providing a further level of indirection between you and
1006 the web server, shared by many people and thus letting your requests "drown"
1007 in white noise of unrelated requests as far as user tracking is concerned.
1010 Most of them will, however, log your IP address and make it available to the
1011 authorities in case you abuse that anonymity for criminal purposes. In fact
1012 you can't even rule out that some of them only exist to *collect* information
1013 on (those suspicious) people with a more than average preference for privacy.
1016 You can find a list of anonymous public proxies at <ulink
1017 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
1018 more through Google.
1022 <!-- <sect2 renderas="sect3" id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
1024 <!-- Anytime <application>Privoxy</application> determines (with the help of the blocklist) that a URL -->
1025 <!-- contains an advertisement, it has to decide whether this advertisement is an -->
1026 <!-- image or not. <application>Privoxy</application> uses the imagefile for that purpose. -->
1030 <sect2 renderas="sect3">
1031 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1033 No. Your chances of remaining anonymous are greatly improved, but unless you
1034 are an expert on Internet security it would be safest to assume that
1035 everything you do on the Web can be traced back to you.
1038 <application>Privoxy</application> can remove various information about you,
1039 and allows <emphasis>you</emphasis> more freedom to decide which sites
1040 you can trust. But it's still possible that web sites can find out who you
1041 are. Here's one way this can happen.
1044 A few browsers disclose the user's email address in certain situations, such
1045 as when transferring a file by FTP. <application>Privoxy</application>
1046 does not filter FTP. If you need this feature, or are concerned about the
1047 mail handler of your browser disclosing your email address, you might
1048 consider products such as <application>NSClean</application>.
1051 Browsers available only as binaries could use non-standard headers to give
1052 out any information they can have access to: see the manufacturer's license
1053 agreement. It's impossible to anticipate and prevent every breach of privacy
1054 that might occur. The professionally paranoid prefer browsers available as
1055 source code, because anticipating their behavior is easier. Trust the source,
1061 <sect2 renderas="sect3">
1062 <title id="sitebreak">Might some things break because header information is
1063 being altered?</title>
1066 Definitely. More and more sites use HTTP header content to decide what to
1067 display and how to display it. There is many ways that this can be handled,
1068 so having hard and fast rules, is tricky.
1072 <quote>USER AGENT</quote> in particular is often used in this way to identify
1073 the browser, and adjust content accordingly. Changing this now is not
1074 recommended, since so many sites do look for this. You may get undesirable
1075 results by changing this.
1079 For instance, different browsers use different encodings of Russian and Czech
1080 characters, certain web servers convert pages on-the-fly according to the
1081 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1082 operating system or browser manufacturer causes some sites in these languages
1083 to be garbled; Surfers to Eastern European sites should change it to
1084 something closer. And then some page access counters work by looking at the
1085 <quote>REFERER</quote> header; they may fail or break if unavailable. The
1086 weather maps of Intellicast have been blocked by their server when no
1087 <quote>REFERER</quote> or cookie is provided, is another example. There are
1088 many, many other ways things can go wrong when trying to fool a web server.
1092 If you have problems with a site, you will have to adjust your configuration
1093 accordingly. Cookies are probably the most likely adjustment that may
1094 be required, but by no means the only one.
1101 <sect2 renderas="sect3">
1102 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1103 speed up web browsing?</title>
1105 No, it does not have this ability at all. You want something like
1106 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1107 before you ask, <application>Privoxy</application> can co-exist
1108 with other kinds of proxies like <application>Squid</application>.
1112 <sect2 renderas="sect3">
1113 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1115 Not in the way you mean, or in the way a true firewall can, or a proxy that
1116 has this specific capability. <application>Privoxy</application> can help
1117 protect your privacy, but not really protect you from intrusion attempts.
1122 <sect2 renderas="sect3">
1123 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky
1124 and ugly looking. Can't a better font be used?</title>
1127 This is not a font problem. The logo is an image that is created by
1128 <application>Privoxy</application> on the fly. So as to not waste
1129 memory, the image is rather small. The blockiness comes when the
1130 image is scaled to fill a largish area. There is not much to be done
1131 about this, other than to use one of the other
1132 <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>,
1133 <emphasis>blank</emphasis>, or a URL of your choosing.
1136 Given the above problem, we have decided to remove the logo option entirely
1142 <sect2 renderas="sect3">
1143 <title id="wasted">I have large empty spaces now where ads used to be.
1146 It would be easy enough to just eliminate this space altogether, rather than
1147 fill it with blank space. But, this would create problems with many pages
1148 that use the overall size of the ad to help organize the page layout and
1149 position the various components of the page where they were intended to be.
1150 It is best left this way.
1155 <sect2 renderas="sect3">
1156 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1158 This is a limitation since HTTPS transactions are encrypted SSL sessions
1159 between your browser and the secure site, and are meant to be reliably
1160 <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1161 header information are also encrypted from the time they leave your browser,
1162 to the site, and vice versa. <application>Privoxy</application> does not
1163 try to unencrypt this information, so it just passes through as is.
1164 <application>Privoxy</application> can still catch images and ads that
1165 are embedded in the SSL stream though.
1171 <sect2 renderas="sect3">
1172 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1173 secure is it? Do I need to take any special precautions?</title>
1175 There are no known exploits that might effect
1176 <application>Privoxy</application>. On Unix-like systems,
1177 <application>Privoxy</application> can run as a non-privileged
1178 user, which is how we recommend it be run. Also, by default
1179 <application>Privoxy</application> only listens to requests
1180 from <quote>localhost</quote>. The server aspect of
1181 <application>Privoxy</application> is not itself directly exposed to the
1182 Internet in this configuration. If you want to have
1183 <application>Privoxy</application> serve as a LAN proxy, this will have to
1184 be opened up to allow for LAN requests. In this case, we'd recommend
1185 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1186 <application>Privoxy</application> config file. All LAN hosts can then use
1187 this as their proxy address in the browser proxy configuration. In this way,
1188 <application>Privoxy</application> will not listen on any external ports.
1189 Of course, a firewall is always good too. Better safe than sorry.
1194 <sect2 renderas="sect3" id="turnoff">
1195 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1197 The easiest way is to access <application>Privoxy</application> with your
1198 browser by using the special URL: <ulink url="http://p.p/">http://p.p/</ulink>
1199 and select "Toggle Privoxy on or off" from that page.
1204 <sect2 renderas="sect3" id="seealso">
1205 <title>Where can I find more information about <application>Privoxy</application>
1206 and related issues?</title>
1209 Include seealso.sgml
1217 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1226 <!-- ~~~~~ New section ~~~~~ -->
1228 <sect1 label="5" id="trouble">
1229 <title>Troubleshooting</title>
1231 <sect2 renderas="sect3">
1232 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1233 with every web page?</title>
1235 Either <application>Privoxy</application> is not running, or your
1236 browser is configured for a different port than what
1237 <application>Privoxy</application> is using.
1241 The old <application>Privoxy</application> (and also
1242 <application>Junkbuster</application>) used port 8000 by
1243 default. This has been changed to port 8118 now, due to a conflict
1244 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1245 you need to change your browser to the new port number, or alternately
1246 change <application>Privoxy's</application> <quote>listen-address</quote>
1247 setting in the <filename>config</filename> file used to start
1248 <application>Privoxy</application>.
1253 <sect2 renderas="sect3">
1254 <title id="flushit">I just added a new rule, but the steenkin ad is
1255 still getting through. How?</title>
1257 If the ad had been displayed before you added its URL, it will probably be
1258 held in the browser's cache for some time, so it will be displayed without
1259 the need for any request to the server, and <application>Privoxy</application>
1260 will not be in the picture. The best thing to do is try flushing the browser's
1261 caches. And then try again.
1265 If this doesn't help, you probably have an error in the rule you
1266 applied. Try pasting the full URL of the offending ad into <ulink
1267 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1268 and see if any actions match your new rule.
1273 <sect2 renderas="sect3">
1274 <title id="badsite">One of my favorite sites does not work with <application>Privoxy</application>.
1275 What can I do?</title>
1278 First verify that it is indeed a <application>Privoxy</application> problem,
1279 by disabling <application>Privoxy</application> filtering and blocking.
1280 Go to <ulink url="http://p.p/">http://p.p/</ulink> and click on
1281 <quote>Toggle Privoxy On or Off</quote>, then disable it. Now try that
1282 page again. It's probably a good idea to flush the browser cache as well.
1286 If still a problem, go to <quote>Show which actions apply to a URL and
1287 why</quote> from <ulink url="http://p.p/">http://p.p/</ulink> and paste
1288 the full URL of the page in question into the prompt. See which actions are
1289 being applied to the URL. Now, armed with this information, go to <quote>Edit
1290 the actions list</quote>. Here you should see various sections that have
1291 various <application>Privoxy</application> features disabled for specific
1292 sites. Most disabled <quote>actions</quote> will have a <quote>-</quote> (minus
1293 sign) in front of them. Some aliases are used just to disable other actions,
1294 e.g. <quote>shop</quote> and <quote>fragile</quote>, and won't necessarily
1295 use a <quote>+</quote> or <quote>-</quote> sign. Add your problem page
1296 URL to one of these sections that looks like it is disabling the feature that
1297 is causing the problem. Rember to flush your browser's caches when making
1298 such changes! As a last resort, try <quote>fragile</quote> which
1299 disables most actions. Now re-try the page. There might be some trial and
1300 error involved. This is discussed in a little more detail in the <ulink
1301 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1306 Alternately, if you are comfortable with a text editor, you can accomplish
1307 the same thing by editing the appropriate <quote>actions</quote> file.
1312 <sect2 renderas="sect3" id="bugs">
1313 <title>Where can I get help? Report bugs? Feature Requests? Etc?</title>
1315 Feedback is encouraged, whether good, bad or ugly. Please see the contact
1316 page in the <ulink url="../user-manual/contact.html">user-manual</ulink> for
1323 <sect2 renderas="sect3">
1324 <title id="time">What time is it?</title>
1335 <!-- ~~~~~ New section ~~~~~ -->
1337 FIXME: Commented out until we have something to put here. HB 03/18/02.
1338 <sect1 id="knownissues"><title>Known Issues</title>
1345 <!-- ~~~~~ New section ~~~~~ -->
1348 This is referenced in the doc header already. HB 03/25/02
1350 <sect1 id="contact"><title>Contact the developers</title>
1351 <para>Please see the user manual for information on how to contact the developers.
1359 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
1361 Last modified: Mon Sep 10 19:22:09 CEST 2001
1363 This program is free software; you can redistribute it
1364 and/or modify it under the terms of the GNU General
1365 Public License as published by the Free Software
1366 Foundation; either version 2 of the License, or (at
1367 your option) any later version.
1369 This program is distributed in the hope that it will
1370 be useful, but WITHOUT ANY WARRANTY; without even the
1371 implied warranty of MERCHANTABILITY or FITNESS FOR A
1372 PARTICULAR PURPOSE. See the GNU General Public
1373 License for more details.
1375 The GNU General Public License should be included with
1376 this file. If not, you can view it at
1377 http://www.gnu.org/copyleft/gpl.html
1378 or write to the Free Software Foundation, Inc., 59
1379 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1382 Revision 1.38 2002/04/02 03:49:10 hal9
1383 Major changes to doc structure and layout. Sections are not automatically
1384 numbered now. TOC is on page by itself.
1386 Revision 1.37 2002/04/01 16:24:07 hal9
1387 -Rework of supported Q/A.
1388 -Set up entities to include boilerplate text.
1390 Revision 1.36 2002/03/31 23:18:47 hal9
1391 More on dealing with BLOCKED.
1393 Revision 1.35 2002/03/30 04:14:19 hal9
1394 Fix privoxy.org/config links.
1396 Revision 1.34 2002/03/29 04:35:56 hal9
1399 Revision 1.33 2002/03/29 01:31:48 hal9
1400 Several new Q/A's and other touch ups.
1402 Revision 1.32 2002/03/27 00:57:03 hal9
1403 Touch ups for name change.
1405 Revision 1.31 2002/03/26 22:29:55 swa
1406 we have a new homepage!
1408 Revision 1.30 2002/03/25 16:39:22 hal9
1409 A few new sections. Made all links relative to user-manual.
1411 Revision 1.29 2002/03/25 05:23:57 hal9
1412 Moved section, and touch ups.
1414 Revision 1.28 2002/03/25 04:27:33 hal9
1415 New section related to name change.
1417 Revision 1.25 2002/03/24 16:08:08 swa
1418 we are too lazy to make a block-built
1419 privoxy logo. hence removed the option.
1421 Revision 1.24 2002/03/24 15:46:20 swa
1422 name change related issue.
1424 Revision 1.23 2002/03/24 12:33:01 swa
1427 Revision 1.22 2002/03/24 11:51:00 swa
1428 name change. changed filenames.
1430 Revision 1.21 2002/03/24 11:01:06 swa
1433 Revision 1.20 2002/03/23 15:13:11 swa
1434 renamed every reference to the old name with foobar.
1435 fixed "application foobar application" tag, fixed
1436 "the foobar" with "foobar". left junkbustser in cvs
1437 comments and remarks to history untouched.
1439 Revision 1.19 2002/03/21 17:01:54 hal9
1442 Revision 1.18 2002/03/18 16:40:31 hal9
1445 Revision 1.17 2002/03/18 03:53:53 hal9
1448 Revision 1.16 2002/03/17 21:32:56 hal9
1449 A few more additions.
1451 Revision 1.15 2002/03/17 07:25:59 hal9
1452 Correcting some of my typos, and some additions.
1454 Revision 1.14 2002/03/17 02:39:13 hal9
1455 A little more added ...
1457 Revision 1.13 2002/03/17 00:22:20 hal9
1458 Adding new stuff, and trying to incorporate stuff from old faq.
1460 Revision 1.12 2002/03/11 20:13:21 swa
1463 Revision 1.11 2002/03/11 18:42:27 swa
1466 Revision 1.10 2002/03/11 13:13:27 swa
1467 correct feedback channels
1469 Revision 1.9 2002/03/10 23:34:04 swa
1470 more info on not hiding ip address
1472 Revision 1.8 2002/03/09 15:55:48 swa
1473 added default config section
1475 Revision 1.7 2002/03/07 18:16:55 swa
1478 Revision 1.6 2002/03/07 13:16:31 oes
1479 Committing changes by Stefan
1481 Revision 1.5 2002/03/02 15:50:04 swa
1482 2.9.11 version. more input for docs.
1484 Revision 1.4 2002/02/24 14:34:24 jongfoster
1485 Formatting changes. Now changing the doctype to DocBook XML 4.1
1486 will work - no other changes are needed.
1488 Revision 1.3 2001/09/23 10:13:48 swa
1489 upload process established. run make webserver and
1490 the documentation is moved to the webserver. documents
1491 are now linked correctly.
1493 Revision 1.2 2001/09/13 15:20:17 swa
1494 merged standards into developer manual
1496 Revision 1.1 2001/09/12 15:36:41 swa
1497 source files for junkbuster documentation
1499 Revision 1.3 2001/09/10 17:43:59 swa
1500 first proposal of a structure.
1502 Revision 1.2 2001/06/13 14:28:31 swa
1503 docs should have an author.
1505 Revision 1.1 2001/06/13 14:20:37 swa
1506 first import of project's documentation for the webserver.