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">
7 <!entity contacting SYSTEM "contacting.sgml">
8 <!entity history SYSTEM "history.sgml">
9 <!entity copyright SYSTEM "copyright.sgml">
10 <!entity p-version "2.9.13">
11 <!entity p-status "BETA">
12 <!entity % p-not-stable "INCLUDE"> <!-- set to IGNORE for stable release -->
13 <!entity % p-stable "IGNORE"> <!-- set INCLUDE for stable release -->
14 <!entity % p-text "IGNORE"> <!-- define we are not a text only doc -->
15 <!entity % p-doc "INCLUDE"> <!-- and we are a formal doc -->
16 <!entity % p-supp-userman "INCLUDE"> <!-- Include all from supported.sgml -->
19 File : $Source: /cvsroot/ijbswa/current/doc/source/faq.sgml,v $
22 This file belongs into
23 ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
25 $Id: faq.sgml,v 1.42 2002/04/04 18:46:47 swa Exp $
27 Written by and Copyright (C) 2001 the SourceForge
28 Privoxy team. http://www.privoxy.org/
30 Based on the Internet Junkbuster originally written
31 by and Copyright (C) 1997 Anonymous Coders and
32 Junkbusters Corporation. http://www.junkbusters.com
34 <Qandaset defaultlabel='qanda'>
50 ========================================================================
51 NOTE: Please read developer-manual/documentation.html before touching
52 anything in this, or other Privoxy documentation. You have been warned!
53 Failure to abide by this rule will result in the revocation of your license
54 to live a peaceful existence!
55 ========================================================================
60 <article id="index" class="faq">
62 <title>Privoxy Frequently Asked Questions</title>
64 <pubdate>$Id: faq.sgml,v 1.42 2002/04/04 18:46:47 swa Exp $</pubdate>
69 <orgname>By: Privoxy Developers</orgname>
78 This is here to keep vim syntax file from breaking :/
79 If I knew enough to fix it, I would.
80 PLEASE DO NOT REMOVE! HB: hal@foobox.net
85 This FAQ gives users and developers alike answers to frequently asked
86 questions about <ulink url="http://www.privoxy.org">Privoxy</ulink>
87 <![%p-stable;[ v.&p-version]]>.
90 <!-- Include privoxy.sgml boilerplate: -->
92 <!-- end boilerplate -->
95 You can find the latest version of the document at <ulink
96 url="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/</ulink>.
97 Please see the Contact section if you want to contact the developers.
101 <!-- Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
106 <!-- ~~~~~ New section ~~~~~ -->
107 <sect1 id="intro" label=""><title></title>
108 <!-- dummy section to force TOC on page by itself -->
109 <!-- DO NOT REMOVE! please ;) -->
113 <!-- ~~~~~ New section ~~~~~ -->
115 <sect1 label="1" id="general"><title>General Information</title>
117 <sect2 renderas="sect3" id="newjb"><title>What is this new version of <application>Privoxy</application>?</title>
119 The original <application><trademark>Internet
120 Junkbuster</trademark></application> (tm) is a copyrighted product of <ulink
121 url="http://www.junkbusters.com">Junkbusters Corporation</ulink>.
122 Development of this effort stopped some time ago as of version 2.0.2. Stefan
123 Waldherr started the ijbswa project on <ulink
124 url="http://sourceforge.net/projects/ijbswa/">Sourceforge</ulink> to
125 rekindle development. Other developers subsequently joined with Stefan, and
126 have since added many new features, refinements and enhancements. The result
127 of this effort is <application>Privoxy</application>.
130 <application>Privoxy</application> has evolved from the
131 <application>Junkbuster 2.0.2</application> code base, and has advanced
132 significantly at this point.
135 Please see the History section for more
136 information on the history of <application>Junkbuster</application> and
137 <application>Privoxy</application>.
143 <sect2 renderas="sect3">
144 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why a name change at all?</title>
146 <application>Privoxy</application> is the
147 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>.
150 There are potential legal complications from the continued use of the
151 <application>Junkbuster</application> name, which is a trademark of
152 <ulink url="http://junkbusters.com">Junkbusters Corporation</ulink>.
153 (There are, however, no objections from Junkbusters Corporation to the
154 <application>Privoxy</application> project itself, and they, in fact, still
155 share our ideals and goals.)
159 The developers also believed that there are so many changes from the original
160 code, that it was time to make a clean break from the past and make
161 a name in their own right<![%p-not-stable;[, especially now with the pending
162 release of version 3.0]]>.
167 <sect2 renderas="sect3" id="differs"><title>How does <application>Privoxy</application> differ
168 from the old <application>Junkbuster?</application></title>
170 <application>Privoxy</application> picks up where
171 <application>Junkbuster</application> left off. All the old features remain.
172 The new <application>Privoxy</application> still blocks ads and banners,
173 still manages cookies, and still helps protect your privacy. But, these are
174 all enhanced, and many new features have been added, all in the same vein.
177 The configuration has changed significantly as well. This is something that
178 users will notice right off the bat if you are upgrading from
179 <application>Junkbuster</application> 2.0.x. The <quote>blocklist</quote>
180 file does not exist any more. This is replaced by <quote>actions</quote>
181 files, such as <filename>default.actions</filename>. This is where most of
182 the per site configuration is now.
186 <sect2 renderas="sect3" id="features"><title>What are some of the new features?</title>
188 Include newfeatures.sgml
194 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
195 <application>Privoxy</application> work? </title>
197 When you connect to a web site with <application>Privoxy</application>,
198 you are really connecting to your locally running version of
199 <application>Privoxy</application>. <application>Privoxy</application>
200 intercepts your requests for the web page, and relays that to the
201 <quote>real</quote> web site. The web site sends the HTTP data stream
202 back to <application>Privoxy</application>, where
203 <application>Privoxy</application> can work its magic before it
204 relays this data back to your web browser.
208 Since <application>Privoxy</application> sits between you and the
209 WWW, it is in a position to intercept and completely manage all web traffic and
210 HTTP content before it gets to your browser.
211 <application>Privoxy</application> uses various programming methods to do
212 this, all of which is under your control via the various configuration
217 There are many kinds of proxies. <application>Privoxy</application> best
218 fits the <quote>filtering proxy</quote> category.
224 <sect2 renderas="sect3">
225 <title id="knows">How does <application>Privoxy</application> know what is
226 an ad, and what is not?</title>
228 <application>Privoxy</application> processes all the raw content of every
229 web page. So it reads everything on each page. It then compares this to the
230 rules as set up in the configuration files, and looks for any matches to
231 these rules. <application>Privoxy</application> makes heavy use of
232 <quote>regular expressions</quote>. (If you are not familiar with regular
233 expressions, it is explained briefly in <ulink
234 url="../user-manual/appendix.html">the user manual</ulink>.) Regular
235 expressions facilitate matching of one text string against another, using
236 wildcards to build complex patterns. So <application>Privoxy</application>
237 will typically look for URLs and other content that match certain key words
238 and expressions as defined in the configuration files. For instance a URL
239 that contains <quote>/banners</quote>, has a high probability of containing
240 ad banners, and thus would be a prime candidate to have a matching rule.
243 So <application>Privoxy</application> will look for these kinds of obvious
244 looking culprits. And also, will use lists of known organizations that
245 specialize in ads. Again, using complex patterns to match as many potential
246 combinations as possible since there tend to be many, many variations used by
247 advertisers, and new ones are being introduced all the time.
251 <sect2 renderas="sect3">
252 <title id="mistakes">Can <application>Privoxy</application> make mistakes?
253 This does not sound very scientific.</title>
255 Actually, it's a black art ;-) And yes, it is always possible to have a broad rule
256 accidentally block something by mistake. There is a good chance you may run
257 into such a situation at some point. It is tricky writing rules to cover
258 every conceivable possibility, and not occasionally get false positives.
262 But this should not be a big concern since the
263 <application>Privoxy</application> configuration is very flexible, and
264 includes tools to help identify these types of situations so they can be
265 addressed as needed, allowing you to customize your installation.
266 (<link linkend="badsite">See the Troubleshooting section below</link>.)
272 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
273 <application>Privoxy</application>. Why should I use
274 <application>Privoxy</application> at all?</title>
276 Modern browsers do indeed have <emphasis>some</emphasis> of the same
277 functionality as <application>Privoxy</application>. Maybe this is
278 adequate for you. But <application>Privoxy</application> is much more
279 versatile and powerful, and can do a number of things that browsers just can't.
282 In addition, a proxy is good choice if you use multiple browsers, or
283 have a LAN with multiple computers. This way all the configuration
284 is in one place, and you don't have to maintain a similar configuration
285 for possibly many browsers.
292 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
293 warranty? Registration?</title>
295 <application>Privoxy</application> is licensed under the GNU General Public
296 License (GPL). It is free to use, copy, modify or distribute as you wish
297 under the terms of this license. Please see the Copyright section for more
298 information on the license and copyright.
302 There is no warranty of any kind, expressed, implied or otherwise. That is
303 something that would cost real money ;-) There is no registration either.
304 <application>Privoxy</application> really is <emphasis>free</emphasis>
311 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what do I do?</title>
313 <sect3 renderas="sect4" id="jointeam-money"><title>Money Money Money</title>
315 We, of course, welcome donations and use the money for domain registering,
316 regular world-wide get-togethers (hahaha). Anyway, we'll soon describe the
317 process how to donate money to the team.
321 <sect3 renderas="sect4" id="jointeam-work"><title>You want to work with us?</title>
323 Well, helping the team is always a good idea. We welcome new developers,
324 RPM gurus or documentation makers. Simply get an account on sourceforge.net
325 and mail your id to the developer mailing list. Then read the
326 section Quickstart in the <ulink url="../developer-manual/quickstart.html">
327 Developer's Manual</ulink>.
330 Once we have added you to the team, you'll have write access to the CVS
331 repository, and together we'll find a suitable task for you.
340 <!-- ~~~~~ New section ~~~~~ -->
342 <sect1 label="2" id="installation"><title>Installation</title>
344 <sect2 renderas="sect3" id="whichbrowsers">
345 <title>Which browsers are supported by <application>Privoxy</application>?</title>
347 Any browser that can be configured to use a <quote>proxy</quote>, which
348 should be virtually all browsers. Direct browser support is not necessary
349 since <application>Privoxy</application> runs as a separate application and
350 just exchanges standard HTML data with your browser, just like a web server
355 <sect2 renderas="sect3" id="whichos">
356 <title>Which operating systems are supported?</title>
358 Include supported.sgml here:
363 <sect2 renderas="sect3" id="newinstall"><title>Can I install
364 <application>Privoxy</application> over <application>Junkbuster</application>?</title>
366 We recommend you uninstall <application>Junkbuster</application>
367 first to minimize conflicts and confusion. You may want to
368 save your old configuration files for future reference. The configuration
369 is substantially changed.
373 url="../user-manual/index.html">user-manual</ulink> for
374 platform specific installation instructions.
377 Note: Some installers may automatically uninstall
378 <application>Junkbuster</application>, if present!
383 <sect2 renderas="sect3">
384 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything
385 special I have to do now?</title>
388 All browsers must be told to use <application>Privoxy</application>
389 as a proxy by specifying the correct proxy address and port number
390 in the appropriate configuration area for the browser. See below.
391 Also, you should flush your browser's memory and disk cache to get rid of any
399 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
401 If you set up the <application>Privoxy</application> to run on
402 the computer you browse from (rather than your ISP's server or some
403 networked computer on a LAN), the proxy will be on <quote>localhost</quote>
404 (which is the special name used by every computer on the Internet to refer
405 to itself) and the port will be 8118 (unless you have <application>Privoxy</application> to run on a different port with the
406 <emphasis>listen-address</emphasis> config option).
409 When configuring your browser's proxy settings you typically enter
410 the word <quote>localhost</quote> in the boxes next to <quote>HTTP</quote>
411 and <quote>Secure</quote> (HTTPS) and then the number <quote>8118</quote>
412 for <quote>port</quote>. This tells your browser to send all web
413 requests to <application>Privoxy</application> instead of directly to the
417 <application>Privoxy</application> can also be used to proxy for
418 a Local Area Network. In this case, your would enter either the IP
419 address of the LAN host where <application>Privoxy</application>
420 is running, or the equivalent hostname. Port assignment would be
424 <application>Privoxy</application> does not currently handle
425 protocols such as FTP, SMTP, IM, IRC, ICQ, or other Internet
430 <sect2 renderas="sect3">
431 <title id="nothing">I just installed <application>Privoxy</application>, and nothing is happening.
432 All the ads are there. What's wrong?</title>
435 Did you configure your browser to use <application>Privoxy</application>
436 as a proxy? It does not sound like it. See above. You might also try flushing
437 the browser's caches to force a full re-reading of pages. You can verify
438 that <application>Privoxy</application> is running, and your browser
439 is correctly configured by entering the special URL:
440 <ulink url="http://p.p/">http://p.p/</ulink>. This should give you
441 a banner that says <quote>This is Privoxy</quote> and
442 access to <application>Privoxy's</application> internal configuration.
443 If you see this, then you are good to go. If not, the browser or
444 <application>Privoxy</application> are not set up correctly.
453 <!-- ~~~~~ New section ~~~~~ -->
455 <sect1 label="3" id="configuration"><title>Configuration</title>
457 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
459 There are major changes to <application>Junkbuster</application>/
460 <application>Privoxy</application> configuration from version 2.0.x to
461 2.9.x and later. Most of the older files will not work at all. This is
462 especially true of <filename>blocklist</filename>. If this is the case, you
463 will need to re-enter your old data into the new configuration structure.
464 This is probably also a good recommendation even if upgrading from 2.9.x to
465 3.x since there were many minor changes along the way.
469 <sect2 renderas="sect3">
470 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
473 <quote>actions</quote> files are where various actions that
474 <application>Privoxy</application> might take, are configured.
475 Typically, you would define a set of default actions that apply
476 to all URLs, then add exceptions to these defaults.
480 Actions can be defined on a per site basis, or for groups of sites. Actions
481 can also be grouped together and then applied to one or more sites. There
482 are many possible actions that might apply to any given site. As an example,
483 if we are blocking cookies as one of our default
484 <application>actions</application>, but need to accept cookies from a given
485 site, we would define this in our <quote>actions</quote> file.
490 <application>Privoxy</application> comes with several default
491 <application>actions</application> files, with varying degrees
492 of filtering and blocking, as starting points for your own
493 configuration (see below).
498 <sect2 renderas="sect3" id="actionss">
499 <title>The <quote>actions</quote> concept confuses me. Please list
500 some of these <quote>actions</quote>.</title>
502 These are all explained in the
503 <ulink url="../user-manual/configuration.html#ACTIONSFILE">user-manual</ulink>.
504 Please refer to that.
509 <sect2 renderas="sect3">
510 <title id="actconfig">How are actions files configured? What is the easiest
511 way to do this?</title>
514 The easiest way to do this, is to access <application>Privoxy</application>
515 with your web browser at <ulink url="http://p.p/">http://p.p/</ulink>,
517 "<ulink url="http://config.privoxy.org">Edit the actions list</ulink>"
518 from the selection list. You can also do this by editing the appropriate
519 file with a text editor.
525 url="../user-manual/configuration.html#ACTIONSFILE">user-manual</ulink> for a
526 detailed explanation of these and other configuration files, and their
527 various options and syntax.
533 FIXME: Commenting these out until we have some data there. HB 03/17/02.
535 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo account work?</title>
541 <sect2 renderas="sect3" id="hotmail"> <title>How can I make my Hotmail account work?</title>
547 <sect2 renderas="sect3" id="gmx"> <title>How can I make my GMX account work?</title>
554 <sect2 renderas="sect3" id="configfiles"> <title>What are the differences between
555 intermediate.action, basic.action, etc.?</title>
557 Configuring <application>Privoxy</application> is not easy. To help you get
558 started, we provide you with three different default configurations. The
559 following table shows you, which features are enabled in each configuration.
562 <table frame=all><title>Default Configurations</title>
563 <tgroup cols=5 align=left colsep=1 rowsep=1>
571 <entry>Feature</entry>
572 <entry>default.action</entry>
573 <entry>basic.action</entry>
574 <entry>intermediate.action</entry>
575 <entry>advanced.action</entry>
581 <!-- <entry>f1</entry> -->
582 <!-- <entry>f2</entry> -->
583 <!-- <entry>f3</entry> -->
584 <!-- <entry>f4</entry> -->
585 <!-- <entry>f5</entry> -->
592 <entry>ad-filtering</entry>
600 <entry>blank image</entry>
608 <entry>de-animate GIFs</entry>
616 <entry>referer forging</entry>
624 <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
632 <entry>no-popup windows</entry>
640 <entry>fast redirects</entry>
648 <entry>hide-referrer</entry>
656 <entry>hide-useragent</entry>
664 <entry>content-modification</entry>
672 <entry>feature-x</entry>
680 <entry>feature-y</entry>
688 <entry>feature-z</entry>
701 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration with a
702 browser? Does that not raise security issues?</title>
704 What I don't understand, is how I can browser edit the config file as a
705 regular user, while the whole <filename>/etc/privoxy</filename> hierarchy
706 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
709 When you use the browser-based editor, <application>Privoxy</application>
710 itself is writing to the config files. Because
711 <application>Privoxy</application> is running as the user <quote>privoxy</quote>, it can
712 update the config files.
715 If you don't like this, setting <quote>enable-edit-actions 0</quote> in the
716 config file will disable the browser-based editor. If you're that paranoid,
717 you should also consider setting <quote>enable-remote-toggle 0</quote> to prevent
718 browser-based enabling/disabling of <application>Privoxy</application>.
721 Note that normally only local users can connect to
722 <application>Privoxy</application>, so this is not (normally) a security
728 <sect2 renderas="sect3">
729 <title id="filterfile">What is <quote>default.filter</quote>?</title>
731 The <quote>default.filter</quote> file is used to <quote>filter</quote> any
732 web page content. By <quote>filtering</quote> we mean it can modify, remove,
733 or change <emphasis>anything</emphasis> on the page, including HTML tags, and
734 JavaScript. Regular expressions are used to accomplish this, and operate
735 on a line by line basis. This is potentially a very powerful feature, but
736 requires some expertise.
740 If you are familiar with regular expressions, and HTML, you can look at
741 the provided <filename>default.filter</filename> with a text editor and see
742 some of things it can be used for.
746 Presently, there is no GUI editor option for this part of the configuration,
747 but you can disable/enable various sections of the included default
748 file with the <quote>Actions List Editor</quote> from your browser.
753 <sect2 renderas="sect3">
754 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
757 By default, <application>Privoxy</application> only responds to requests
758 from localhost. To have it act as a server for a network, this needs to be
759 changed in the main config file where the <application>Privoxy</application>
760 configuration is located. In that file is a <quote>listen-address</quote>
761 option. It may be commented out with a <quote>#</quote> symbol. Make sure
762 it is uncommented, and assign it the address of the LAN gateway interface,
763 and port number to use:
768 listen-address 192.168.1.1:8118
773 Save the file, and restart <application>Privoxy</application>. Configure
774 all browsers on the network then to use this address and port number.
780 <sect2 renderas="sect3">
781 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
783 This is a configuration option for images that
784 <application>Privoxy</application> is stopping. You have the choice <!-- of
785 the --> <!-- <application>Privoxy</application> logo, --> of a checkerboard
786 pattern, a transparent 1x1 GIF image (aka <quote>blank</quote>), or a custom
787 URL of your choice. Note that to fit this category, the URL must match both
788 the <quote>+image</quote> and <quote>+block</quote> actions.
792 If you want to see nothing, then change the <quote>+image-blocker</quote>
793 action to <quote>+image-blocker{blank}</quote>. This can be done from the
794 <quote>Edit Actions List</quote> selection at <ulink
795 url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate
796 actions file. This will only effect what is defined as <quote>images</quote>
797 though. Also, some URLs that generate the bright red <quote>Blocked</quote>
798 banner, can be moved to the <quote>+image-blocker</quote> section for the
799 same reason, but there are some limits and risks to this (see below).
805 <sect2 renderas="sect3">
806 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
808 This can be helpful for troubleshooting problems. It might also be good
809 for anyone new to <application>Privoxy</application> so that they can
810 see if their favorite pages are displaying correctly, and
811 <application>Privoxy</application> is not inadvertently removing something
817 <sect2 renderas="sect3">
818 <title id="blockedisugly">I see large red banners on some pages that say
819 <quote>Blocked</quote>. Why and how do I get rid of this?</title>
821 These are URLs that match something in one of
822 <application>Privoxy's</application> block actions (+block). It is meant
823 to be a warning so that you know something has been blocked and an easy way
824 for you to see why. These are handled differently than what has been defined
825 explicitly as <quote>images</quote> (e.g. ad banners). Depending on the
826 URL itself, it is sometimes hard for <application>Privoxy</application> to
827 really know whether there is indeed an ad image there or not. And there are
828 limitations as to what <application>Privoxy</application> can do to
829 <quote>fool</quote> the browser.
833 For instance, if the ad is in a frame, then it is embedded in the separate
834 HTML page used for the frame. In this case, you cannot just substitute an
835 aribitray image (like we would for a <quote>blank</quote> image), for an HTML
836 page. The browser is expecting an HTML page, and that is what it must have
837 for frames. So this situation can be a little trickier to deal with, and
838 <application>Privoxy</application> will use the <quote>Blocked</quote> page.
842 If you want these to be treated as if they were images, so that they can be
843 made invisible, you can try moving the offending URL from the
844 <quote>+block</quote> section to the <quote>+imageblock</quote> section of
845 your actions file. Just be forewarned, if any URL is made
846 <quote>invisible</quote>, you may not have any inkling that something has
847 been removed from that page, or why. If this approach does not work, then you are
848 probably dealing with a frame (or <quote>ilayer</quote>), and the only thing
849 that can go there is an HTML page of some sort.
852 To deal with this situation, you could modify the
853 <quote><filename>block</filename></quote> HTML template that is used by
854 <application>Privoxy</application> to display this, and make it something
855 more to your liking. Currently, there is no configuration option for this.
856 You will have to modify, or create your own page, and use this to replace
857 <filename>templates/blocked</filename>, which is what
858 <application>Privoxy</application> uses to display the <quote>Blocked</quote>
862 Another way to deal with this is find why and where
863 <application>Privoxy</application> is blocking the frame, and
864 diable this. Then let the <quote>+image-blocker</quote> action
865 handle the ad that is embedded in the frame's HTML page.
870 <sect2 renderas="sect3" id="alliseeisred">
871 <title>I cannot see all of the <quote>Blocked</quote> page banner. All I
872 see is a bright red square.</title>
874 There is not enough space to fit the entire page. Try right clicking on the
875 visible, red portion, and select <quote>Show Frame</quote>, or equivalent.
876 This will usually allow you to see the entire Privoxy <quote>Blocked</quote>
877 page, and from there you can see just what is being blocked, and why.
882 <title>Can <application>Privoxy</application> run as a service
885 Yes, it can run as a system service using <command>srvany.exe</command>.
886 The only catch is that this will effectively disable the
887 <application>Privoxy</application> icon in the taskbar. You can have
888 one or the other, but not both at this time :(
891 There is a pending feature request for this functionality. See
893 url="http://sourceforge.net/tracker/?func=detail&atid=361118&aid=485617&group_id=11118">http://sourceforge.net/tracker/?func=detail&atid=361118&aid=485617&group_id=11118</ulink>,
894 for details, and a sample configuration.
900 <sect2 renderas="sect3" id="otherproxy">
901 <title>How can I make <application>Privoxy</application> work with other
902 proxies like <application>Squid</application>?</title>
904 This can be done. See the <ulink
905 url="../user-manual/configuration.html#FORWARDING">user manual</ulink>,
906 which describes how to do this.
914 <!-- ~~~~~ New section ~~~~~ -->
916 <sect1 label="4"id="misc"><title>Miscellaneous</title>
918 <sect2 renderas="sect3">
919 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
920 has to add extra time to browsing.</title>
922 It should not slow you down any in real terms, and may actually help
923 speed things up since ads, banners and other junk are not being displayed.
924 The actual processing time required by <application>Privoxy</application>
925 itself for each page, is relatively small in the overall scheme of things,
926 and happens very quickly. This is typically more than offset by time saved
927 not downloading and rendering ad images.
931 <quote>Filtering</quote> via the <filename>filterfile</filename>
932 mechanism may cause a perceived slowdown, since the entire page is buffered
933 before displaying. See below.
940 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
941 delays in page requests compared to the old Junkbuster. What's wrong?</title>
943 Using the default filtering configuration, I noticed considerable delays in
944 page requests compared to the old Junkbuster. Loading pages with large contents
945 seemed to take forever, then suddenly delivering all the content at once.
948 The whole content must be loaded in order to filter, and nothing is is
949 sent to the browser during this time. The loading time does not really
950 change in real numbers, but the feeling is different, because most
951 browsers are able to start rendering incomplete content, giving the
952 user a feeling of "it works".
955 To modify the content of a page (i.e. make frames resizeable again, etc.) and
956 not just replace ads, <application>Privoxy</application> needs to download the
957 entire page first, do its content magic and then send the page to the browser.
962 <sect2 renderas="sect3" id="configurl"><title>What is the "http://p.p/"?</title>
964 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
965 programmed to handle certain pages specially.
969 With recent versions of <application>Privoxy</application> (version 2.9.x), you can get some
970 information about <application>Privoxy</application> and change some settings by going to
971 <ulink url="http://p.p/">http://p.p/</ulink> or, equivalently, <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
972 (Note that p.p is far easier to type but may not work in some
973 configurations. With the name change to <application>Privoxy</application>,
974 this is changed from the previous http://i.j.b/ or earlier 2.9.x versions).
978 These pages are <emphasis>not</emphasis> forwarded to a server on the Internet
979 - instead they are handled by a special web server which is built in to
980 <application>Privoxy</application>.
984 If you are not running <application>Privoxy</application>, then <ulink
985 url="http://p.p/">http://p.p/</ulink> will fail, and <ulink
986 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> will
987 return a web page telling you you're not running
988 <application>Privoxy</application>.
992 If you have version 2.0.2, then the equivalent is
993 http://example.com/show-proxy-args (but you get far less information, and you
994 should really consider upgrading to &p-version;).
999 FIXME: commented out until we have data. HB 03/18/02.
1001 <sect2 renderas="sect3" id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
1007 <sect2 renderas="sect3" id="proxy-chaining"><title>How do I chain <application>Privoxy</application> with other proxies
1008 (e.g. squid)?</title>
1015 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1017 No. The format of the blocklists has changed significantly in versions
1018 2.9.x and later. <![%p-not-stable;[Once we have released the new stable
1019 version, v3.0, there will again be blocklists that you can update
1024 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads?</title>
1026 As of now, please discontinue to submit new ad blocking infos. Once we
1027 have released the new version, there will again be a form on the website,
1028 which you can use to contribute new ads.
1032 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1034 You cannot hide your IP address with <application>Privoxy</application> or any other software, since
1035 the server needs to know your IP address to send the answer to you.
1038 Fortunately there are many publicly usable anonymous proxies out there, which
1039 solve the problem by providing a further level of indirection between you and
1040 the web server, shared by many people and thus letting your requests "drown"
1041 in white noise of unrelated requests as far as user tracking is concerned.
1044 Most of them will, however, log your IP address and make it available to the
1045 authorities in case you abuse that anonymity for criminal purposes. In fact
1046 you can't even rule out that some of them only exist to *collect* information
1047 on (those suspicious) people with a more than average preference for privacy.
1050 You can find a list of anonymous public proxies at <ulink
1051 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
1052 more through Google.
1056 <!-- <sect2 renderas="sect3" id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
1058 <!-- Anytime <application>Privoxy</application> determines (with the help of the blocklist) that a URL -->
1059 <!-- contains an advertisement, it has to decide whether this advertisement is an -->
1060 <!-- image or not. <application>Privoxy</application> uses the imagefile for that purpose. -->
1064 <sect2 renderas="sect3">
1065 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1067 No. Your chances of remaining anonymous are greatly improved, but unless you
1068 are an expert on Internet security it would be safest to assume that
1069 everything you do on the Web can be traced back to you.
1072 <application>Privoxy</application> can remove various information about you,
1073 and allows <emphasis>you</emphasis> more freedom to decide which sites
1074 you can trust, and what details you want to reveal. But it's still possible
1075 that web sites can find out who you are. Here's one way this can happen.
1078 A few browsers disclose the user's email address in certain situations, such
1079 as when transferring a file by FTP. <application>Privoxy</application>
1080 does not filter FTP. If you need this feature, or are concerned about the
1081 mail handler of your browser disclosing your email address, you might
1082 consider products such as <application>NSClean</application>.
1085 Browsers available only as binaries could use non-standard headers to give
1086 out any information they can have access to: see the manufacturer's license
1087 agreement. It's impossible to anticipate and prevent every breach of privacy
1088 that might occur. The professionally paranoid prefer browsers available as
1089 source code, because anticipating their behavior is easier. Trust the source,
1095 <sect2 renderas="sect3">
1096 <title id="sitebreak">Might some things break because header information is
1097 being altered?</title>
1100 Definitely. More and more sites use HTTP header content to decide what to
1101 display and how to display it. There is many ways that this can be handled,
1102 so having hard and fast rules, is tricky.
1106 <quote>USER AGENT</quote> in particular is often used in this way to identify
1107 the browser, and adjust content accordingly. Changing this now is not
1108 recommended, since so many sites do look for this. You may get undesirable
1109 results by changing this.
1113 For instance, different browsers use different encodings of Russian and Czech
1114 characters, certain web servers convert pages on-the-fly according to the
1115 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1116 operating system or browser manufacturer causes some sites in these languages
1117 to be garbled; Surfers to Eastern European sites should change it to
1118 something closer. And then some page access counters work by looking at the
1119 <quote>REFERER</quote> header; they may fail or break if unavailable. The
1120 weather maps of Intellicast have been blocked by their server when no
1121 <quote>REFERER</quote> or cookie is provided, is another example. There are
1122 many, many other ways things can go wrong when trying to fool a web server.
1126 If you have problems with a site, you will have to adjust your configuration
1127 accordingly. Cookies are probably the most likely adjustment that may
1128 be required, but by no means the only one.
1134 <sect2 renderas="sect3">
1135 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1136 speed up web browsing?</title>
1138 No, it does not have this ability at all. You want something like
1139 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1140 before you ask, <application>Privoxy</application> can co-exist
1141 with other kinds of proxies like <application>Squid</application>.
1145 <sect2 renderas="sect3">
1146 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1148 Not in the way you mean, or in the way a true firewall can, or a proxy that
1149 has this specific capability. <application>Privoxy</application> can help
1150 protect your privacy, but not really protect you from intrusion attempts.
1155 <sect2 renderas="sect3">
1156 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky
1157 and ugly looking. Can't a better font be used?</title>
1160 This is not a font problem. The logo is an image that is created by
1161 <application>Privoxy</application> on the fly. So as to not waste
1162 memory, the image is rather small. The blockiness comes when the
1163 image is scaled to fill a largish area. There is not much to be done
1164 about this, other than to use one of the other
1165 <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>,
1166 <emphasis>blank</emphasis>, or a URL of your choosing.
1169 Given the above problem, we have decided to remove the logo option entirely
1175 <sect2 renderas="sect3">
1176 <title id="wasted">I have large empty spaces now where ads used to be.
1179 It would be easy enough to just eliminate this space altogether, rather than
1180 fill it with blank space. But, this would create problems with many pages
1181 that use the overall size of the ad to help organize the page layout and
1182 position the various components of the page where they were intended to be.
1183 It is best left this way.
1188 <sect2 renderas="sect3">
1189 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1191 This is a limitation since HTTPS transactions are encrypted SSL sessions
1192 between your browser and the secure site, and are meant to be reliably
1193 <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1194 header information are also encrypted from the time they leave your browser,
1195 to the site, and vice versa. <application>Privoxy</application> does not
1196 try to unencrypt this information, so it just passes through as is.
1197 <application>Privoxy</application> can still catch images and ads that
1198 are embedded in the SSL stream though.
1204 <sect2 renderas="sect3">
1205 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1206 secure is it? Do I need to take any special precautions?</title>
1208 There are no known exploits that might effect
1209 <application>Privoxy</application>. On Unix-like systems,
1210 <application>Privoxy</application> can run as a non-privileged
1211 user, which is how we recommend it be run. Also, by default
1212 <application>Privoxy</application> only listens to requests
1213 from <quote>localhost</quote>. The server aspect of
1214 <application>Privoxy</application> is not itself directly exposed to the
1215 Internet in this configuration. If you want to have
1216 <application>Privoxy</application> serve as a LAN proxy, this will have to
1217 be opened up to allow for LAN requests. In this case, we'd recommend
1218 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1219 <application>Privoxy</application> config file. All LAN hosts can then use
1220 this as their proxy address in the browser proxy configuration. In this way,
1221 <application>Privoxy</application> will not listen on any external ports.
1222 Of course, a firewall is always good too. Better safe than sorry.
1227 <sect2 renderas="sect3" id="turnoff">
1228 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1230 The easiest way is to access <application>Privoxy</application> with your
1231 browser by using the special URL: <ulink url="http://p.p/">http://p.p/</ulink>
1232 and select "Toggle Privoxy on or off" from that page.
1237 <sect2 renderas="sect3" id="seealso">
1238 <title>Where can I find more information about <application>Privoxy</application>
1239 and related issues?</title>
1240 <!-- Include seealso.sgml boilerplate: -->
1242 <!-- end boilerplate -->
1247 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1256 <!-- ~~~~~ New section ~~~~~ -->
1258 <sect1 label="5" id="trouble">
1259 <title>Troubleshooting</title>
1261 <sect2 renderas="sect3">
1262 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1263 with every web page?</title>
1265 Either <application>Privoxy</application> is not running, or your
1266 browser is configured for a different port than what
1267 <application>Privoxy</application> is using.
1271 The old <application>Privoxy</application> (and also
1272 <application>Junkbuster</application>) used port 8000 by
1273 default. This has been changed to port 8118 now, due to a conflict
1274 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1275 you need to change your browser to the new port number, or alternately
1276 change <application>Privoxy's</application> <quote>listen-address</quote>
1277 setting in the <filename>config</filename> file used to start
1278 <application>Privoxy</application>.
1283 <sect2 renderas="sect3">
1284 <title id="flushit">I just added a new rule, but the steenkin ad is
1285 still getting through. How?</title>
1287 If the ad had been displayed before you added its URL, it will probably be
1288 held in the browser's cache for some time, so it will be displayed without
1289 the need for any request to the server, and <application>Privoxy</application>
1290 will not be in the picture. The best thing to do is try flushing the browser's
1291 caches. And then try again.
1295 If this doesn't help, you probably have an error in the rule you
1296 applied. Try pasting the full URL of the offending ad into <ulink
1297 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1298 and see if any actions match your new rule.
1303 <sect2 renderas="sect3">
1304 <title id="badsite">One of my favorite sites does not work with <application>Privoxy</application>.
1305 What can I do?</title>
1308 First verify that it is indeed a <application>Privoxy</application> problem,
1309 by disabling <application>Privoxy</application> filtering and blocking.
1310 Go to <ulink url="http://p.p/">http://p.p/</ulink> and click on
1311 <quote>Toggle Privoxy On or Off</quote>, then disable it. Now try that
1312 page again. It's probably a good idea to flush the browser cache as well.
1316 If still a problem, go to <quote>Show which actions apply to a URL and
1317 why</quote> from <ulink url="http://p.p/">http://p.p/</ulink> and paste
1318 the full URL of the page in question into the prompt. See which actions are
1319 being applied to the URL. Now, armed with this information, go to <quote>Edit
1320 the actions list</quote>. Here you should see various sections that have
1321 various <application>Privoxy</application> features disabled for specific
1322 sites. Most disabled <quote>actions</quote> will have a <quote>-</quote> (minus
1323 sign) in front of them. Some aliases are used just to disable other actions,
1324 e.g. <quote>shop</quote> and <quote>fragile</quote>, and won't necessarily
1325 use a <quote>+</quote> or <quote>-</quote> sign. Add your problem page
1326 URL to one of these sections that looks like it is disabling the feature that
1327 is causing the problem. Rember to flush your browser's caches when making
1328 such changes! As a last resort, try <quote>fragile</quote> which
1329 disables most actions. Now re-try the page. There might be some trial and
1330 error involved. This is discussed in a little more detail in the <ulink
1331 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1336 Alternately, if you are comfortable with a text editor, you can accomplish
1337 the same thing by editing the appropriate <quote>actions</quote> file.
1342 <sect2 renderas="sect3" id="bugs">
1343 <title>Where can I get help? Report bugs? Feature Requests? Etc?</title>
1345 Feedback is encouraged, whether good, bad or ugly. Please see the contact
1346 page in the <ulink url="../user-manual/contact.html">user-manual</ulink> for
1353 <sect2 renderas="sect3">
1354 <title id="time">What time is it?</title>
1365 <!-- ~~~~~ New section ~~~~~ -->
1367 FIXME: Commented out until we have something to put here. HB 03/18/02.
1368 <sect1 id="knownissues"><title>Known Issues</title>
1375 <!-- ~~~~~ New section ~~~~~ -->
1376 <sect1 id="contact"><title>Contacting the developers, Bug Reporting and Feature Requests</title>
1377 <!-- Include contacting.sgml -->
1379 <!-- end contacting -->
1382 <!-- ~~~~~ New section ~~~~~ -->
1383 <sect1 id="copyright"><title>Copyright and History</title>
1385 <sect2><title>Copyright</title>
1386 <!-- Include copyright.sgml -->
1391 <sect2><title>History</title>
1392 <!-- Include history.sgml -->
1399 <!-- ~~~~~ New section ~~~~~ -->
1401 <sect1 id="seealso"><title>See also</title>
1403 <!-- Include seealso.sgml -->
1414 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
1416 Last modified: Mon Sep 10 19:22:09 CEST 2001
1418 This program is free software; you can redistribute it
1419 and/or modify it under the terms of the GNU General
1420 Public License as published by the Free Software
1421 Foundation; either version 2 of the License, or (at
1422 your option) any later version.
1424 This program is distributed in the hope that it will
1425 be useful, but WITHOUT ANY WARRANTY; without even the
1426 implied warranty of MERCHANTABILITY or FITNESS FOR A
1427 PARTICULAR PURPOSE. See the GNU General Public
1428 License for more details.
1430 The GNU General Public License should be included with
1431 this file. If not, you can view it at
1432 http://www.gnu.org/copyleft/gpl.html
1433 or write to the Free Software Foundation, Inc., 59
1434 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1437 Revision 1.42 2002/04/04 18:46:47 swa
1438 consistent look. reuse of copyright, history et. al.
1440 Revision 1.41 2002/04/04 06:48:37 hal9
1441 Structural changes to allow for conditional inclusion/exclusion of content
1442 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
1443 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
1444 eventually be set by Makefile.
1445 More boilerplate text for use across multiple docs.
1447 Revision 1.40 2002/04/03 04:22:03 hal9
1448 Fixed several typos.
1450 Revision 1.39 2002/04/03 03:53:03 hal9
1451 Revert some changes, and then make some news, to layout, and appearance.
1453 Revision 1.38 2002/04/02 03:49:10 hal9
1454 Major changes to doc structure and layout. Sections are not automatically
1455 numbered now. TOC is on page by itself.
1457 Revision 1.37 2002/04/01 16:24:07 hal9
1458 -Rework of supported Q/A.
1459 -Set up entities to include boilerplate text.
1461 Revision 1.36 2002/03/31 23:18:47 hal9
1462 More on dealing with BLOCKED.
1464 Revision 1.35 2002/03/30 04:14:19 hal9
1465 Fix privoxy.org/config links.
1467 Revision 1.34 2002/03/29 04:35:56 hal9
1470 Revision 1.33 2002/03/29 01:31:48 hal9
1471 Several new Q/A's and other touch ups.
1473 Revision 1.32 2002/03/27 00:57:03 hal9
1474 Touch ups for name change.
1476 Revision 1.31 2002/03/26 22:29:55 swa
1477 we have a new homepage!
1479 Revision 1.30 2002/03/25 16:39:22 hal9
1480 A few new sections. Made all links relative to user-manual.
1482 Revision 1.29 2002/03/25 05:23:57 hal9
1483 Moved section, and touch ups.
1485 Revision 1.28 2002/03/25 04:27:33 hal9
1486 New section related to name change.
1488 Revision 1.25 2002/03/24 16:08:08 swa
1489 we are too lazy to make a block-built
1490 privoxy logo. hence removed the option.
1492 Revision 1.24 2002/03/24 15:46:20 swa
1493 name change related issue.
1495 Revision 1.23 2002/03/24 12:33:01 swa
1498 Revision 1.22 2002/03/24 11:51:00 swa
1499 name change. changed filenames.
1501 Revision 1.21 2002/03/24 11:01:06 swa
1504 Revision 1.20 2002/03/23 15:13:11 swa
1505 renamed every reference to the old name with foobar.
1506 fixed "application foobar application" tag, fixed
1507 "the foobar" with "foobar". left junkbustser in cvs
1508 comments and remarks to history untouched.
1510 Revision 1.19 2002/03/21 17:01:54 hal9
1513 Revision 1.18 2002/03/18 16:40:31 hal9
1516 Revision 1.17 2002/03/18 03:53:53 hal9
1519 Revision 1.16 2002/03/17 21:32:56 hal9
1520 A few more additions.
1522 Revision 1.15 2002/03/17 07:25:59 hal9
1523 Correcting some of my typos, and some additions.
1525 Revision 1.14 2002/03/17 02:39:13 hal9
1526 A little more added ...
1528 Revision 1.13 2002/03/17 00:22:20 hal9
1529 Adding new stuff, and trying to incorporate stuff from old faq.
1531 Revision 1.12 2002/03/11 20:13:21 swa
1534 Revision 1.11 2002/03/11 18:42:27 swa
1537 Revision 1.10 2002/03/11 13:13:27 swa
1538 correct feedback channels
1540 Revision 1.9 2002/03/10 23:34:04 swa
1541 more info on not hiding ip address
1543 Revision 1.8 2002/03/09 15:55:48 swa
1544 added default config section
1546 Revision 1.7 2002/03/07 18:16:55 swa
1549 Revision 1.6 2002/03/07 13:16:31 oes
1550 Committing changes by Stefan
1552 Revision 1.5 2002/03/02 15:50:04 swa
1553 2.9.11 version. more input for docs.
1555 Revision 1.4 2002/02/24 14:34:24 jongfoster
1556 Formatting changes. Now changing the doctype to DocBook XML 4.1
1557 will work - no other changes are needed.
1559 Revision 1.3 2001/09/23 10:13:48 swa
1560 upload process established. run make webserver and
1561 the documentation is moved to the webserver. documents
1562 are now linked correctly.
1564 Revision 1.2 2001/09/13 15:20:17 swa
1565 merged standards into developer manual
1567 Revision 1.1 2001/09/12 15:36:41 swa
1568 source files for junkbuster documentation
1570 Revision 1.3 2001/09/10 17:43:59 swa
1571 first proposal of a structure.
1573 Revision 1.2 2001/06/13 14:28:31 swa
1574 docs should have an author.
1576 Revision 1.1 2001/06/13 14:20:37 swa
1577 first import of project's documentation for the webserver.