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.50 2002/04/26 05:25:23 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.50 2002/04/26 05:25:23 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]]>.
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>
564 <sect2 renderas="sect3" id="configfiles"> <title>What are the differences between
565 intermediate.action, basic.action, etc.?</title>
567 Configuring <application>Privoxy</application> is not easy. To help you get
568 started, we provide you with three different default configurations. The
569 following table shows you, which features are enabled in each configuration.
572 <table frame=all><title>Default Configurations</title>
573 <tgroup cols=5 align=left colsep=1 rowsep=1>
581 <entry>Feature</entry>
582 <entry>default.action</entry>
583 <entry>basic.action</entry>
584 <entry>intermediate.action</entry>
585 <entry>advanced.action</entry>
591 <!-- <entry>f1</entry> -->
592 <!-- <entry>f2</entry> -->
593 <!-- <entry>f3</entry> -->
594 <!-- <entry>f4</entry> -->
595 <!-- <entry>f5</entry> -->
602 <entry>ad-filtering</entry>
610 <entry>blank image</entry>
618 <entry>de-animate GIFs</entry>
626 <entry>referer forging</entry>
634 <entry>jon's +no-cookies-keep (i.e. session cookies only)</entry>
642 <entry>no-popup windows</entry>
650 <entry>fast redirects</entry>
658 <entry>hide-referrer</entry>
666 <entry>hide-useragent</entry>
674 <entry>content-modification</entry>
682 <entry>feature-x</entry>
690 <entry>feature-y</entry>
698 <entry>feature-z</entry>
713 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration with a
714 browser? Does that not raise security issues?</title>
716 What I don't understand, is how I can browser edit the config file as a
717 regular user, while the whole <filename>/etc/privoxy</filename> hierarchy
718 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
721 When you use the browser-based editor, <application>Privoxy</application>
722 itself is writing to the config files. Because
723 <application>Privoxy</application> is running as the user <quote>privoxy</quote>, it can
724 update the config files.
727 If you don't like this, setting <quote>enable-edit-actions 0</quote> in the
728 config file will disable the browser-based editor. If you're that paranoid,
729 you should also consider setting <quote>enable-remote-toggle 0</quote> to prevent
730 browser-based enabling/disabling of <application>Privoxy</application>.
733 Note that normally only local users can connect to
734 <application>Privoxy</application>, so this is not (normally) a security
740 <sect2 renderas="sect3">
741 <title id="filterfile">What is <quote>default.filter</quote>?</title>
743 The <quote>default.filter</quote> file is used to <quote>filter</quote> any
744 web page content. By <quote>filtering</quote> we mean it can modify, remove,
745 or change <emphasis>anything</emphasis> on the page, including HTML tags, and
746 JavaScript. Regular expressions are used to accomplish this, and operate
747 on a line by line basis. This is potentially a very powerful feature, but
748 requires some expertise.
752 If you are familiar with regular expressions, and HTML, you can look at
753 the provided <filename>default.filter</filename> with a text editor and see
754 some of things it can be used for.
758 Presently, there is no GUI editor option for this part of the configuration,
759 but you can disable/enable various sections of the included default
760 file with the <quote>Actions List Editor</quote> from your browser.
765 <sect2 renderas="sect3">
766 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
769 By default, <application>Privoxy</application> only responds to requests
770 from localhost. To have it act as a server for a network, this needs to be
771 changed in the main config file where the <application>Privoxy</application>
772 configuration is located. In that file is a <quote>listen-address</quote>
773 option. It may be commented out with a <quote>#</quote> symbol. Make sure
774 it is uncommented, and assign it the address of the LAN gateway interface,
775 and port number to use:
780 listen-address 192.168.1.1:8118
785 Save the file, and restart <application>Privoxy</application>. Configure
786 all browsers on the network then to use this address and port number.
792 <sect2 renderas="sect3">
793 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
795 This is a configuration option for images that
796 <application>Privoxy</application> is stopping. You have the choice <!-- of
797 the --> <!-- <application>Privoxy</application> logo, --> of a checkerboard
798 pattern, a transparent 1x1 GIF image (aka <quote>blank</quote>), or a custom
799 URL of your choice. Note that to fit this category, the URL must match both
800 the <quote>+image</quote> and <quote>+block</quote> actions.
804 If you want to see nothing, then change the <quote>+image-blocker</quote>
805 action to <quote>+image-blocker{blank}</quote>. This can be done from the
806 <quote>Edit Actions List</quote> selection at <ulink
807 url="http://p.p/">http://p.p/</ulink>. Or by hand editing the appropriate
808 actions file. This will only effect what is defined as <quote>images</quote>
809 though. Also, some URLs that generate the bright red <quote>Blocked</quote>
810 banner, can be moved to the <quote>+image-blocker</quote> section for the
811 same reason, but there are some limits and risks to this (see below).
817 <sect2 renderas="sect3">
818 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
820 This can be helpful for troubleshooting problems. It might also be good
821 for anyone new to <application>Privoxy</application> so that they can
822 see if their favorite pages are displaying correctly, and
823 <application>Privoxy</application> is not inadvertently removing something
829 <sect2 renderas="sect3">
830 <title id="blockedisugly">I see large red banners on some pages that say
831 <quote>Blocked</quote>. Why and how do I get rid of this?</title>
833 These are URLs that match something in one of
834 <application>Privoxy's</application> block actions (+block). It is meant
835 to be a warning so that you know something has been blocked and an easy way
836 for you to see why. These are handled differently than what has been defined
837 explicitly as <quote>images</quote> (e.g. ad banners). Depending on the
838 URL itself, it is sometimes hard for <application>Privoxy</application> to
839 really know whether there is indeed an ad image there or not. And there are
840 limitations as to what <application>Privoxy</application> can do to
841 <quote>fool</quote> the browser.
845 For instance, if the ad is in a frame, then it is embedded in the separate
846 HTML page used for the frame. In this case, you cannot just substitute an
847 aribitray image (like we would for a <quote>blank</quote> image), for an HTML
848 page. The browser is expecting an HTML page, and that is what it must have
849 for frames. So this situation can be a little trickier to deal with, and
850 <application>Privoxy</application> will use the <quote>Blocked</quote> page.
854 If you want these to be treated as if they were images, so that they can be
855 made invisible, you can try moving the offending URL from the
856 <quote>+block</quote> section to the <quote>+imageblock</quote> section of
857 your actions file. Just be forewarned, if any URL is made
858 <quote>invisible</quote>, you may not have any inkling that something has
859 been removed from that page, or why. If this approach does not work, then you are
860 probably dealing with a frame (or <quote>ilayer</quote>), and the only thing
861 that can go there is an HTML page of some sort.
864 To deal with this situation, you could modify the
865 <quote><filename>block</filename></quote> HTML template that is used by
866 <application>Privoxy</application> to display this, and make it something
867 more to your liking. Currently, there is no configuration option for this.
868 You will have to modify, or create your own page, and use this to replace
869 <filename>templates/blocked</filename>, which is what
870 <application>Privoxy</application> uses to display the <quote>Blocked</quote>
874 Another way to deal with this is find why and where
875 <application>Privoxy</application> is blocking the frame, and
876 diable this. Then let the <quote>+image-blocker</quote> action
877 handle the ad that is embedded in the frame's HTML page.
882 <sect2 renderas="sect3" id="alliseeisred">
883 <title>I cannot see all of the <quote>Blocked</quote> page banner. All I
884 see is a bright red square.</title>
886 There is not enough space to fit the entire page. Try right clicking on the
887 visible, red portion, and select <quote>Show Frame</quote>, or equivalent.
888 This will usually allow you to see the entire Privoxy <quote>Blocked</quote>
889 page, and from there you can see just what is being blocked, and why.
893 <sect2 renderas="sect3" id="srvany">
894 <title>Can <application>Privoxy</application> run as a service
897 Yes, it can run as a system service using <command>srvany.exe</command>.
898 The only catch is that this will effectively disable the
899 <application>Privoxy</application> icon in the taskbar. You can have
900 one or the other, but not both at this time :(
903 There is a pending feature request for this functionality. See
905 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>,
906 for details, and a sample configuration.
912 <sect2 renderas="sect3" id="otherproxy">
913 <title>How can I make <application>Privoxy</application> work with other
914 proxies like <application>Squid</application>?</title>
916 This can be done. See the <ulink
917 url="../user-manual/configuration.html#FORWARDING">user manual</ulink>,
918 which describes how to do this.
926 <!-- ~~~~~ New section ~~~~~ -->
928 <sect1 label="4"id="misc"><title>Miscellaneous</title>
930 <sect2 renderas="sect3">
931 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
932 has to add extra time to browsing.</title>
934 It should not slow you down any in real terms, and may actually help
935 speed things up since ads, banners and other junk are not being displayed.
936 The actual processing time required by <application>Privoxy</application>
937 itself for each page, is relatively small in the overall scheme of things,
938 and happens very quickly. This is typically more than offset by time saved
939 not downloading and rendering ad images.
943 <quote>Filtering</quote> via the <filename>filterfile</filename>
944 mechanism may cause a perceived slowdown, since the entire page is buffered
945 before displaying. See below.
952 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
953 delays in page requests compared to the old Junkbuster. What's wrong?</title>
955 Using the default filtering configuration, I noticed considerable delays in
956 page requests compared to the old Junkbuster. Loading pages with large contents
957 seemed to take forever, then suddenly delivering all the content at once.
960 The whole content must be loaded in order to filter, and nothing is is
961 sent to the browser during this time. The loading time does not really
962 change in real numbers, but the feeling is different, because most
963 browsers are able to start rendering incomplete content, giving the
964 user a feeling of "it works".
967 To modify the content of a page (i.e. make frames resizeable again, etc.) and
968 not just replace ads, <application>Privoxy</application> needs to download the
969 entire page first, do its content magic and then send the page to the browser.
974 <sect2 renderas="sect3" id="configurl"><title>What is the "http://p.p/"?</title>
976 Since <application>Privoxy</application> sits between your web browser and the Internet, it can be
977 programmed to handle certain pages specially.
981 With recent versions of <application>Privoxy</application> (version 2.9.x and
982 greater), you can get some information about
983 <application>Privoxy</application> and change some settings by going to
984 <ulink url="http://p.p/">http://p.p/</ulink> or, equivalently, <ulink
985 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> (Note
986 that p.p is far easier to type but may not work in some configurations. With
987 the name change to <application>Privoxy</application>, this is changed from
988 the previous http://i.j.b/ and earlier 2.9.x versions).
992 These pages are <emphasis>not</emphasis> forwarded to a server on the
993 Internet - instead they are handled by a special web server which is built in to
994 <application>Privoxy</application>.
998 If you are not running <application>Privoxy</application>, then <ulink
999 url="http://p.p/">http://p.p/</ulink> will fail, and <ulink
1000 url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> will
1001 return a web page telling you you're not running
1002 <application>Privoxy</application>.
1006 If you have version 2.0.2, then the equivalent is
1007 http://example.com/show-proxy-args (but you get far less information, and
1008 you should really consider upgrading to &p-version;).
1013 FIXME: commented out until we have data. HB 03/18/02.
1015 <sect2 renderas="sect3" id="badfiledesc"><title>I get the message 'Bad File Descriptor', why?</title>
1023 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1025 No, not by this name. The format of the blocklists has changed
1026 significantly in versions 2.9.x and later. This functionality
1027 is done by the <quote>actions</quote> file now. See next question ...
1031 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads?</title>
1033 Please see the <ulink url="contact.html">Contact section</ulink>.
1037 This process does not work with earlier versions of <application>Privoxy</application>
1038 or <application>Junkbuster</application>.
1043 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1045 You cannot hide your IP address with <application>Privoxy</application> or any other software, since
1046 the server needs to know your IP address to send the answers back to you.
1049 Fortunately there are many publicly usable anonymous proxies out there, which
1050 solve the problem by providing a further level of indirection between you and
1051 the web server, shared by many people and thus letting your requests "drown"
1052 in white noise of unrelated requests as far as user tracking is concerned.
1055 Most of them will, however, log your IP address and make it available to the
1056 authorities in case you abuse that anonymity for criminal purposes. In fact
1057 you can't even rule out that some of them only exist to *collect* information
1058 on (those suspicious) people with a more than average preference for privacy.
1061 You can find a list of anonymous public proxies at <ulink
1062 url="http://www.multiproxy.org/anon_list.htm">multiproxy.org</ulink> and many
1063 more through Google.
1067 <!-- <sect2 renderas="sect3" id="image"><title>What is the imagefile (simage.ini, etc.) for?</title> -->
1069 <!-- Anytime <application>Privoxy</application> determines (with the help of the blocklist) that a URL -->
1070 <!-- contains an advertisement, it has to decide whether this advertisement is an -->
1071 <!-- image or not. <application>Privoxy</application> uses the imagefile for that purpose. -->
1075 <sect2 renderas="sect3">
1076 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1078 No. Your chances of remaining anonymous are greatly improved, but unless you
1079 are an expert on Internet security it would be safest to assume that
1080 everything you do on the Web can be traced back to you.
1083 <application>Privoxy</application> can remove various information about you,
1084 and allows <emphasis>you</emphasis> more freedom to decide which sites
1085 you can trust, and what details you want to reveal. But it's still possible
1086 that web sites can find out who you are. Here's one way this can happen.
1089 A few browsers disclose the user's email address in certain situations, such
1090 as when transferring a file by FTP. <application>Privoxy</application>
1091 does not filter FTP. If you need this feature, or are concerned about the
1092 mail handler of your browser disclosing your email address, you might
1093 consider products such as <application>NSClean</application>.
1096 Browsers available only as binaries could use non-standard headers to give
1097 out any information they can have access to: see the manufacturer's license
1098 agreement. It's impossible to anticipate and prevent every breach of privacy
1099 that might occur. The professionally paranoid prefer browsers available as
1100 source code, because anticipating their behavior is easier. Trust the source,
1106 <sect2 renderas="sect3">
1107 <title id="sitebreak">Might some things break because header information is
1108 being altered?</title>
1111 Definitely. More and more sites use HTTP header content to decide what to
1112 display and how to display it. There is many ways that this can be handled,
1113 so having hard and fast rules, is tricky.
1117 <quote>USER AGENT</quote> in particular is often used in this way to identify
1118 the browser, and adjust content accordingly. Changing this now is not
1119 recommended, since so many sites do look for this. You may get undesirable
1120 results by changing this.
1124 For instance, different browsers use different encodings of Russian and Czech
1125 characters, certain web servers convert pages on-the-fly according to the
1126 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1127 operating system or browser manufacturer causes some sites in these languages
1128 to be garbled; Surfers to Eastern European sites should change it to
1129 something closer. And then some page access counters work by looking at the
1130 <quote>REFERER</quote> header; they may fail or break if unavailable. The
1131 weather maps of Intellicast have been blocked by their server when no
1132 <quote>REFERER</quote> or cookie is provided, is another example. There are
1133 many, many other ways things can go wrong when trying to fool a web server.
1137 If you have problems with a site, you will have to adjust your configuration
1138 accordingly. Cookies are probably the most likely adjustment that may
1139 be required, but by no means the only one.
1145 <sect2 renderas="sect3">
1146 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1147 speed up web browsing?</title>
1149 No, it does not have this ability at all. You want something like
1150 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1151 before you ask, <application>Privoxy</application> can co-exist
1152 with other kinds of proxies like <application>Squid</application>.
1156 <sect2 renderas="sect3">
1157 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1159 Not in the way you mean, or in the way a true firewall can, or a proxy that
1160 has this specific capability. <application>Privoxy</application> can help
1161 protect your privacy, but not really protect you from intrusion attempts.
1166 <sect2 renderas="sect3">
1167 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky
1168 and ugly looking. Can't a better font be used?</title>
1171 This is not a font problem. The logo is an image that is created by
1172 <application>Privoxy</application> on the fly. So as to not waste
1173 memory, the image is rather small. The blockiness comes when the
1174 image is scaled to fill a largish area. There is not much to be done
1175 about this, other than to use one of the other
1176 <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>,
1177 <emphasis>blank</emphasis>, or a URL of your choosing.
1180 Given the above problem, we have decided to remove the logo option entirely
1186 <sect2 renderas="sect3">
1187 <title id="wasted">I have large empty spaces now where ads used to be.
1190 It would be easy enough to just eliminate this space altogether, rather than
1191 fill it with blank space. But, this would create problems with many pages
1192 that use the overall size of the ad to help organize the page layout and
1193 position the various components of the page where they were intended to be.
1194 It is best left this way.
1199 <sect2 renderas="sect3">
1200 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1202 This is a limitation since HTTPS transactions are encrypted SSL sessions
1203 between your browser and the secure site, and are meant to be reliably
1204 <emphasis>secure</emphasis> and private. This means that all cookies and HTTP
1205 header information are also encrypted from the time they leave your browser,
1206 to the site, and vice versa. <application>Privoxy</application> does not
1207 try to unencrypt this information, so it just passes through as is.
1208 <application>Privoxy</application> can still catch images and ads that
1209 are embedded in the SSL stream though.
1215 <sect2 renderas="sect3">
1216 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1217 secure is it? Do I need to take any special precautions?</title>
1219 There are no known exploits that might effect
1220 <application>Privoxy</application>. On Unix-like systems,
1221 <application>Privoxy</application> can run as a non-privileged
1222 user, which is how we recommend it be run. Also, by default
1223 <application>Privoxy</application> only listens to requests
1224 from <quote>localhost</quote>. The server aspect of
1225 <application>Privoxy</application> is not itself directly exposed to the
1226 Internet in this configuration. If you want to have
1227 <application>Privoxy</application> serve as a LAN proxy, this will have to
1228 be opened up to allow for LAN requests. In this case, we'd recommend
1229 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1230 <application>Privoxy</application> config file. All LAN hosts can then use
1231 this as their proxy address in the browser proxy configuration. In this way,
1232 <application>Privoxy</application> will not listen on any external ports.
1233 Of course, a firewall is always good too. Better safe than sorry.
1238 <sect2 renderas="sect3" id="turnoff">
1239 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1241 The easiest way is to access <application>Privoxy</application> with your
1242 browser by using the special URL: <ulink url="http://p.p/">http://p.p/</ulink>
1243 and select "Toggle Privoxy on or off" from that page.
1248 <sect2 renderas="sect3" id="seealso">
1249 <title>Where can I find more information about <application>Privoxy</application>
1250 and related issues?</title>
1251 <!-- Include seealso.sgml boilerplate: -->
1253 <!-- end boilerplate -->
1258 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1267 <!-- ~~~~~ New section ~~~~~ -->
1269 <sect1 label="5" id="trouble">
1270 <title>Troubleshooting</title>
1272 <sect2 renderas="sect3">
1273 <title id="refused">I just upgraded and am getting <quote>connection refused</quote>
1274 with every web page?</title>
1276 Either <application>Privoxy</application> is not running, or your
1277 browser is configured for a different port than what
1278 <application>Privoxy</application> is using.
1282 The old <application>Privoxy</application> (and also
1283 <application>Junkbuster</application>) used port 8000 by
1284 default. This has been changed to port 8118 now, due to a conflict
1285 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1286 you need to change your browser to the new port number, or alternately
1287 change <application>Privoxy's</application> <quote>listen-address</quote>
1288 setting in the <filename>config</filename> file used to start
1289 <application>Privoxy</application>.
1294 <sect2 renderas="sect3">
1295 <title id="flushit">I just added a new rule, but the steenkin ad is
1296 still getting through. How?</title>
1298 If the ad had been displayed before you added its URL, it will probably be
1299 held in the browser's cache for some time, so it will be displayed without
1300 the need for any request to the server, and <application>Privoxy</application>
1301 will not be in the picture. The best thing to do is try flushing the browser's
1302 caches. And then try again.
1306 If this doesn't help, you probably have an error in the rule you
1307 applied. Try pasting the full URL of the offending ad into <ulink
1308 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1309 and see if any actions match your new rule.
1314 <sect2 renderas="sect3">
1315 <title id="badsite">One of my favorite sites does not work with <application>Privoxy</application>.
1316 What can I do?</title>
1319 First verify that it is indeed a <application>Privoxy</application> problem,
1320 by disabling <application>Privoxy</application> filtering and blocking.
1321 Go to <ulink url="http://p.p/">http://p.p/</ulink> and click on
1322 <quote>Toggle Privoxy On or Off</quote>, then disable it. Now try that
1323 page again. It's probably a good idea to flush the browser cache as well.
1327 If still a problem, go to <quote>Show which actions apply to a URL and
1328 why</quote> from <ulink url="http://p.p/">http://p.p/</ulink> and paste
1329 the full URL of the page in question into the prompt. See which actions are
1330 being applied to the URL. Now, armed with this information, go to <quote>Edit
1331 the actions list</quote>. Here you should see various sections that have
1332 various <application>Privoxy</application> features disabled for specific
1333 sites. Most disabled <quote>actions</quote> will have a <quote>-</quote> (minus
1334 sign) in front of them. Some aliases are used just to disable other actions,
1335 e.g. <quote>shop</quote> and <quote>fragile</quote>, and won't necessarily
1336 use a <quote>+</quote> or <quote>-</quote> sign. Add your problem page
1337 URL to one of these sections that looks like it is disabling the feature that
1338 is causing the problem. Rember to flush your browser's caches when making
1339 such changes! As a last resort, try <quote>fragile</quote> which
1340 disables most actions. Now re-try the page. There might be some trial and
1341 error involved. This is discussed in a little more detail in the <ulink
1342 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1347 Alternately, if you are comfortable with a text editor, you can accomplish
1348 the same thing by editing the appropriate <quote>actions</quote> file.
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.50 2002/04/26 05:25:23 hal9
1438 Mass commit to catch a few scattered fixes.
1440 Revision 1.49 2002/04/12 10:10:18 swa
1443 Revision 1.48 2002/04/10 18:45:15 swa
1446 Revision 1.47 2002/04/10 04:05:32 hal9
1449 Revision 1.45 2002/04/08 22:59:26 hal9
1450 Version update. Spell chkconfig correctly :)
1452 Revision 1.44 2002/04/07 21:24:29 hal9
1453 Touch up on name change.
1455 Revision 1.43 2002/04/04 21:59:53 hal9
1456 Added NT/W2K service/icon situation.
1458 Revision 1.42 2002/04/04 18:46:47 swa
1459 consistent look. reuse of copyright, history et. al.
1461 Revision 1.41 2002/04/04 06:48:37 hal9
1462 Structural changes to allow for conditional inclusion/exclusion of content
1463 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
1464 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
1465 eventually be set by Makefile.
1466 More boilerplate text for use across multiple docs.
1468 Revision 1.40 2002/04/03 04:22:03 hal9
1469 Fixed several typos.
1471 Revision 1.39 2002/04/03 03:53:03 hal9
1472 Revert some changes, and then make some news, to layout, and appearance.
1474 Revision 1.38 2002/04/02 03:49:10 hal9
1475 Major changes to doc structure and layout. Sections are not automatically
1476 numbered now. TOC is on page by itself.
1478 Revision 1.37 2002/04/01 16:24:07 hal9
1479 -Rework of supported Q/A.
1480 -Set up entities to include boilerplate text.
1482 Revision 1.36 2002/03/31 23:18:47 hal9
1483 More on dealing with BLOCKED.
1485 Revision 1.35 2002/03/30 04:14:19 hal9
1486 Fix privoxy.org/config links.
1488 Revision 1.34 2002/03/29 04:35:56 hal9
1491 Revision 1.33 2002/03/29 01:31:48 hal9
1492 Several new Q/A's and other touch ups.
1494 Revision 1.32 2002/03/27 00:57:03 hal9
1495 Touch ups for name change.
1497 Revision 1.31 2002/03/26 22:29:55 swa
1498 we have a new homepage!
1500 Revision 1.30 2002/03/25 16:39:22 hal9
1501 A few new sections. Made all links relative to user-manual.
1503 Revision 1.29 2002/03/25 05:23:57 hal9
1504 Moved section, and touch ups.
1506 Revision 1.28 2002/03/25 04:27:33 hal9
1507 New section related to name change.
1509 Revision 1.25 2002/03/24 16:08:08 swa
1510 we are too lazy to make a block-built
1511 privoxy logo. hence removed the option.
1513 Revision 1.24 2002/03/24 15:46:20 swa
1514 name change related issue.
1516 Revision 1.23 2002/03/24 12:33:01 swa
1519 Revision 1.22 2002/03/24 11:51:00 swa
1520 name change. changed filenames.
1522 Revision 1.21 2002/03/24 11:01:06 swa
1525 Revision 1.20 2002/03/23 15:13:11 swa
1526 renamed every reference to the old name with foobar.
1527 fixed "application foobar application" tag, fixed
1528 "the foobar" with "foobar". left junkbustser in cvs
1529 comments and remarks to history untouched.
1531 Revision 1.19 2002/03/21 17:01:54 hal9
1534 Revision 1.18 2002/03/18 16:40:31 hal9
1537 Revision 1.17 2002/03/18 03:53:53 hal9
1540 Revision 1.16 2002/03/17 21:32:56 hal9
1541 A few more additions.
1543 Revision 1.15 2002/03/17 07:25:59 hal9
1544 Correcting some of my typos, and some additions.
1546 Revision 1.14 2002/03/17 02:39:13 hal9
1547 A little more added ...
1549 Revision 1.13 2002/03/17 00:22:20 hal9
1550 Adding new stuff, and trying to incorporate stuff from old faq.
1552 Revision 1.12 2002/03/11 20:13:21 swa
1555 Revision 1.11 2002/03/11 18:42:27 swa
1558 Revision 1.10 2002/03/11 13:13:27 swa
1559 correct feedback channels
1561 Revision 1.9 2002/03/10 23:34:04 swa
1562 more info on not hiding ip address
1564 Revision 1.8 2002/03/09 15:55:48 swa
1565 added default config section
1567 Revision 1.7 2002/03/07 18:16:55 swa
1570 Revision 1.6 2002/03/07 13:16:31 oes
1571 Committing changes by Stefan
1573 Revision 1.5 2002/03/02 15:50:04 swa
1574 2.9.11 version. more input for docs.
1576 Revision 1.4 2002/02/24 14:34:24 jongfoster
1577 Formatting changes. Now changing the doctype to DocBook XML 4.1
1578 will work - no other changes are needed.
1580 Revision 1.3 2001/09/23 10:13:48 swa
1581 upload process established. run make webserver and
1582 the documentation is moved to the webserver. documents
1583 are now linked correctly.
1585 Revision 1.2 2001/09/13 15:20:17 swa
1586 merged standards into developer manual
1588 Revision 1.1 2001/09/12 15:36:41 swa
1589 source files for junkbuster documentation
1591 Revision 1.3 2001/09/10 17:43:59 swa
1592 first proposal of a structure.
1594 Revision 1.2 2001/06/13 14:28:31 swa
1595 docs should have an author.
1597 Revision 1.1 2001/06/13 14:20:37 swa
1598 first import of project's documentation for the webserver.