1 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN"[
2 <!entity % dummy "IGNORE">
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.49 2002/04/12 10:10:18 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'>
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.49 2002/04/12 10:10:18 swa 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]]>.
93 Test of text doc only.
99 <!-- Include privoxy.sgml boilerplate: -->
101 <!-- end boilerplate -->
104 You can find the latest version of the document at <ulink
105 url="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/</ulink>.
106 Please see the Contact section if you want to contact the developers.
110 <!-- Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
115 <!-- ~~~~~ New section ~~~~~ -->
116 <sect1 id="intro" label=""><title></title>
117 <!-- dummy section to force TOC on page by itself -->
118 <!-- DO NOT REMOVE! please ;) -->
122 <!-- ~~~~~ New section ~~~~~ -->
124 <sect1 label="1" id="general"><title>General Information</title>
126 <sect2 renderas="sect3" id="newjb"><title>What is this new version of <application>Privoxy</application>?</title>
128 The original <application><trademark>Internet
129 Junkbuster</trademark></application> (tm) is a copyrighted product of <ulink
130 url="http://www.junkbusters.com">Junkbusters Corporation</ulink>.
131 Development of this effort stopped some time ago as of version 2.0.2. Stefan
132 Waldherr started the ijbswa project on <ulink
133 url="http://sourceforge.net/projects/ijbswa/">Sourceforge</ulink> to
134 rekindle development. Other developers subsequently joined with Stefan, and
135 have since added many new features, refinements and enhancements. The result
136 of this effort is <application>Privoxy</application>.
139 <application>Privoxy</application> has evolved from the
140 <application>Junkbuster 2.0.2</application> code base, and has advanced
141 significantly at this point.
144 Please see the <link linkend="copyright">History section</link> for more
145 information on the history of <application>Junkbuster</application> and
146 <application>Privoxy</application>.
152 <sect2 renderas="sect3">
153 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why a name change at all?</title>
155 <application>Privoxy</application> is the
156 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>.
159 There are potential legal complications from the continued use of the
160 <application>Junkbuster</application> name, which is a registered trademark of
161 <ulink url="http://junkbusters.com">Junkbusters Corporation</ulink>.
162 And thus they <quote>own</quote> the rights to the name.
163 (There are, however, no objections from Junkbusters Corporation to the
164 <application>Privoxy</application> project itself, and they, in fact, still
165 share our ideals and goals.)
169 The developers also believed that there are so many changes from the original
170 code, that it was time to make a clean break from the past and make
171 a name in their own right<![%p-not-stable;[, especially now with the pending
172 release of version 3.0]]>.
177 <sect2 renderas="sect3" id="differs"><title>How does <application>Privoxy</application> differ
178 from the old <application>Junkbuster?</application></title>
180 <application>Privoxy</application> picks up where
181 <application>Junkbuster</application> left off. All the old features remain.
182 The new <application>Privoxy</application> still blocks ads and banners,
183 still manages cookies, and still helps protect your privacy. But, these are
184 all enhanced, and many new features have been added, all in the same vein.
187 The configuration has changed significantly as well. This is something that
188 users will notice right off the bat if you are upgrading from
189 <application>Junkbuster</application> 2.0.x. The <quote>blocklist</quote>
190 file does not exist any more. This is replaced by <quote>actions</quote>
191 files, such as <filename>default.actions</filename>. This is where most of
192 the per site configuration is now.
196 <sect2 renderas="sect3" id="features"><title>What are some of the new features?</title>
197 <!-- Include newfeatures.sgml: -->
203 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
204 <application>Privoxy</application> work? </title>
206 When you connect to a web site with <application>Privoxy</application>,
207 you are really connecting to your locally running version of
208 <application>Privoxy</application>. <application>Privoxy</application>
209 intercepts your requests for the web page, and relays that to the
210 <quote>real</quote> web site. The web site sends the HTTP data stream
211 back to <application>Privoxy</application>, where
212 <application>Privoxy</application> can work its magic before it
213 relays this data back to your web browser.
217 Since <application>Privoxy</application> sits between you and the
218 WWW, it is in a position to intercept and completely manage all web traffic and
219 HTTP content before it gets to your browser.
220 <application>Privoxy</application> uses various programming methods to do
221 this, all of which is under your control via the various configuration
226 There are many kinds of proxies. <application>Privoxy</application> best
227 fits the <quote>filtering proxy</quote> category.
233 <sect2 renderas="sect3">
234 <title id="knows">How does <application>Privoxy</application> know what is
235 an ad, and what is not?</title>
237 <application>Privoxy</application> processes all the raw content of every
238 web page. So it reads everything on each page. It then compares this to the
239 rules as set up in the configuration files, and looks for any matches to
240 these rules. <application>Privoxy</application> makes heavy use of
241 <quote>regular expressions</quote>. (If you are not familiar with regular
242 expressions, it is explained briefly in <ulink
243 url="../user-manual/appendix.html">the user manual</ulink>.) Regular
244 expressions facilitate matching of one text string against another, using
245 wildcards to build complex patterns. So <application>Privoxy</application>
246 will typically look for URLs and other content that match certain key words
247 and expressions as defined in the configuration files. For instance a URL
248 that contains <quote>/banners</quote>, has a high probability of containing
249 ad banners, and thus would be a prime candidate to have a matching rule.
252 So <application>Privoxy</application> will look for these kinds of obvious
253 looking culprits. And also, will use lists of known organizations that
254 specialize in ads. Again, using complex patterns to match as many potential
255 combinations as possible since there tend to be many, many variations used by
256 advertisers, and new ones are being introduced all the time.
260 <sect2 renderas="sect3">
261 <title id="mistakes">Can <application>Privoxy</application> make mistakes?
262 This does not sound very scientific.</title>
264 Actually, it's a black art ;-) And yes, it is always possible to have a broad rule
265 accidentally block something by mistake. There is a good chance you may run
266 into such a situation at some point. It is tricky writing rules to cover
267 every conceivable possibility, and not occasionally get false positives.
271 But this should not be a big concern since the
272 <application>Privoxy</application> configuration is very flexible, and
273 includes tools to help identify these types of situations so they can be
274 addressed as needed, allowing you to customize your installation.
275 (<link linkend="badsite">See the Troubleshooting section below</link>.)
281 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
282 <application>Privoxy</application>. Why should I use
283 <application>Privoxy</application> at all?</title>
285 Modern browsers do indeed have <emphasis>some</emphasis> of the same
286 functionality as <application>Privoxy</application>. Maybe this is
287 adequate for you. But <application>Privoxy</application> is much more
288 versatile and powerful, and can do a number of things that browsers just can't.
291 In addition, a proxy is good choice if you use multiple browsers, or
292 have a LAN with multiple computers. This way all the configuration
293 is in one place, and you don't have to maintain a similar configuration
294 for possibly many browsers.
301 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
302 warranty? Registration?</title>
304 <application>Privoxy</application> is licensed under the GNU General Public
305 License (GPL). It is free to use, copy, modify or distribute as you wish
306 under the terms of this license. Please see the Copyright section for more
307 information on the license and copyright.
311 There is no warranty of any kind, expressed, implied or otherwise. That is
312 something that would cost real money ;-) There is no registration either.
313 <application>Privoxy</application> really is <emphasis>free</emphasis>
320 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what do I do?</title>
322 <sect3 renderas="sect4" id="jointeam-money"><title>Money Money Money</title>
324 We, of course, welcome donations and use the money for domain registering,
325 regular world-wide get-togethers (hahaha). Anyway, we'll soon describe the
326 process how to donate money to the team.
330 <sect3 renderas="sect4" id="jointeam-work"><title>You want to work with us?</title>
332 Well, helping the team is always a good idea. We welcome new developers,
333 RPM gurus or documentation makers. Simply get an account on sourceforge.net
334 and mail your id to the developer mailing list. Then read the
335 section Quickstart in the <ulink url="../developer-manual/quickstart.html">
336 Developer's Manual</ulink>.
339 Once we have added you to the team, you'll have write access to the CVS
340 repository, and together we'll find a suitable task for you.
349 <!-- ~~~~~ New section ~~~~~ -->
351 <sect1 label="2" id="installation"><title>Installation</title>
353 <sect2 renderas="sect3" id="whichbrowsers">
354 <title>Which browsers are supported by <application>Privoxy</application>?</title>
356 Any browser that can be configured to use a <quote>proxy</quote>, which
357 should be virtually all browsers. Direct browser support is not necessary
358 since <application>Privoxy</application> runs as a separate application and
359 just exchanges standard HTML data with your browser, just like a web server
364 <sect2 renderas="sect3" id="whichos">
365 <title>Which operating systems are supported?</title>
367 Include supported.sgml here:
372 <sect2 renderas="sect3" id="newinstall"><title>Can I install
373 <application>Privoxy</application> over <application>Junkbuster</application>?</title>
375 We recommend you uninstall <application>Junkbuster</application>
376 first to minimize conflicts and confusion. You may want to
377 save your old configuration files for future reference. The configuration
378 is substantially changed.
382 url="../user-manual/index.html">user-manual</ulink> for
383 platform specific installation instructions.
386 Note: Some installers may automatically uninstall
387 <application>Junkbuster</application>, if present!
392 <sect2 renderas="sect3">
393 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything
394 special I have to do now?</title>
397 All browsers must be told to use <application>Privoxy</application>
398 as a proxy by specifying the correct proxy address and port number
399 in the appropriate configuration area for the browser. See below.
400 Also, you should flush your browser's memory and disk cache to get rid of any
408 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
410 If you set up the <application>Privoxy</application> to run on
411 the computer you browse from (rather than your ISP's server or some
412 networked computer on a LAN), the proxy will be on <quote>localhost</quote>
413 (which is the special name used by every computer on the Internet to refer
414 to itself) and the port will be 8118 (unless you have <application>Privoxy</application> to run on a different port with the
415 <emphasis>listen-address</emphasis> config option).
418 When configuring your browser's proxy settings you typically enter
419 the word <quote>localhost</quote> in the boxes next to <quote>HTTP</quote>
420 and <quote>Secure</quote> (HTTPS) and then the number <quote>8118</quote>
421 for <quote>port</quote>. This tells your browser to send all web
422 requests to <application>Privoxy</application> instead of directly to the
426 <application>Privoxy</application> can also be used to proxy for
427 a Local Area Network. In this case, your would enter either the IP
428 address of the LAN host where <application>Privoxy</application>
429 is running, or the equivalent hostname. Port assignment would be
433 <application>Privoxy</application> does not currently handle
434 protocols such as FTP, SMTP, IM, IRC, ICQ, or other Internet
439 <sect2 renderas="sect3">
440 <title id="nothing">I just installed <application>Privoxy</application>, and nothing is happening.
441 All the ads are there. What's wrong?</title>
444 Did you configure your browser to use <application>Privoxy</application>
445 as a proxy? It does not sound like it. See above. You might also try flushing
446 the browser's caches to force a full re-reading of pages. You can verify
447 that <application>Privoxy</application> is running, and your browser
448 is correctly configured by entering the special URL:
449 <ulink url="http://p.p/">http://p.p/</ulink>. This should give you
450 a banner that says <quote>This is Privoxy</quote> and
451 access to <application>Privoxy's</application> internal configuration.
452 If you see this, then you are good to go. If not, the browser or
453 <application>Privoxy</application> are not set up correctly.
462 <!-- ~~~~~ New section ~~~~~ -->
464 <sect1 label="3" id="configuration"><title>Configuration</title>
466 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
468 There are major changes to <application>Junkbuster</application>/
469 <application>Privoxy</application> configuration from version 2.0.x to
470 2.9.x and later. Most of the older files will not work at all. This is
471 especially true of <filename>blocklist</filename>. If this is the case, you
472 will need to re-enter your old data into the new configuration structure.
473 This is probably also a good recommendation even if upgrading from 2.9.x to
474 3.x since there were many minor changes along the way.
478 <sect2 renderas="sect3">
479 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
482 <quote>actions</quote> files are where various actions that
483 <application>Privoxy</application> might take, are configured.
484 Typically, you would define a set of default actions that apply
485 to all URLs, then add exceptions to these defaults.
489 Actions can be defined on a per site basis, or for groups of sites. Actions
490 can also be grouped together and then applied to one or more sites. There
491 are many possible actions that might apply to any given site. As an example,
492 if we are blocking cookies as one of our default
493 <application>actions</application>, but need to accept cookies from a given
494 site, we would define this in our <quote>actions</quote> file.
499 <application>Privoxy</application> comes with several default
500 <application>actions</application> files, with varying degrees
501 of filtering and blocking, as starting points for your own
502 configuration (see below).
507 <sect2 renderas="sect3" id="actionss">
508 <title>The <quote>actions</quote> concept confuses me. Please list
509 some of these <quote>actions</quote>.</title>
511 These are all explained in the
512 <ulink url="../user-manual/configuration.html#ACTIONS-FILE">user-manual</ulink>.
513 Please refer to that.
518 <sect2 renderas="sect3">
519 <title id="actconfig">How are actions files configured? What is the easiest
520 way to do this?</title>
523 The easiest way to do this, is to access <application>Privoxy</application>
524 with your web browser at <ulink url="http://p.p/">http://p.p/</ulink>,
526 "<ulink url="http://config.privoxy.org">Edit the actions list</ulink>"
527 from the selection list. You can also do this by editing the appropriate
528 file with a text editor.
534 url="../user-manual/configuration.html#ACTIONS-FILE">user-manual</ulink> for a
535 detailed explanation of these and other configuration files, and their
536 various options and syntax.
542 FIXME: Commenting these out until we have some data there. HB 03/17/02.
544 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo account work?</title>
550 <sect2 renderas="sect3" id="hotmail"> <title>How can I make my Hotmail account work?</title>
556 <sect2 renderas="sect3" id="gmx"> <title>How can I make my GMX account work?</title>
563 <sect2 renderas="sect3" id="configfiles"> <title>What are the differences between
564 intermediate.action, basic.action, etc.?</title>
566 Configuring <application>Privoxy</application> is not easy. To help you get
567 started, we provide you with three different default configurations. The
568 following table shows you, which features are enabled in each configuration.
571 <table frame=all><title>Default Configurations</title>
572 <tgroup cols=5 align=left colsep=1 rowsep=1>
580 <entry>Feature</entry>
581 <entry>default.action</entry>
582 <entry>basic.action</entry>
583 <entry>intermediate.action</entry>
584 <entry>advanced.action</entry>
590 <!-- <entry>f1</entry> -->
591 <!-- <entry>f2</entry> -->
592 <!-- <entry>f3</entry> -->
593 <!-- <entry>f4</entry> -->
594 <!-- <entry>f5</entry> -->
601 <entry>ad-filtering</entry>
609 <entry>blank image</entry>
617 <entry>de-animate GIFs</entry>
625 <entry>referer forging</entry>
633 <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
641 <entry>no-popup windows</entry>
649 <entry>fast redirects</entry>
657 <entry>hide-referrer</entry>
665 <entry>hide-useragent</entry>
673 <entry>content-modification</entry>
681 <entry>feature-x</entry>
689 <entry>feature-y</entry>
697 <entry>feature-z</entry>
710 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration with a
711 browser? Does that not raise security issues?</title>
713 What I don't understand, is how I can browser edit the config file as a
714 regular user, while the whole <filename>/etc/privoxy</filename> hierarchy
715 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
718 When you use the browser-based editor, <application>Privoxy</application>
719 itself is writing to the config files. Because
720 <application>Privoxy</application> is running as the user <quote>privoxy</quote>, it can
721 update the config files.
724 If you don't like this, setting <quote>enable-edit-actions 0</quote> in the
725 config file will disable the browser-based editor. If you're that paranoid,
726 you should also consider setting <quote>enable-remote-toggle 0</quote> to prevent
727 browser-based enabling/disabling of <application>Privoxy</application>.
730 Note that normally only local users can connect to
731 <application>Privoxy</application>, so this is not (normally) a security
737 <sect2 renderas="sect3">
738 <title id="filterfile">What is <quote>default.filter</quote>?</title>
740 The <quote>default.filter</quote> file is used to <quote>filter</quote> any
741 web page content. By <quote>filtering</quote> we mean it can modify, remove,
742 or change <emphasis>anything</emphasis> on the page, including HTML tags, and
743 JavaScript. Regular expressions are used to accomplish this, and operate
744 on a line by line basis. This is potentially a very powerful feature, but
745 requires some expertise.
749 If you are familiar with regular expressions, and HTML, you can look at
750 the provided <filename>default.filter</filename> with a text editor and see
751 some of things it can be used for.
755 Presently, there is no GUI editor option for this part of the configuration,
756 but you can disable/enable various sections of the included default
757 file with the <quote>Actions List Editor</quote> from your browser.
762 <sect2 renderas="sect3">
763 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
766 By default, <application>Privoxy</application> only responds to requests
767 from localhost. To have it act as a server for a network, this needs to be
768 changed in the main config file where the <application>Privoxy</application>
769 configuration is located. In that file is a <quote>listen-address</quote>
770 option. It may be commented out with a <quote>#</quote> symbol. Make sure
771 it is uncommented, and assign it the address of the LAN gateway interface,
772 and port number to use:
777 listen-address 192.168.1.1:8118
782 Save the file, and restart <application>Privoxy</application>. Configure
783 all browsers on the network then to use this address and port number.
789 <sect2 renderas="sect3">
790 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
792 This is a configuration option for images that
793 <application>Privoxy</application> is stopping. You have the choice <!-- of
794 the --> <!-- <application>Privoxy</application> logo, --> of a checkerboard
795 pattern, a transparent 1x1 GIF image (aka <quote>blank</quote>), or a custom
796 URL of your choice. Note that to fit this category, the URL must match both
797 the <quote>+image</quote> and <quote>+block</quote> actions.
801 If you want to see nothing, then change the <quote>+image-blocker</quote>
802 action to <quote>+image-blocker{blank}</quote>. This can be done from the
803 <quote>Edit Actions List</quote> selection at <ulink
804 url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate
805 actions file. This will only effect what is defined as <quote>images</quote>
806 though. Also, some URLs that generate the bright red <quote>Blocked</quote>
807 banner, can be moved to the <quote>+image-blocker</quote> section for the
808 same reason, but there are some limits and risks to this (see below).
814 <sect2 renderas="sect3">
815 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
817 This can be helpful for troubleshooting problems. It might also be good
818 for anyone new to <application>Privoxy</application> so that they can
819 see if their favorite pages are displaying correctly, and
820 <application>Privoxy</application> is not inadvertently removing something
826 <sect2 renderas="sect3">
827 <title id="blockedisugly">I see large red banners on some pages that say
828 <quote>Blocked</quote>. Why and how do I get rid of this?</title>
830 These are URLs that match something in one of
831 <application>Privoxy's</application> block actions (+block). It is meant
832 to be a warning so that you know something has been blocked and an easy way
833 for you to see why. These are handled differently than what has been defined
834 explicitly as <quote>images</quote> (e.g. ad banners). Depending on the
835 URL itself, it is sometimes hard for <application>Privoxy</application> to
836 really know whether there is indeed an ad image there or not. And there are
837 limitations as to what <application>Privoxy</application> can do to
838 <quote>fool</quote> the browser.
842 For instance, if the ad is in a frame, then it is embedded in the separate
843 HTML page used for the frame. In this case, you cannot just substitute an
844 aribitray image (like we would for a <quote>blank</quote> image), for an HTML
845 page. The browser is expecting an HTML page, and that is what it must have
846 for frames. So this situation can be a little trickier to deal with, and
847 <application>Privoxy</application> will use the <quote>Blocked</quote> page.
851 If you want these to be treated as if they were images, so that they can be
852 made invisible, you can try moving the offending URL from the
853 <quote>+block</quote> section to the <quote>+imageblock</quote> section of
854 your actions file. Just be forewarned, if any URL is made
855 <quote>invisible</quote>, you may not have any inkling that something has
856 been removed from that page, or why. If this approach does not work, then you are
857 probably dealing with a frame (or <quote>ilayer</quote>), and the only thing
858 that can go there is an HTML page of some sort.
861 To deal with this situation, you could modify the
862 <quote><filename>block</filename></quote> HTML template that is used by
863 <application>Privoxy</application> to display this, and make it something
864 more to your liking. Currently, there is no configuration option for this.
865 You will have to modify, or create your own page, and use this to replace
866 <filename>templates/blocked</filename>, which is what
867 <application>Privoxy</application> uses to display the <quote>Blocked</quote>
871 Another way to deal with this is find why and where
872 <application>Privoxy</application> is blocking the frame, and
873 diable this. Then let the <quote>+image-blocker</quote> action
874 handle the ad that is embedded in the frame's HTML page.
879 <sect2 renderas="sect3" id="alliseeisred">
880 <title>I cannot see all of the <quote>Blocked</quote> page banner. All I
881 see is a bright red square.</title>
883 There is not enough space to fit the entire page. Try right clicking on the
884 visible, red portion, and select <quote>Show Frame</quote>, or equivalent.
885 This will usually allow you to see the entire Privoxy <quote>Blocked</quote>
886 page, and from there you can see just what is being blocked, and why.
890 <sect2 renderas="sect3" id="srvany">
891 <title>Can <application>Privoxy</application> run as a service
894 Yes, it can run as a system service using <command>srvany.exe</command>.
895 The only catch is that this will effectively disable the
896 <application>Privoxy</application> icon in the taskbar. You can have
897 one or the other, but not both at this time :(
900 There is a pending feature request for this functionality. See
902 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>,
903 for details, and a sample configuration.
909 <sect2 renderas="sect3" id="otherproxy">
910 <title>How can I make <application>Privoxy</application> work with other
911 proxies like <application>Squid</application>?</title>
913 This can be done. See the <ulink
914 url="../user-manual/configuration.html#FORWARDING">user manual</ulink>,
915 which describes how to do this.
923 <!-- ~~~~~ New section ~~~~~ -->
925 <sect1 label="4"id="misc"><title>Miscellaneous</title>
927 <sect2 renderas="sect3">
928 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
929 has to add extra time to browsing.</title>
931 It should not slow you down any in real terms, and may actually help
932 speed things up since ads, banners and other junk are not being displayed.
933 The actual processing time required by <application>Privoxy</application>
934 itself for each page, is relatively small in the overall scheme of things,
935 and happens very quickly. This is typically more than offset by time saved
936 not downloading and rendering ad images.
940 <quote>Filtering</quote> via the <filename>filterfile</filename>
941 mechanism may cause a perceived slowdown, since the entire page is buffered
942 before displaying. See below.
949 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
950 delays in page requests compared to the old Junkbuster. What's wrong?</title>
952 Using the default filtering configuration, I noticed considerable delays in
953 page requests compared to the old Junkbuster. Loading pages with large contents
954 seemed to take forever, then suddenly delivering all the content at once.
957 The whole content must be loaded in order to filter, and nothing is is
958 sent to the browser during this time. The loading time does not really
959 change in real numbers, but the feeling is different, because most
960 browsers are able to start rendering incomplete content, giving the
961 user a feeling of "it works".
964 To modify the content of a page (i.e. make frames resizeable again, etc.) and
965 not just replace ads, <application>Privoxy</application> needs to download the
966 entire page first, do its content magic and then send the page to the browser.
971 <sect2 renderas="sect3" id="configurl"><title>What is the "http://p.p/"?</title>
973 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
974 programmed to handle certain pages specially.
978 With recent versions of <application>Privoxy</application> (version 2.9.x and
979 greater), you can get some information about
980 <application>Privoxy</application> and change some settings by going to
981 <ulink url="http://p.p/">http://p.p/</ulink> or, equivalently, <ulink
982 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> (Note
983 that p.p is far easier to type but may not work in some configurations. With
984 the name change to <application>Privoxy</application>, this is changed from
985 the previous http://i.j.b/ and earlier 2.9.x versions).
989 These pages are <emphasis>not</emphasis> forwarded to a server on the
990 Internet - instead they are handled by a special web server which is built in to
991 <application>Privoxy</application>.
995 If you are not running <application>Privoxy</application>, then <ulink
996 url="http://p.p/">http://p.p/</ulink> will fail, and <ulink
997 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> will
998 return a web page telling you you're not running
999 <application>Privoxy</application>.
1003 If you have version 2.0.2, then the equivalent is
1004 http://example.com/show-proxy-args (but you get far less information, and
1005 you should really consider upgrading to &p-version;).
1010 FIXME: commented out until we have data. HB 03/18/02.
1012 <sect2 renderas="sect3" id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
1020 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1022 No, not by this name. The format of the blocklists has changed
1023 significantly in versions 2.9.x and later. This functionality
1024 is done by the <quote>actions</quote> file now. See next question ...
1028 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads?</title>
1030 Beginning with <application>Privoxy v2.9.14</application>, missed ads and
1031 banners and other actions file problems, can be submitted by accessing
1032 <ulink url="javascript:w=Math.floor(screen.width/2);h=Math.floor(screen.height*0.9);void(window.open('http://www.privoxy.org/actions','Feedback','screenx='+w+',width='+w+',height='+h+',scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no').focus());"><quote>actions file feedback system</quote></ulink>
1033 from <ulink url="http://p.p/">http://p.p/</ulink>.
1037 This process does not work with earlier versions of <application>Privoxy</application>
1038 or <application>Junkbuster</application>.
1042 There will soon be regularly updated actions files posted. These
1043 will be announced on the
1045 url="http://lists.sourceforge.net/lists/listinfo/ijbswa-announce">ijbswa-announce</ulink>
1051 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1053 You cannot hide your IP address with <application>Privoxy</application> or any other software, since
1054 the server needs to know your IP address to send the answers back to you.
1057 Fortunately there are many publicly usable anonymous proxies out there, which
1058 solve the problem by providing a further level of indirection between you and
1059 the web server, shared by many people and thus letting your requests "drown"
1060 in white noise of unrelated requests as far as user tracking is concerned.
1063 Most of them will, however, log your IP address and make it available to the
1064 authorities in case you abuse that anonymity for criminal purposes. In fact
1065 you can't even rule out that some of them only exist to *collect* information
1066 on (those suspicious) people with a more than average preference for privacy.
1069 You can find a list of anonymous public proxies at <ulink
1070 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
1071 more through Google.
1075 <!-- <sect2 renderas="sect3" id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
1077 <!-- Anytime <application>Privoxy</application> determines (with the help of the blocklist) that a URL -->
1078 <!-- contains an advertisement, it has to decide whether this advertisement is an -->
1079 <!-- image or not. <application>Privoxy</application> uses the imagefile for that purpose. -->
1083 <sect2 renderas="sect3">
1084 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1086 No. Your chances of remaining anonymous are greatly improved, but unless you
1087 are an expert on Internet security it would be safest to assume that
1088 everything you do on the Web can be traced back to you.
1091 <application>Privoxy</application> can remove various information about you,
1092 and allows <emphasis>you</emphasis> more freedom to decide which sites
1093 you can trust, and what details you want to reveal. But it's still possible
1094 that web sites can find out who you are. Here's one way this can happen.
1097 A few browsers disclose the user's email address in certain situations, such
1098 as when transferring a file by FTP. <application>Privoxy</application>
1099 does not filter FTP. If you need this feature, or are concerned about the
1100 mail handler of your browser disclosing your email address, you might
1101 consider products such as <application>NSClean</application>.
1104 Browsers available only as binaries could use non-standard headers to give
1105 out any information they can have access to: see the manufacturer's license
1106 agreement. It's impossible to anticipate and prevent every breach of privacy
1107 that might occur. The professionally paranoid prefer browsers available as
1108 source code, because anticipating their behavior is easier. Trust the source,
1114 <sect2 renderas="sect3">
1115 <title id="sitebreak">Might some things break because header information is
1116 being altered?</title>
1119 Definitely. More and more sites use HTTP header content to decide what to
1120 display and how to display it. There is many ways that this can be handled,
1121 so having hard and fast rules, is tricky.
1125 <quote>USER AGENT</quote> in particular is often used in this way to identify
1126 the browser, and adjust content accordingly. Changing this now is not
1127 recommended, since so many sites do look for this. You may get undesirable
1128 results by changing this.
1132 For instance, different browsers use different encodings of Russian and Czech
1133 characters, certain web servers convert pages on-the-fly according to the
1134 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1135 operating system or browser manufacturer causes some sites in these languages
1136 to be garbled; Surfers to Eastern European sites should change it to
1137 something closer. And then some page access counters work by looking at the
1138 <quote>REFERER</quote> header; they may fail or break if unavailable. The
1139 weather maps of Intellicast have been blocked by their server when no
1140 <quote>REFERER</quote> or cookie is provided, is another example. There are
1141 many, many other ways things can go wrong when trying to fool a web server.
1145 If you have problems with a site, you will have to adjust your configuration
1146 accordingly. Cookies are probably the most likely adjustment that may
1147 be required, but by no means the only one.
1153 <sect2 renderas="sect3">
1154 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1155 speed up web browsing?</title>
1157 No, it does not have this ability at all. You want something like
1158 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1159 before you ask, <application>Privoxy</application> can co-exist
1160 with other kinds of proxies like <application>Squid</application>.
1164 <sect2 renderas="sect3">
1165 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1167 Not in the way you mean, or in the way a true firewall can, or a proxy that
1168 has this specific capability. <application>Privoxy</application> can help
1169 protect your privacy, but not really protect you from intrusion attempts.
1174 <sect2 renderas="sect3">
1175 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky
1176 and ugly looking. Can't a better font be used?</title>
1179 This is not a font problem. The logo is an image that is created by
1180 <application>Privoxy</application> on the fly. So as to not waste
1181 memory, the image is rather small. The blockiness comes when the
1182 image is scaled to fill a largish area. There is not much to be done
1183 about this, other than to use one of the other
1184 <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>,
1185 <emphasis>blank</emphasis>, or a URL of your choosing.
1188 Given the above problem, we have decided to remove the logo option entirely
1194 <sect2 renderas="sect3">
1195 <title id="wasted">I have large empty spaces now where ads used to be.
1198 It would be easy enough to just eliminate this space altogether, rather than
1199 fill it with blank space. But, this would create problems with many pages
1200 that use the overall size of the ad to help organize the page layout and
1201 position the various components of the page where they were intended to be.
1202 It is best left this way.
1207 <sect2 renderas="sect3">
1208 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1210 This is a limitation since HTTPS transactions are encrypted SSL sessions
1211 between your browser and the secure site, and are meant to be reliably
1212 <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1213 header information are also encrypted from the time they leave your browser,
1214 to the site, and vice versa. <application>Privoxy</application> does not
1215 try to unencrypt this information, so it just passes through as is.
1216 <application>Privoxy</application> can still catch images and ads that
1217 are embedded in the SSL stream though.
1223 <sect2 renderas="sect3">
1224 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1225 secure is it? Do I need to take any special precautions?</title>
1227 There are no known exploits that might effect
1228 <application>Privoxy</application>. On Unix-like systems,
1229 <application>Privoxy</application> can run as a non-privileged
1230 user, which is how we recommend it be run. Also, by default
1231 <application>Privoxy</application> only listens to requests
1232 from <quote>localhost</quote>. The server aspect of
1233 <application>Privoxy</application> is not itself directly exposed to the
1234 Internet in this configuration. If you want to have
1235 <application>Privoxy</application> serve as a LAN proxy, this will have to
1236 be opened up to allow for LAN requests. In this case, we'd recommend
1237 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1238 <application>Privoxy</application> config file. All LAN hosts can then use
1239 this as their proxy address in the browser proxy configuration. In this way,
1240 <application>Privoxy</application> will not listen on any external ports.
1241 Of course, a firewall is always good too. Better safe than sorry.
1246 <sect2 renderas="sect3" id="turnoff">
1247 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1249 The easiest way is to access <application>Privoxy</application> with your
1250 browser by using the special URL: <ulink url="http://p.p/">http://p.p/</ulink>
1251 and select "Toggle Privoxy on or off" from that page.
1256 <sect2 renderas="sect3" id="seealso">
1257 <title>Where can I find more information about <application>Privoxy</application>
1258 and related issues?</title>
1259 <!-- Include seealso.sgml boilerplate: -->
1261 <!-- end boilerplate -->
1266 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1275 <!-- ~~~~~ New section ~~~~~ -->
1277 <sect1 label="5" id="trouble">
1278 <title>Troubleshooting</title>
1280 <sect2 renderas="sect3">
1281 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1282 with every web page?</title>
1284 Either <application>Privoxy</application> is not running, or your
1285 browser is configured for a different port than what
1286 <application>Privoxy</application> is using.
1290 The old <application>Privoxy</application> (and also
1291 <application>Junkbuster</application>) used port 8000 by
1292 default. This has been changed to port 8118 now, due to a conflict
1293 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1294 you need to change your browser to the new port number, or alternately
1295 change <application>Privoxy's</application> <quote>listen-address</quote>
1296 setting in the <filename>config</filename> file used to start
1297 <application>Privoxy</application>.
1302 <sect2 renderas="sect3">
1303 <title id="flushit">I just added a new rule, but the steenkin ad is
1304 still getting through. How?</title>
1306 If the ad had been displayed before you added its URL, it will probably be
1307 held in the browser's cache for some time, so it will be displayed without
1308 the need for any request to the server, and <application>Privoxy</application>
1309 will not be in the picture. The best thing to do is try flushing the browser's
1310 caches. And then try again.
1314 If this doesn't help, you probably have an error in the rule you
1315 applied. Try pasting the full URL of the offending ad into <ulink
1316 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1317 and see if any actions match your new rule.
1322 <sect2 renderas="sect3">
1323 <title id="badsite">One of my favorite sites does not work with <application>Privoxy</application>.
1324 What can I do?</title>
1327 First verify that it is indeed a <application>Privoxy</application> problem,
1328 by disabling <application>Privoxy</application> filtering and blocking.
1329 Go to <ulink url="http://p.p/">http://p.p/</ulink> and click on
1330 <quote>Toggle Privoxy On or Off</quote>, then disable it. Now try that
1331 page again. It's probably a good idea to flush the browser cache as well.
1335 If still a problem, go to <quote>Show which actions apply to a URL and
1336 why</quote> from <ulink url="http://p.p/">http://p.p/</ulink> and paste
1337 the full URL of the page in question into the prompt. See which actions are
1338 being applied to the URL. Now, armed with this information, go to <quote>Edit
1339 the actions list</quote>. Here you should see various sections that have
1340 various <application>Privoxy</application> features disabled for specific
1341 sites. Most disabled <quote>actions</quote> will have a <quote>-</quote> (minus
1342 sign) in front of them. Some aliases are used just to disable other actions,
1343 e.g. <quote>shop</quote> and <quote>fragile</quote>, and won't necessarily
1344 use a <quote>+</quote> or <quote>-</quote> sign. Add your problem page
1345 URL to one of these sections that looks like it is disabling the feature that
1346 is causing the problem. Rember to flush your browser's caches when making
1347 such changes! As a last resort, try <quote>fragile</quote> which
1348 disables most actions. Now re-try the page. There might be some trial and
1349 error involved. This is discussed in a little more detail in the <ulink
1350 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1355 Alternately, if you are comfortable with a text editor, you can accomplish
1356 the same thing by editing the appropriate <quote>actions</quote> file.
1361 <sect2 renderas="sect3" id="bugs">
1362 <title>Where can I get help? Report bugs? Feature Requests? Etc?</title>
1364 Feedback is encouraged, whether good, bad or ugly. Please see the contact
1365 page in the <ulink url="../user-manual/contact.html">user-manual</ulink> for
1372 <sect2 renderas="sect3">
1373 <title id="time">What time is it?</title>
1384 <!-- ~~~~~ New section ~~~~~ -->
1386 FIXME: Commented out until we have something to put here. HB 03/18/02.
1387 <sect1 id="knownissues"><title>Known Issues</title>
1394 <!-- ~~~~~ New section ~~~~~ -->
1395 <sect1 id="contact"><title>Contacting the developers, Bug Reporting and Feature Requests</title>
1396 <!-- Include contacting.sgml -->
1398 <!-- end contacting -->
1401 <!-- ~~~~~ New section ~~~~~ -->
1402 <sect1 id="copyright"><title>Copyright and History</title>
1404 <sect2><title>Copyright</title>
1405 <!-- Include copyright.sgml -->
1410 <sect2><title>History</title>
1411 <!-- Include history.sgml -->
1418 <!-- ~~~~~ New section ~~~~~ -->
1420 <sect1 id="seealso"><title>See also</title>
1422 <!-- Include seealso.sgml -->
1433 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
1435 Last modified: Mon Sep 10 19:22:09 CEST 2001
1437 This program is free software; you can redistribute it
1438 and/or modify it under the terms of the GNU General
1439 Public License as published by the Free Software
1440 Foundation; either version 2 of the License, or (at
1441 your option) any later version.
1443 This program is distributed in the hope that it will
1444 be useful, but WITHOUT ANY WARRANTY; without even the
1445 implied warranty of MERCHANTABILITY or FITNESS FOR A
1446 PARTICULAR PURPOSE. See the GNU General Public
1447 License for more details.
1449 The GNU General Public License should be included with
1450 this file. If not, you can view it at
1451 http://www.gnu.org/copyleft/gpl.html
1452 or write to the Free Software Foundation, Inc., 59
1453 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1456 Revision 1.49 2002/04/12 10:10:18 swa
1459 Revision 1.48 2002/04/10 18:45:15 swa
1462 Revision 1.47 2002/04/10 04:05:32 hal9
1465 Revision 1.45 2002/04/08 22:59:26 hal9
1466 Version update. Spell chkconfig correctly :)
1468 Revision 1.44 2002/04/07 21:24:29 hal9
1469 Touch up on name change.
1471 Revision 1.43 2002/04/04 21:59:53 hal9
1472 Added NT/W2K service/icon situation.
1474 Revision 1.42 2002/04/04 18:46:47 swa
1475 consistent look. reuse of copyright, history et. al.
1477 Revision 1.41 2002/04/04 06:48:37 hal9
1478 Structural changes to allow for conditional inclusion/exclusion of content
1479 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
1480 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
1481 eventually be set by Makefile.
1482 More boilerplate text for use across multiple docs.
1484 Revision 1.40 2002/04/03 04:22:03 hal9
1485 Fixed several typos.
1487 Revision 1.39 2002/04/03 03:53:03 hal9
1488 Revert some changes, and then make some news, to layout, and appearance.
1490 Revision 1.38 2002/04/02 03:49:10 hal9
1491 Major changes to doc structure and layout. Sections are not automatically
1492 numbered now. TOC is on page by itself.
1494 Revision 1.37 2002/04/01 16:24:07 hal9
1495 -Rework of supported Q/A.
1496 -Set up entities to include boilerplate text.
1498 Revision 1.36 2002/03/31 23:18:47 hal9
1499 More on dealing with BLOCKED.
1501 Revision 1.35 2002/03/30 04:14:19 hal9
1502 Fix privoxy.org/config links.
1504 Revision 1.34 2002/03/29 04:35:56 hal9
1507 Revision 1.33 2002/03/29 01:31:48 hal9
1508 Several new Q/A's and other touch ups.
1510 Revision 1.32 2002/03/27 00:57:03 hal9
1511 Touch ups for name change.
1513 Revision 1.31 2002/03/26 22:29:55 swa
1514 we have a new homepage!
1516 Revision 1.30 2002/03/25 16:39:22 hal9
1517 A few new sections. Made all links relative to user-manual.
1519 Revision 1.29 2002/03/25 05:23:57 hal9
1520 Moved section, and touch ups.
1522 Revision 1.28 2002/03/25 04:27:33 hal9
1523 New section related to name change.
1525 Revision 1.25 2002/03/24 16:08:08 swa
1526 we are too lazy to make a block-built
1527 privoxy logo. hence removed the option.
1529 Revision 1.24 2002/03/24 15:46:20 swa
1530 name change related issue.
1532 Revision 1.23 2002/03/24 12:33:01 swa
1535 Revision 1.22 2002/03/24 11:51:00 swa
1536 name change. changed filenames.
1538 Revision 1.21 2002/03/24 11:01:06 swa
1541 Revision 1.20 2002/03/23 15:13:11 swa
1542 renamed every reference to the old name with foobar.
1543 fixed "application foobar application" tag, fixed
1544 "the foobar" with "foobar". left junkbustser in cvs
1545 comments and remarks to history untouched.
1547 Revision 1.19 2002/03/21 17:01:54 hal9
1550 Revision 1.18 2002/03/18 16:40:31 hal9
1553 Revision 1.17 2002/03/18 03:53:53 hal9
1556 Revision 1.16 2002/03/17 21:32:56 hal9
1557 A few more additions.
1559 Revision 1.15 2002/03/17 07:25:59 hal9
1560 Correcting some of my typos, and some additions.
1562 Revision 1.14 2002/03/17 02:39:13 hal9
1563 A little more added ...
1565 Revision 1.13 2002/03/17 00:22:20 hal9
1566 Adding new stuff, and trying to incorporate stuff from old faq.
1568 Revision 1.12 2002/03/11 20:13:21 swa
1571 Revision 1.11 2002/03/11 18:42:27 swa
1574 Revision 1.10 2002/03/11 13:13:27 swa
1575 correct feedback channels
1577 Revision 1.9 2002/03/10 23:34:04 swa
1578 more info on not hiding ip address
1580 Revision 1.8 2002/03/09 15:55:48 swa
1581 added default config section
1583 Revision 1.7 2002/03/07 18:16:55 swa
1586 Revision 1.6 2002/03/07 13:16:31 oes
1587 Committing changes by Stefan
1589 Revision 1.5 2002/03/02 15:50:04 swa
1590 2.9.11 version. more input for docs.
1592 Revision 1.4 2002/02/24 14:34:24 jongfoster
1593 Formatting changes. Now changing the doctype to DocBook XML 4.1
1594 will work - no other changes are needed.
1596 Revision 1.3 2001/09/23 10:13:48 swa
1597 upload process established. run make webserver and
1598 the documentation is moved to the webserver. documents
1599 are now linked correctly.
1601 Revision 1.2 2001/09/13 15:20:17 swa
1602 merged standards into developer manual
1604 Revision 1.1 2001/09/12 15:36:41 swa
1605 source files for junkbuster documentation
1607 Revision 1.3 2001/09/10 17:43:59 swa
1608 first proposal of a structure.
1610 Revision 1.2 2001/06/13 14:28:31 swa
1611 docs should have an author.
1613 Revision 1.1 2001/06/13 14:20:37 swa
1614 first import of project's documentation for the webserver.