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.14">
11 <!entity p-status "beta">
12 <!entity % p-not-stable "INCLUDE">
13 <!entity % p-stable "IGNORE">
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.45 2002/04/08 22:59:26 hal9 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'>
49 ========================================================================
50 NOTE: Please read developer-manual/documentation.html before touching
51 anything in this, or other Privoxy documentation. You have been warned!
52 Failure to abide by this rule will result in the revocation of your license
53 to live a peaceful existence!
54 ========================================================================
59 <article id="index" class="faq">
61 <title>Privoxy Frequently Asked Questions</title>
63 <pubdate>$Id: faq.sgml,v 1.45 2002/04/08 22:59:26 hal9 Exp $</pubdate>
68 <orgname>By: Privoxy Developers</orgname>
77 This is here to keep vim syntax file from breaking :/
78 If I knew enough to fix it, I would.
79 PLEASE DO NOT REMOVE! HB: hal@foobox.net
84 This FAQ gives users and developers alike answers to frequently asked
85 questions about <ulink url="http://www.privoxy.org">Privoxy</ulink>
86 <![%p-stable;[ v.&p-version]]>.
89 <!-- Include privoxy.sgml boilerplate: -->
91 <!-- end boilerplate -->
94 You can find the latest version of the document at <ulink
95 url="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/</ulink>.
96 Please see the Contact section if you want to contact the developers.
100 <!-- Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
105 <!-- ~~~~~ New section ~~~~~ -->
106 <sect1 id="intro" label=""><title></title>
107 <!-- dummy section to force TOC on page by itself -->
108 <!-- DO NOT REMOVE! please ;) -->
112 <!-- ~~~~~ New section ~~~~~ -->
114 <sect1 label="1" id="general"><title>General Information</title>
116 <sect2 renderas="sect3" id="newjb"><title>What is this new version of <application>Privoxy</application>?</title>
118 The original <application><trademark>Internet
119 Junkbuster</trademark></application> (tm) is a copyrighted product of <ulink
120 url="http://www.junkbusters.com">Junkbusters Corporation</ulink>.
121 Development of this effort stopped some time ago as of version 2.0.2. Stefan
122 Waldherr started the ijbswa project on <ulink
123 url="http://sourceforge.net/projects/ijbswa/">Sourceforge</ulink> to
124 rekindle development. Other developers subsequently joined with Stefan, and
125 have since added many new features, refinements and enhancements. The result
126 of this effort is <application>Privoxy</application>.
129 <application>Privoxy</application> has evolved from the
130 <application>Junkbuster 2.0.2</application> code base, and has advanced
131 significantly at this point.
134 Please see the <link linkend="copyright">History section</link> for more
135 information on the history of <application>Junkbuster</application> and
136 <application>Privoxy</application>.
142 <sect2 renderas="sect3">
143 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why a name change at all?</title>
145 <application>Privoxy</application> is the
146 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>.
149 There are potential legal complications from the continued use of the
150 <application>Junkbuster</application> name, which is a registered trademark of
151 <ulink url="http://junkbusters.com">Junkbusters Corporation</ulink>.
152 And thus they <quote>own</quote> the rights to the name.
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>
187 <!-- Include newfeatures.sgml: -->
193 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
194 <application>Privoxy</application> work? </title>
196 When you connect to a web site with <application>Privoxy</application>,
197 you are really connecting to your locally running version of
198 <application>Privoxy</application>. <application>Privoxy</application>
199 intercepts your requests for the web page, and relays that to the
200 <quote>real</quote> web site. The web site sends the HTTP data stream
201 back to <application>Privoxy</application>, where
202 <application>Privoxy</application> can work its magic before it
203 relays this data back to your web browser.
207 Since <application>Privoxy</application> sits between you and the
208 WWW, it is in a position to intercept and completely manage all web traffic and
209 HTTP content before it gets to your browser.
210 <application>Privoxy</application> uses various programming methods to do
211 this, all of which is under your control via the various configuration
216 There are many kinds of proxies. <application>Privoxy</application> best
217 fits the <quote>filtering proxy</quote> category.
223 <sect2 renderas="sect3">
224 <title id="knows">How does <application>Privoxy</application> know what is
225 an ad, and what is not?</title>
227 <application>Privoxy</application> processes all the raw content of every
228 web page. So it reads everything on each page. It then compares this to the
229 rules as set up in the configuration files, and looks for any matches to
230 these rules. <application>Privoxy</application> makes heavy use of
231 <quote>regular expressions</quote>. (If you are not familiar with regular
232 expressions, it is explained briefly in <ulink
233 url="../user-manual/appendix.html">the user manual</ulink>.) Regular
234 expressions facilitate matching of one text string against another, using
235 wildcards to build complex patterns. So <application>Privoxy</application>
236 will typically look for URLs and other content that match certain key words
237 and expressions as defined in the configuration files. For instance a URL
238 that contains <quote>/banners</quote>, has a high probability of containing
239 ad banners, and thus would be a prime candidate to have a matching rule.
242 So <application>Privoxy</application> will look for these kinds of obvious
243 looking culprits. And also, will use lists of known organizations that
244 specialize in ads. Again, using complex patterns to match as many potential
245 combinations as possible since there tend to be many, many variations used by
246 advertisers, and new ones are being introduced all the time.
250 <sect2 renderas="sect3">
251 <title id="mistakes">Can <application>Privoxy</application> make mistakes?
252 This does not sound very scientific.</title>
254 Actually, it's a black art ;-) And yes, it is always possible to have a broad rule
255 accidentally block something by mistake. There is a good chance you may run
256 into such a situation at some point. It is tricky writing rules to cover
257 every conceivable possibility, and not occasionally get false positives.
261 But this should not be a big concern since the
262 <application>Privoxy</application> configuration is very flexible, and
263 includes tools to help identify these types of situations so they can be
264 addressed as needed, allowing you to customize your installation.
265 (<link linkend="badsite">See the Troubleshooting section below</link>.)
271 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
272 <application>Privoxy</application>. Why should I use
273 <application>Privoxy</application> at all?</title>
275 Modern browsers do indeed have <emphasis>some</emphasis> of the same
276 functionality as <application>Privoxy</application>. Maybe this is
277 adequate for you. But <application>Privoxy</application> is much more
278 versatile and powerful, and can do a number of things that browsers just can't.
281 In addition, a proxy is good choice if you use multiple browsers, or
282 have a LAN with multiple computers. This way all the configuration
283 is in one place, and you don't have to maintain a similar configuration
284 for possibly many browsers.
291 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
292 warranty? Registration?</title>
294 <application>Privoxy</application> is licensed under the GNU General Public
295 License (GPL). It is free to use, copy, modify or distribute as you wish
296 under the terms of this license. Please see the Copyright section for more
297 information on the license and copyright.
301 There is no warranty of any kind, expressed, implied or otherwise. That is
302 something that would cost real money ;-) There is no registration either.
303 <application>Privoxy</application> really is <emphasis>free</emphasis>
310 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what do I do?</title>
312 <sect3 renderas="sect4" id="jointeam-money"><title>Money Money Money</title>
314 We, of course, welcome donations and use the money for domain registering,
315 regular world-wide get-togethers (hahaha). Anyway, we'll soon describe the
316 process how to donate money to the team.
320 <sect3 renderas="sect4" id="jointeam-work"><title>You want to work with us?</title>
322 Well, helping the team is always a good idea. We welcome new developers,
323 RPM gurus or documentation makers. Simply get an account on sourceforge.net
324 and mail your id to the developer mailing list. Then read the
325 section Quickstart in the <ulink url="../developer-manual/quickstart.html">
326 Developer's Manual</ulink>.
329 Once we have added you to the team, you'll have write access to the CVS
330 repository, and together we'll find a suitable task for you.
339 <!-- ~~~~~ New section ~~~~~ -->
341 <sect1 label="2" id="installation"><title>Installation</title>
343 <sect2 renderas="sect3" id="whichbrowsers">
344 <title>Which browsers are supported by <application>Privoxy</application>?</title>
346 Any browser that can be configured to use a <quote>proxy</quote>, which
347 should be virtually all browsers. Direct browser support is not necessary
348 since <application>Privoxy</application> runs as a separate application and
349 just exchanges standard HTML data with your browser, just like a web server
354 <sect2 renderas="sect3" id="whichos">
355 <title>Which operating systems are supported?</title>
357 Include supported.sgml here:
362 <sect2 renderas="sect3" id="newinstall"><title>Can I install
363 <application>Privoxy</application> over <application>Junkbuster</application>?</title>
365 We recommend you uninstall <application>Junkbuster</application>
366 first to minimize conflicts and confusion. You may want to
367 save your old configuration files for future reference. The configuration
368 is substantially changed.
372 url="../user-manual/index.html">user-manual</ulink> for
373 platform specific installation instructions.
376 Note: Some installers may automatically uninstall
377 <application>Junkbuster</application>, if present!
382 <sect2 renderas="sect3">
383 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything
384 special I have to do now?</title>
387 All browsers must be told to use <application>Privoxy</application>
388 as a proxy by specifying the correct proxy address and port number
389 in the appropriate configuration area for the browser. See below.
390 Also, you should flush your browser's memory and disk cache to get rid of any
398 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
400 If you set up the <application>Privoxy</application> to run on
401 the computer you browse from (rather than your ISP's server or some
402 networked computer on a LAN), the proxy will be on <quote>localhost</quote>
403 (which is the special name used by every computer on the Internet to refer
404 to itself) and the port will be 8118 (unless you have <application>Privoxy</application> to run on a different port with the
405 <emphasis>listen-address</emphasis> config option).
408 When configuring your browser's proxy settings you typically enter
409 the word <quote>localhost</quote> in the boxes next to <quote>HTTP</quote>
410 and <quote>Secure</quote> (HTTPS) and then the number <quote>8118</quote>
411 for <quote>port</quote>. This tells your browser to send all web
412 requests to <application>Privoxy</application> instead of directly to the
416 <application>Privoxy</application> can also be used to proxy for
417 a Local Area Network. In this case, your would enter either the IP
418 address of the LAN host where <application>Privoxy</application>
419 is running, or the equivalent hostname. Port assignment would be
423 <application>Privoxy</application> does not currently handle
424 protocols such as FTP, SMTP, IM, IRC, ICQ, or other Internet
429 <sect2 renderas="sect3">
430 <title id="nothing">I just installed <application>Privoxy</application>, and nothing is happening.
431 All the ads are there. What's wrong?</title>
434 Did you configure your browser to use <application>Privoxy</application>
435 as a proxy? It does not sound like it. See above. You might also try flushing
436 the browser's caches to force a full re-reading of pages. You can verify
437 that <application>Privoxy</application> is running, and your browser
438 is correctly configured by entering the special URL:
439 <ulink url="http://p.p/">http://p.p/</ulink>. This should give you
440 a banner that says <quote>This is Privoxy</quote> and
441 access to <application>Privoxy's</application> internal configuration.
442 If you see this, then you are good to go. If not, the browser or
443 <application>Privoxy</application> are not set up correctly.
452 <!-- ~~~~~ New section ~~~~~ -->
454 <sect1 label="3" id="configuration"><title>Configuration</title>
456 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
458 There are major changes to <application>Junkbuster</application>/
459 <application>Privoxy</application> configuration from version 2.0.x to
460 2.9.x and later. Most of the older files will not work at all. This is
461 especially true of <filename>blocklist</filename>. If this is the case, you
462 will need to re-enter your old data into the new configuration structure.
463 This is probably also a good recommendation even if upgrading from 2.9.x to
464 3.x since there were many minor changes along the way.
468 <sect2 renderas="sect3">
469 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
472 <quote>actions</quote> files are where various actions that
473 <application>Privoxy</application> might take, are configured.
474 Typically, you would define a set of default actions that apply
475 to all URLs, then add exceptions to these defaults.
479 Actions can be defined on a per site basis, or for groups of sites. Actions
480 can also be grouped together and then applied to one or more sites. There
481 are many possible actions that might apply to any given site. As an example,
482 if we are blocking cookies as one of our default
483 <application>actions</application>, but need to accept cookies from a given
484 site, we would define this in our <quote>actions</quote> file.
489 <application>Privoxy</application> comes with several default
490 <application>actions</application> files, with varying degrees
491 of filtering and blocking, as starting points for your own
492 configuration (see below).
497 <sect2 renderas="sect3" id="actionss">
498 <title>The <quote>actions</quote> concept confuses me. Please list
499 some of these <quote>actions</quote>.</title>
501 These are all explained in the
502 <ulink url="../user-manual/configuration.html#ACTIONSFILE">user-manual</ulink>.
503 Please refer to that.
508 <sect2 renderas="sect3">
509 <title id="actconfig">How are actions files configured? What is the easiest
510 way to do this?</title>
513 The easiest way to do this, is to access <application>Privoxy</application>
514 with your web browser at <ulink url="http://p.p/">http://p.p/</ulink>,
516 "<ulink url="http://config.privoxy.org">Edit the actions list</ulink>"
517 from the selection list. You can also do this by editing the appropriate
518 file with a text editor.
524 url="../user-manual/configuration.html#ACTIONSFILE">user-manual</ulink> for a
525 detailed explanation of these and other configuration files, and their
526 various options and syntax.
532 FIXME: Commenting these out until we have some data there. HB 03/17/02.
534 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo account work?</title>
540 <sect2 renderas="sect3" id="hotmail"> <title>How can I make my Hotmail account work?</title>
546 <sect2 renderas="sect3" id="gmx"> <title>How can I make my GMX account work?</title>
553 <sect2 renderas="sect3" id="configfiles"> <title>What are the differences between
554 intermediate.action, basic.action, etc.?</title>
556 Configuring <application>Privoxy</application> is not easy. To help you get
557 started, we provide you with three different default configurations. The
558 following table shows you, which features are enabled in each configuration.
561 <table frame=all><title>Default Configurations</title>
562 <tgroup cols=5 align=left colsep=1 rowsep=1>
570 <entry>Feature</entry>
571 <entry>default.action</entry>
572 <entry>basic.action</entry>
573 <entry>intermediate.action</entry>
574 <entry>advanced.action</entry>
580 <!-- <entry>f1</entry> -->
581 <!-- <entry>f2</entry> -->
582 <!-- <entry>f3</entry> -->
583 <!-- <entry>f4</entry> -->
584 <!-- <entry>f5</entry> -->
591 <entry>ad-filtering</entry>
599 <entry>blank image</entry>
607 <entry>de-animate GIFs</entry>
615 <entry>referer forging</entry>
623 <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
631 <entry>no-popup windows</entry>
639 <entry>fast redirects</entry>
647 <entry>hide-referrer</entry>
655 <entry>hide-useragent</entry>
663 <entry>content-modification</entry>
671 <entry>feature-x</entry>
679 <entry>feature-y</entry>
687 <entry>feature-z</entry>
700 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration with a
701 browser? Does that not raise security issues?</title>
703 What I don't understand, is how I can browser edit the config file as a
704 regular user, while the whole <filename>/etc/privoxy</filename> hierarchy
705 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
708 When you use the browser-based editor, <application>Privoxy</application>
709 itself is writing to the config files. Because
710 <application>Privoxy</application> is running as the user <quote>privoxy</quote>, it can
711 update the config files.
714 If you don't like this, setting <quote>enable-edit-actions 0</quote> in the
715 config file will disable the browser-based editor. If you're that paranoid,
716 you should also consider setting <quote>enable-remote-toggle 0</quote> to prevent
717 browser-based enabling/disabling of <application>Privoxy</application>.
720 Note that normally only local users can connect to
721 <application>Privoxy</application>, so this is not (normally) a security
727 <sect2 renderas="sect3">
728 <title id="filterfile">What is <quote>default.filter</quote>?</title>
730 The <quote>default.filter</quote> file is used to <quote>filter</quote> any
731 web page content. By <quote>filtering</quote> we mean it can modify, remove,
732 or change <emphasis>anything</emphasis> on the page, including HTML tags, and
733 JavaScript. Regular expressions are used to accomplish this, and operate
734 on a line by line basis. This is potentially a very powerful feature, but
735 requires some expertise.
739 If you are familiar with regular expressions, and HTML, you can look at
740 the provided <filename>default.filter</filename> with a text editor and see
741 some of things it can be used for.
745 Presently, there is no GUI editor option for this part of the configuration,
746 but you can disable/enable various sections of the included default
747 file with the <quote>Actions List Editor</quote> from your browser.
752 <sect2 renderas="sect3">
753 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
756 By default, <application>Privoxy</application> only responds to requests
757 from localhost. To have it act as a server for a network, this needs to be
758 changed in the main config file where the <application>Privoxy</application>
759 configuration is located. In that file is a <quote>listen-address</quote>
760 option. It may be commented out with a <quote>#</quote> symbol. Make sure
761 it is uncommented, and assign it the address of the LAN gateway interface,
762 and port number to use:
767 listen-address 192.168.1.1:8118
772 Save the file, and restart <application>Privoxy</application>. Configure
773 all browsers on the network then to use this address and port number.
779 <sect2 renderas="sect3">
780 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
782 This is a configuration option for images that
783 <application>Privoxy</application> is stopping. You have the choice <!-- of
784 the --> <!-- <application>Privoxy</application> logo, --> of a checkerboard
785 pattern, a transparent 1x1 GIF image (aka <quote>blank</quote>), or a custom
786 URL of your choice. Note that to fit this category, the URL must match both
787 the <quote>+image</quote> and <quote>+block</quote> actions.
791 If you want to see nothing, then change the <quote>+image-blocker</quote>
792 action to <quote>+image-blocker{blank}</quote>. This can be done from the
793 <quote>Edit Actions List</quote> selection at <ulink
794 url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate
795 actions file. This will only effect what is defined as <quote>images</quote>
796 though. Also, some URLs that generate the bright red <quote>Blocked</quote>
797 banner, can be moved to the <quote>+image-blocker</quote> section for the
798 same reason, but there are some limits and risks to this (see below).
804 <sect2 renderas="sect3">
805 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
807 This can be helpful for troubleshooting problems. It might also be good
808 for anyone new to <application>Privoxy</application> so that they can
809 see if their favorite pages are displaying correctly, and
810 <application>Privoxy</application> is not inadvertently removing something
816 <sect2 renderas="sect3">
817 <title id="blockedisugly">I see large red banners on some pages that say
818 <quote>Blocked</quote>. Why and how do I get rid of this?</title>
820 These are URLs that match something in one of
821 <application>Privoxy's</application> block actions (+block). It is meant
822 to be a warning so that you know something has been blocked and an easy way
823 for you to see why. These are handled differently than what has been defined
824 explicitly as <quote>images</quote> (e.g. ad banners). Depending on the
825 URL itself, it is sometimes hard for <application>Privoxy</application> to
826 really know whether there is indeed an ad image there or not. And there are
827 limitations as to what <application>Privoxy</application> can do to
828 <quote>fool</quote> the browser.
832 For instance, if the ad is in a frame, then it is embedded in the separate
833 HTML page used for the frame. In this case, you cannot just substitute an
834 aribitray image (like we would for a <quote>blank</quote> image), for an HTML
835 page. The browser is expecting an HTML page, and that is what it must have
836 for frames. So this situation can be a little trickier to deal with, and
837 <application>Privoxy</application> will use the <quote>Blocked</quote> page.
841 If you want these to be treated as if they were images, so that they can be
842 made invisible, you can try moving the offending URL from the
843 <quote>+block</quote> section to the <quote>+imageblock</quote> section of
844 your actions file. Just be forewarned, if any URL is made
845 <quote>invisible</quote>, you may not have any inkling that something has
846 been removed from that page, or why. If this approach does not work, then you are
847 probably dealing with a frame (or <quote>ilayer</quote>), and the only thing
848 that can go there is an HTML page of some sort.
851 To deal with this situation, you could modify the
852 <quote><filename>block</filename></quote> HTML template that is used by
853 <application>Privoxy</application> to display this, and make it something
854 more to your liking. Currently, there is no configuration option for this.
855 You will have to modify, or create your own page, and use this to replace
856 <filename>templates/blocked</filename>, which is what
857 <application>Privoxy</application> uses to display the <quote>Blocked</quote>
861 Another way to deal with this is find why and where
862 <application>Privoxy</application> is blocking the frame, and
863 diable this. Then let the <quote>+image-blocker</quote> action
864 handle the ad that is embedded in the frame's HTML page.
869 <sect2 renderas="sect3" id="alliseeisred">
870 <title>I cannot see all of the <quote>Blocked</quote> page banner. All I
871 see is a bright red square.</title>
873 There is not enough space to fit the entire page. Try right clicking on the
874 visible, red portion, and select <quote>Show Frame</quote>, or equivalent.
875 This will usually allow you to see the entire Privoxy <quote>Blocked</quote>
876 page, and from there you can see just what is being blocked, and why.
880 <sect2 renderas="sect3" id="srvany">
881 <title>Can <application>Privoxy</application> run as a service
884 Yes, it can run as a system service using <command>srvany.exe</command>.
885 The only catch is that this will effectively disable the
886 <application>Privoxy</application> icon in the taskbar. You can have
887 one or the other, but not both at this time :(
890 There is a pending feature request for this functionality. See
892 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>,
893 for details, and a sample configuration.
899 <sect2 renderas="sect3" id="otherproxy">
900 <title>How can I make <application>Privoxy</application> work with other
901 proxies like <application>Squid</application>?</title>
903 This can be done. See the <ulink
904 url="../user-manual/configuration.html#FORWARDING">user manual</ulink>,
905 which describes how to do this.
913 <!-- ~~~~~ New section ~~~~~ -->
915 <sect1 label="4"id="misc"><title>Miscellaneous</title>
917 <sect2 renderas="sect3">
918 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
919 has to add extra time to browsing.</title>
921 It should not slow you down any in real terms, and may actually help
922 speed things up since ads, banners and other junk are not being displayed.
923 The actual processing time required by <application>Privoxy</application>
924 itself for each page, is relatively small in the overall scheme of things,
925 and happens very quickly. This is typically more than offset by time saved
926 not downloading and rendering ad images.
930 <quote>Filtering</quote> via the <filename>filterfile</filename>
931 mechanism may cause a perceived slowdown, since the entire page is buffered
932 before displaying. See below.
939 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
940 delays in page requests compared to the old Junkbuster. What's wrong?</title>
942 Using the default filtering configuration, I noticed considerable delays in
943 page requests compared to the old Junkbuster. Loading pages with large contents
944 seemed to take forever, then suddenly delivering all the content at once.
947 The whole content must be loaded in order to filter, and nothing is is
948 sent to the browser during this time. The loading time does not really
949 change in real numbers, but the feeling is different, because most
950 browsers are able to start rendering incomplete content, giving the
951 user a feeling of "it works".
954 To modify the content of a page (i.e. make frames resizeable again, etc.) and
955 not just replace ads, <application>Privoxy</application> needs to download the
956 entire page first, do its content magic and then send the page to the browser.
961 <sect2 renderas="sect3" id="configurl"><title>What is the "http://p.p/"?</title>
963 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
964 programmed to handle certain pages specially.
968 With recent versions of <application>Privoxy</application> (version 2.9.x and
969 greater), you can get some information about
970 <application>Privoxy</application> and change some settings by going to
971 <ulink url="http://p.p/">http://p.p/</ulink> or, equivalently, <ulink
972 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> (Note
973 that p.p is far easier to type but may not work in some configurations. With
974 the name change to <application>Privoxy</application>, this is changed from
975 the previous http://i.j.b/ and earlier 2.9.x versions).
979 These pages are <emphasis>not</emphasis> forwarded to a server on the
980 Internet - instead they are handled by a special web server which is built in to
981 <application>Privoxy</application>.
985 If you are not running <application>Privoxy</application>, then <ulink
986 url="http://p.p/">http://p.p/</ulink> will fail, and <ulink
987 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> will
988 return a web page telling you you're not running
989 <application>Privoxy</application>.
993 If you have version 2.0.2, then the equivalent is
994 http://example.com/show-proxy-args (but you get far less information, and
995 you should really consider upgrading to &p-version;).
1000 FIXME: commented out until we have data. HB 03/18/02.
1002 <sect2 renderas="sect3" id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
1010 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1012 No, not by this name. The format of the blocklists has changed
1013 significantly in versions 2.9.x and later. This functionality
1014 is done by the <quote>actions</quote> file now. See next question ...
1018 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads?</title>
1020 Beginning with <application>Privoxy v2.9.14</application>, missed ads and
1021 banners and other actions file problems, can be submitted by accessing
1022 <ulink url="javascript:void(window.open('http://www.privoxy.org/actions','Feedback','width=600,scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no').focus());"><quote>actions file feedback system</quote></ulink>
1023 from <ulink url="http://p.p/">http://p.p/</ulink>
1024 There will soon be an easy way to update your actions file as well.
1027 This does not work with earlier versions of <application>Privoxy</application>
1028 or <application>Junkbuster</application>.
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 answers back 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.45 2002/04/08 22:59:26 hal9
1438 Version update. Spell chkconfig correctly :)
1440 Revision 1.44 2002/04/07 21:24:29 hal9
1441 Touch up on name change.
1443 Revision 1.43 2002/04/04 21:59:53 hal9
1444 Added NT/W2K service/icon situation.
1446 Revision 1.42 2002/04/04 18:46:47 swa
1447 consistent look. reuse of copyright, history et. al.
1449 Revision 1.41 2002/04/04 06:48:37 hal9
1450 Structural changes to allow for conditional inclusion/exclusion of content
1451 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
1452 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
1453 eventually be set by Makefile.
1454 More boilerplate text for use across multiple docs.
1456 Revision 1.40 2002/04/03 04:22:03 hal9
1457 Fixed several typos.
1459 Revision 1.39 2002/04/03 03:53:03 hal9
1460 Revert some changes, and then make some news, to layout, and appearance.
1462 Revision 1.38 2002/04/02 03:49:10 hal9
1463 Major changes to doc structure and layout. Sections are not automatically
1464 numbered now. TOC is on page by itself.
1466 Revision 1.37 2002/04/01 16:24:07 hal9
1467 -Rework of supported Q/A.
1468 -Set up entities to include boilerplate text.
1470 Revision 1.36 2002/03/31 23:18:47 hal9
1471 More on dealing with BLOCKED.
1473 Revision 1.35 2002/03/30 04:14:19 hal9
1474 Fix privoxy.org/config links.
1476 Revision 1.34 2002/03/29 04:35:56 hal9
1479 Revision 1.33 2002/03/29 01:31:48 hal9
1480 Several new Q/A's and other touch ups.
1482 Revision 1.32 2002/03/27 00:57:03 hal9
1483 Touch ups for name change.
1485 Revision 1.31 2002/03/26 22:29:55 swa
1486 we have a new homepage!
1488 Revision 1.30 2002/03/25 16:39:22 hal9
1489 A few new sections. Made all links relative to user-manual.
1491 Revision 1.29 2002/03/25 05:23:57 hal9
1492 Moved section, and touch ups.
1494 Revision 1.28 2002/03/25 04:27:33 hal9
1495 New section related to name change.
1497 Revision 1.25 2002/03/24 16:08:08 swa
1498 we are too lazy to make a block-built
1499 privoxy logo. hence removed the option.
1501 Revision 1.24 2002/03/24 15:46:20 swa
1502 name change related issue.
1504 Revision 1.23 2002/03/24 12:33:01 swa
1507 Revision 1.22 2002/03/24 11:51:00 swa
1508 name change. changed filenames.
1510 Revision 1.21 2002/03/24 11:01:06 swa
1513 Revision 1.20 2002/03/23 15:13:11 swa
1514 renamed every reference to the old name with foobar.
1515 fixed "application foobar application" tag, fixed
1516 "the foobar" with "foobar". left junkbustser in cvs
1517 comments and remarks to history untouched.
1519 Revision 1.19 2002/03/21 17:01:54 hal9
1522 Revision 1.18 2002/03/18 16:40:31 hal9
1525 Revision 1.17 2002/03/18 03:53:53 hal9
1528 Revision 1.16 2002/03/17 21:32:56 hal9
1529 A few more additions.
1531 Revision 1.15 2002/03/17 07:25:59 hal9
1532 Correcting some of my typos, and some additions.
1534 Revision 1.14 2002/03/17 02:39:13 hal9
1535 A little more added ...
1537 Revision 1.13 2002/03/17 00:22:20 hal9
1538 Adding new stuff, and trying to incorporate stuff from old faq.
1540 Revision 1.12 2002/03/11 20:13:21 swa
1543 Revision 1.11 2002/03/11 18:42:27 swa
1546 Revision 1.10 2002/03/11 13:13:27 swa
1547 correct feedback channels
1549 Revision 1.9 2002/03/10 23:34:04 swa
1550 more info on not hiding ip address
1552 Revision 1.8 2002/03/09 15:55:48 swa
1553 added default config section
1555 Revision 1.7 2002/03/07 18:16:55 swa
1558 Revision 1.6 2002/03/07 13:16:31 oes
1559 Committing changes by Stefan
1561 Revision 1.5 2002/03/02 15:50:04 swa
1562 2.9.11 version. more input for docs.
1564 Revision 1.4 2002/02/24 14:34:24 jongfoster
1565 Formatting changes. Now changing the doctype to DocBook XML 4.1
1566 will work - no other changes are needed.
1568 Revision 1.3 2001/09/23 10:13:48 swa
1569 upload process established. run make webserver and
1570 the documentation is moved to the webserver. documents
1571 are now linked correctly.
1573 Revision 1.2 2001/09/13 15:20:17 swa
1574 merged standards into developer manual
1576 Revision 1.1 2001/09/12 15:36:41 swa
1577 source files for junkbuster documentation
1579 Revision 1.3 2001/09/10 17:43:59 swa
1580 first proposal of a structure.
1582 Revision 1.2 2001/06/13 14:28:31 swa
1583 docs should have an author.
1585 Revision 1.1 2001/06/13 14:20:37 swa
1586 first import of project's documentation for the webserver.