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 license SYSTEM "license.sgml">
11 <!entity p-version "3.0.4">
12 <!entity p-status "beta">
13 <!entity % p-not-stable "INCLUDE">
14 <!entity % p-stable "IGNORE">
15 <!entity % p-text "IGNORE"> <!-- define we are not a text only doc -->
16 <!entity % p-doc "INCLUDE"> <!-- and we are a formal doc -->
17 <!entity % p-supp-userman "INCLUDE"> <!-- Include all from supported.sgml -->
18 <!entity my-copy "©"> <!-- kludge for docbook2man -->
21 File : $Source: /cvsroot/ijbswa/current/doc/source/faq.sgml,v $
24 This file belongs into
25 ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
27 $Id: faq.sgml,v 2.12 2006/09/03 14:15:30 hal9 Exp $
29 Copyright (C) 2001-2006 Privoxy Developers <developers@privoxy.org>
32 Based partially on the Internet Junkbuster FAQ originally written by and
33 Copyright (C) 1997 Anonymous Coders and Junkbusters Corporation.
34 http://www.junkbusters.com/
36 <Qandaset defaultlabel='qanda'>
51 ========================================================================
52 NOTE: Please read developer-manual/documentation.html before touching
55 Please we keep the info in this file as version independent as possible
56 so we only have to maintain one FAQ. Where significant changes are
57 made to Privoxy configuration, please note the change in such a way that
58 it makes sense to both users of older and newer versions.
59 ========================================================================
65 <article id="index" class="faq">
67 <title>Privoxy Frequently Asked Questions</title>
71 <!-- Completely the wrong markup, but very little is allowed -->
72 <!-- in this part of an article. FIXME -->
73 <link linkend="copyright">Copyright</link> &my-copy; 2001-2006 by
74 <ulink url="http://www.privoxy.org">Privoxy Developers</ulink>
78 <pubdate>$Id: faq.sgml,v 2.12 2006/09/03 14:15:30 hal9 Exp $</pubdate>
82 Note: this should generate a separate page, and a live link to it.
83 But it doesn't for some mysterious reason. Please leave commented
84 unless it can be fixed proper. For the time being, the copyright
85 statement will be in copyright.smgl.
89 <legalnotice id="legalnotice">
91 text goes here ........
101 <orgname>By: Privoxy Developers</orgname>
110 This is here to keep vim syntax file from breaking :/
111 If I knew enough to fix it, I would.
112 PLEASE DO NOT REMOVE! HB: hal@foobox.net
117 This FAQ gives quick answers to frequently asked questions about
118 <ulink url="http://www.privoxy.org/">Privoxy</ulink>.
119 It can't and doesn't replace the
120 <ulink url="../user-manual/index.html"><citetitle>User Manual</citetitle></ulink>.
122 This works, at least in some situtations:
123 Test: <ulink url="privoxy-user-manual.pdf"><citetitle>User Manual</citetitle></ulink>.
127 <!-- Include privoxy.sgml boilerplate: -->
129 <!-- end boilerplate -->
132 Please note that this document is a work in progress. This copy represents
133 the state at the release of version &p-version;.
134 You can find the latest version of the document at <ulink
135 url="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/</ulink>.
136 Please see the <link linkend="contact">Contact section</link> if you want to
137 contact the developers.
141 <!-- Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
147 <!-- ~~~~~ New section ~~~~~ -->
149 <sect1 id="general"><title>General Information</title>
151 <sect2 renderas="sect3" id="newjb"><title>What is this new version of <application>Junkbuster</application>?</title>
153 <!-- Include history.sgml -->
160 <sect2 renderas="sect3">
161 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why change the name from
162 <application>Junkbuster</application> at all?</title>
164 <ulink url="http://junkbusters.com/">Junkbusters Corporation</ulink>
165 continues to offer their original version of the <application>Internet
166 Junkbuster</application>, so publishing our
167 <application> Junkbuster</application>-derived software under the same name
171 There are also potential legal complications from the continued use of the
172 <application>Junkbuster</application> name, which is a registered trademark of
173 <ulink url="http://junkbusters.com/">Junkbusters Corporation</ulink>.
174 There are, however, no objections from Junkbusters Corporation to the
175 <application>Privoxy</application> project itself, and they, in fact, still
176 share our ideals and goals.
179 The developers also believed that there are so many improvements over the original
180 code, that it was time to make a clean break from the past and make
181 a name in their own right.
184 <application>Privoxy</application> is the
185 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>. Also, its content
186 modification and junk suppression gives <emphasis>you</emphasis>, the user, more
187 control, more freedom, and allows you to browse your personal and
188 <quote><emphasis>private</emphasis> edition</quote> of the web.
193 <sect2 renderas="sect3" id="differs"><title>How does <application>Privoxy</application> differ
194 from the old <application>Junkbuster?</application></title>
196 <application>Privoxy</application> picks up where
197 <application>Junkbuster</application> left off. All the old features remain.
198 The new <application>Privoxy</application> still blocks ads and banners,
199 still manages cookies, and still helps protect your privacy. But, these are
200 all greatly enhanced, and many, many new features have been added, all in the same vein.
203 The configuration has changed significantly as well. This is something that
204 users will notice right off the bat if upgrading from
205 <application>Junkbuster</application> 2.0.x. The <quote>blocklist</quote>
206 <quote>cookielist</quote>, <quote>imagelist</quote> and much more has been
207 combined into the <quote>actions</quote> files, with a completely different
208 syntax. See the <ulink url="../user-manual/whatsnew.html">What's New</ulink>
209 page for the latest updates.
212 <application>Privoxy</application>'s new features include:
215 <!-- Include newfeatures.sgml: -->
221 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
222 <application>Privoxy</application> work? </title>
224 A web proxy is a service, based on a software such as <application>Privoxy</application>,
225 that clients (i.e. browsers) can use instead of connecting directly to the web
226 servers on the Internet. The clients then ask the proxy to fetch the objects
227 they need (web pages, images, movies etc) on their behalf, and when the proxy
228 has done so, it hands the results back to the client.
231 There are many reasons to use web proxies, such as security (firewalling),
232 efficiency (caching) and others, and there are just as many different proxies
233 to accommodate those needs.
236 <application>Privoxy</application> is a proxy that is primarily focused on privacy
237 protection, junk elimination and freeing the user from restrictions placed on his
238 activities. Sitting between your browser(s) and the Internet,
239 it is in a perfect position to filter outbound personal information that your
240 browser is leaking, as well as inbound junk. It uses a variety of techniques to do
241 this, all of which are under your control via the various configuration
247 <sect2 renderas="sect3" id="whatsanad">
248 <title id="knows">How does <application>Privoxy</application> know what is
249 an ad, and what is not?</title>
251 <application>Privoxy</application>'s approach to blocking ads is twofold:
254 First, there are certain patterns in the <emphasis>locations</emphasis> (URLs)
255 of banner images. This applies to both the path (you wouldn't guess how many
256 web sites serve their banners from a directory called <quote>banners</quote>!)
257 and the host (blocking the big banner hosting services like doublecklick.net
258 already helps a lot). <application>Privoxy</application> takes advantage of this
259 fact by using <ulink url="../user-manual/actions-file.html#AF-PATTERNS">URL
260 patterns</ulink> to sort out and block the requests for banners.
263 Second, banners tend to come in certain <emphasis>sizes</emphasis>. But you
264 can't tell the size of an image by its URL without downloading it, and if you
265 do, it's too late to save bandwidth. Therefore, <application>Privoxy</application>
266 also inspects the HTML sources of web pages while they are loaded, and replaces
267 references to images with standard banner sizes by dummy references, so that
268 your browser doesn't request them anymore in the first place.
271 Both of this involves a certain amount of guesswork and is, of course, freely
276 <sect2 renderas="sect3">
277 <title id="mistakes">Can <application>Privoxy</application> make mistakes?
278 This does not sound very scientific.</title>
280 Actually, it's a black art ;-) And yes, it is always possible to have a broad
281 rule accidentally block or change something by mistake. You will almost surely
282 run into such situations at some point. It is tricky writing rules to
283 cover every conceivable possibility, and not occasionally get false positives.
287 But this should not be a big concern since the
288 <application>Privoxy</application> configuration is very flexible, and
289 includes tools to help identify these types of situations so they can be
290 addressed as needed, allowing you to customize your installation.
291 (<link linkend="badsite">See the Troubleshooting section below</link>.)
297 <sect2 renderas="sect3">
298 <title id="configornot">Will I have to configure <application>Privoxy</application>
299 before I can use it?</title>
301 No, not really. The default installation should give you a good starting
302 point, and block <emphasis>most</emphasis> unwanted content.
305 But you will certainly run into situations where there are false positives,
306 or ads not being blocked that you may not want to see. In these cases, you
307 would certainly benefit by customizing <application>Privoxy's</application>
308 configuration to more closely match your individual situation. And we would
309 encourage you to do this. This is where the real power of
310 <application>Privoxy</application> lies!
315 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
316 <application>Privoxy</application>. Why should I use
317 <application>Privoxy</application> at all?</title>
319 Modern browsers do indeed have <emphasis>some</emphasis> of the same
320 functionality as <application>Privoxy</application>. Maybe this is
321 adequate for you. But <application>Privoxy</application> is much more
322 versatile and powerful, and can do a number of things that browsers just can't.
325 In addition, a proxy is good choice if you use multiple browsers, or
326 have a LAN with multiple computers. This way all the configuration
327 is in one place, and you don't have to maintain a similar configuration
328 for possibly many browsers.
334 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
335 warranty? Registration?</title>
337 <application>Privoxy</application> is licensed under the <ulink
338 url="http://www.gnu.org/copyleft/gpl.html">GNU General Public License (GPL)</ulink>.
339 It is free to use, copy, modify or distribute as you wish under the terms of this
340 license. Please see the <link linkend="copyright">Copyright</link> section for more
341 information on the license and copyright. Or the <filename>LICENSE</filename> file
342 that should be included.
345 There is <emphasis>no warranty</emphasis> of any kind, expressed, implied or otherwise.
346 That is something that would cost real money ;-) There is no registration either.
347 <application>Privoxy</application> really is <emphasis>free</emphasis>
353 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what do I do?</title>
355 <sect3 renderas="sect4" id="jointeam-money"><title>Contribute!</title>
357 We, of course, welcome donations and could use money for domain registering,
358 buying software to test <application>Privoxy</application> with, and, of course,
359 for regular world-wide get-togethers (hahaha). If you enjoy the software and feel
360 like helping us with a donation, just <ulink
361 url="mailto: ijbswa-developers@lists.sourceforge.net">drop us a note</ulink>.
365 <sect3 renderas="sect4" id="jointeam-software"><title>Software</title>
367 If you are a vendor of a web-related software like a browser, web server
368 or proxy, and would like us to ensure that <application>Privoxy</application>
369 runs smoothly with your product, you might consider supplying us with a
370 copy or license. We can't, however, guarantee that we will fix all potential
371 compatibility issues as a result.
375 <sect3 renderas="sect4" id="jointeam-work"><title>Would you like to participate?</title>
377 Well, helping the team is always a good idea. We welcome new developers,
378 packagers, testers, documentation writers or really anyone with a desire to help in
380 <emphasis>DO NOT</emphasis> need to be a <quote>programmer</quote>. There
381 are many other tasks available. In fact, the programmers often can't spend
382 as much time programming because of some of the other, more mundane things
383 that need to be done, like checking the Tracker feedback sections.
386 So first thing, <ulink
387 url="https://sourceforge.net/account/register.php">get an account on SourceForge.net</ulink>
388 and mail your id to the <ulink url="mailto:ijbswa-developers@lists.sourceforge.net">developers
389 mailing list</ulink>. Then, please read the <ulink
390 url="../developer-manual/index.html">Developer's Manual</ulink>, at least
391 the pertinent sections.
394 Once we have added you to the team, you'll have access to the <ulink
395 url="http://sourceforge.net/cvs/?group_id=11118">CVS repository</ulink>, and
396 together we'll find a suitable task for you.
405 <!-- ~~~~~ New section ~~~~~ -->
407 <sect1 id="installation"><title>Installation</title>
409 <sect2 renderas="sect3" id="whichbrowsers">
410 <title>Which browsers are supported by <application>Privoxy</application>?</title>
412 Any browser that can be configured to use a proxy, which
413 should be virtually all browsers. Direct browser support is not necessary
414 since <application>Privoxy</application> runs as a separate application and
415 talks to the browser in the standardized HTTP protocol, just like a web server
420 <sect2 renderas="sect3" id="whichos">
421 <title>Which operating systems are supported?</title>
423 Include supported.sgml here:
428 <sect2 renderas="sect3" id="email-client">
429 <title>Can I use <application>Privoxy</application> with my email client?</title>
431 As long as there is some way to set a HTTP proxy for the client, then yes,
432 any application can be used, whether it is strictly speaking a
433 <quote>browser</quote> or not. Though this may not be the best approach for
434 dealing with some of the common abuses of HTML in email. See <link
435 linkend="outlook">How can I configure <application>Privoxy</application>
436 with <application>Outlook Express</application>?</link> below for more on
440 Be aware that HTML email presents a number of unique security and privacy
441 related issues, that can require advanced skills to overcome. The developers
442 recommend using email clients that can be configured to convert HTML to plain
443 text for these reasons.
447 <sect2 renderas="sect3" id="newinstall"><title>Can I install
448 <application>Privoxy</application> over <application>Junkbuster</application>?</title>
450 We recommend you un-install <application>Junkbuster</application>
451 first to minimize conflicts and confusion. You may want to
452 save your old configuration files for future reference. The configuration
453 files and syntax have substantially changed, so you will need to manually
454 port your old patterns. See the <ulink url="../user-manual/upgradersnote.html">note
455 to upgraders</ulink> and <ulink url="../user-manual/installation.html">installation
456 chapter</ulink> in the <ulink url="../user-manual/index.html">user manual</ulink>
460 Note: Some installers may automatically un-install
461 <application>Junkbuster</application>, if present!
466 <sect2 renderas="sect3">
467 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything
468 special I have to do now?</title>
471 All browsers must be told to use <application>Privoxy</application>
472 as a proxy by specifying the correct proxy address and port number
473 in the appropriate configuration area for the browser. See below.
474 You should also flush your browser's memory and disk cache to get rid of any
475 cached junk items, and remove any stored cookies.
482 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
484 If you set up the <application>Privoxy</application> to run on
485 the computer you browse from (rather than your ISP's server or some
486 networked computer on a LAN), the proxy will be on <literal>127.0.0.1</literal>
487 (sometimes referred to as <quote>localhost</quote>,
488 which is the special name used by every computer on the Internet to refer
489 to itself) and the port will be 8118 (unless you have <application>Privoxy</application>
490 to run on a different port with the <ulink
491 url="../user-manual/config.html#LISTEN-ADDRESS">listen-address</ulink> config option).
494 When configuring your browser's proxy settings you typically enter
495 the word <quote>localhost</quote> or the IP address <quote>127.0.0.1</quote>
496 in the boxes next to <quote>HTTP</quote> and <quote>Secure</quote> (HTTPS) and
497 then the number <quote>8118</quote> for <quote>port</quote>.
498 This tells your browser to send all web requests to <application>Privoxy</application>
499 instead of directly to the Internet.
502 <application>Privoxy</application> can also be used to proxy for
503 a Local Area Network. In this case, your would enter either the IP
504 address of the LAN host where <application>Privoxy</application>
505 is running, or the equivalent hostname. Port assignment would be
506 same as above. Note that <application>Privoxy</application> doesn't
507 listen on any LAN interfaces by default.
510 <application>Privoxy</application> does not currently handle
511 any other protocols such as FTP, SMTP, IM, IRC, ICQ, etc.
515 <sect2 renderas="sect3" id="nothing">
516 <title>I just installed <application>Privoxy</application>, and nothing is happening.
517 All the ads are there. What's wrong?</title>
520 Did you configure your browser to use <application>Privoxy</application>
521 as a proxy? It does not sound like it. See above. You might also try flushing
522 the browser's caches to force a full re-reading of pages. You can verify
523 that <application>Privoxy</application> is running, and your browser
524 is correctly configured by entering the special URL:
525 <ulink url="http://p.p/">http://p.p/</ulink>.
526 <!-- Use http://p.p/ instead of http://config.privoxy.org/ here because
527 of potential redirect caching problem (see next Q). -->
528 This should take you to a page titled <quote>This is Privoxy..</quote> with
529 access to <application>Privoxy's</application> internal configuration.
530 If you see this, then you are good to go. If you receive a page saying
531 <quote>Privoxy is not running</quote>, then the browser is not set up to use
532 your <application>Privoxy</application> installation.
533 If you receive anything else (probably nothing at all), it could either
534 be that the browser is not set up correctly, or that
535 <application>Privoxy</application> is not running at all. Check the <ulink
536 url="../user-manual/config.html#LOGFILE">log file</ulink>. For instructions
537 on starting <application>Privoxy</application> and browser configuration,
538 see the <ulink url="http://www.privoxy.org/user-manual/startup.html">chapter
539 on starting <application>Privoxy</application></ulink> in the
540 <ulink url="http://www.privoxy.org/user-manual/">user manual</ulink>.
545 <sect2 renderas="sect3" id="notused">
546 <title>I get a <quote>Privoxy is not being used</quote> dummy page although
547 <application>Privoxy</application> is running and being used.</title>
550 First, make sure that Privoxy is <emphasis>really</emphasis> running and
551 being used by visiting <ulink url="http://p.p/">http://p.p/</ulink>. You
552 should see the <application>Privoxy</application> main page. If not, see
553 the <ulink url="http://www.privoxy.org/user-manual/startup.html">chapter
554 on starting <application>Privoxy</application></ulink> in the
555 <ulink url="http://www.privoxy.org/user-manual/">user manual</ulink>.
559 Now if <ulink url="http://p.p/">http://p.p/</ulink> works for you, but
560 other parts of <application>Privoxy</application>'s web interface show
561 the dummy page, your browser has cached a redirection it encountered before
562 <application>Privoxy</application> was being used. You need to clear your
563 browser's cache. Note that shift-reloading the dummy page won't help, since
564 that'll only refresh the dummy page, not the redirection that lead you there.
568 The procedure for clearing the cache varies from browser to browser. As an
569 example, <application>Mozilla</application> users would click
570 <guibutton>Edit</guibutton> --> <guibutton>Preferences</guibutton> -->
571 <guibutton>Advanced</guibutton> --> <guibutton>Cache</guibutton> and
572 then click both <quote><guibutton>Clear Memory Cache</guibutton></quote>
573 and <quote><guibutton>Clear Disk Cache</guibutton></quote>.
580 <!-- ~~~~~ New section ~~~~~ -->
582 <sect1 id="configuration"><title>Configuration</title>
584 <sect2 renderas="sect3" id="getupdates"><title>Where can I get updated Actions Files?</title>
586 Based on your feedback and the continuing development, updated actions files will be
587 made available on the <ulink
588 url="http://sourceforge.net/project/showfiles.php?group_id=11118">files section</ulink> of
589 our <ulink url="http://sf.net/projects/ijbswa/">project page</ulink>.
593 If you wish to receive an email notification whenever we release updates of
594 <application>Privoxy</application> or the actions file, <ulink
595 url="http://lists.sourceforge.net/lists/listinfo/ijbswa-announce/">subscribe
596 to our announce mailing list</ulink>, ijbswa-announce@lists.sourceforge.net.
601 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
603 The syntax, number, and purpose of configuration files has substantially
604 changed from <application>Junkbuster</application> and early versions
605 of <application>Privoxy</application>. The old files, like <filename>blocklist</filename>
606 will not work at all. If you are upgrading from a 2.0.x version, you will
607 need to port your configuration data to the new format. Note that even the
608 pattern syntax has changed! Even configuration files from the 2.9.x versions
609 will need to be adapted, as configuration syntax has been very much in flow
613 Refer to the <ulink url="../user-manual/whatsnew.html">What's New</ulink>
614 page for information on configuration changes that may occur from one release to another.
618 <sect2 renderas="sect3">
619 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
622 <ulink url="../user-manual/actions-file.html">Actions files</ulink>
623 are where various <ulink url="../user-manual/actions-file.html#ACTIONS">actions</ulink>
624 that <application>Privoxy</application> might take while processing a certain
625 request, are configured. Typically, you would define a set of default actions
626 that apply to all URLs, then add exceptions to these defaults where needed.
630 Actions can be defined on a <ulink
631 url="../user-manual/actions-file.html#AF-PATTERNS">URL pattern</ulink> basis, i.e.
632 for single URLs, whole web sites, groups or parts thereof etc. Actions can also be
633 grouped together and then applied to requests matching one or more patterns.
634 There are many possible actions that might apply to any given site. As an example,
635 if you are blocking cookies as one of your default actions, but need to accept
636 cookies from a given site, you would need to define an exception for this
637 site in one of your actions files, preferably in <filename>user.action</filename>.
642 <sect2 renderas="sect3" id="actionss">
643 <title>The <quote>actions</quote> concept confuses me. Please list
644 some of these <quote>actions</quote>.</title>
646 For a comprehensive discussion of the actions concept, please refer
647 to the <ulink url="../user-manual/actions-file.html">actions file
648 chapter</ulink> in the <ulink url="../user-manual/index.html">user
649 manual</ulink>. It includes a <ulink
650 url="../user-manual/actions-file.html#ACTIONS">list of all actions</ulink>
651 and an <ulink url="../user-manual/actions-file.html#ACT-EXAMPLES">actions
652 file tutorial</ulink> to get you started.
657 <sect2 renderas="sect3">
658 <title id="actconfig">How are actions files configured? What is the easiest
659 way to do this?</title>
662 Actions files are just text files in a special syntax and can be edited
663 with a text editor. But probably the easiest way is to access
664 <application>Privoxy</application>'s user interface with your web browser
665 at <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
666 (Shortcut: <ulink url="http://p.p/">http://p.p/</ulink>) and then select
667 <quote><ulink url="http://config.privoxy.org/show-status">View &
668 change the current configuration</ulink></quote> from the menu.
673 <sect2 renderas="sect3">
674 <title>There are several different <quote>actions</quote> files. What are
675 the differences?</title>
677 As of <application>Privoxy</application> v2.9.15, three actions files
678 are being included, to be used for
679 different purposes: These are
680 <filename>default.action</filename>, the <quote>main</quote> actions file
681 which is actively maintained by the <application>Privoxy</application>
682 developers, <filename>user.action</filename>, where users are encouraged
683 to make their private customizations, and <filename>standard.action</filename>,
684 which is for internal <application>Privoxy</application> use only.
685 Please see <ulink url="../user-manual/actions-file.html">the actions chapter</ulink>
686 in the <ulink url="../user-manual/index.html">user manual</ulink> for a more
687 detailed explanation.
691 Earlier versions included three different versions of the
692 <filename>default.action</filename> file. The new scheme allows for
693 greater flexibility of local configuration, and for browser based
694 selection of pre-defined <quote>aggressiveness</quote> levels.
699 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo/Hotmail/Gmail account work?</title>
701 The default configuration shouldn't impact the usability of any of these services.
702 It will, however, make all cookies temporary, so that your browser will forget your
703 login credentials in between browser sessions. If you would like not to have to log
704 in manually each time you access those websites, simply turn off all cookie handling
705 for them in the <filename>user.action</filename> file. An example for yahoo might
709 <screen># Allow all cookies for Yahoo login:
711 { -<ulink url="../user-manual/actions-file.html#CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</ulink> -<ulink url="../user-manual/actions-file.html#CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</ulink> -<ulink url="../user-manual/actions-file.html#SESSION-COOKIES-ONLY">session-cookies-only</ulink> }
712 .login.yahoo.com</screen>
717 <sect2 renderas="sect3" id="configfiles"> <title>What's the difference between the
718 <quote>Cautious</quote>, <quote>Medium</quote> and <quote>Adventuresome</quote> defaults?</title>
720 Configuring <application>Privoxy</application> is not entirely trivial. To
721 help you get started, we provide you with three different default action
722 <quote>profiles</quote> in the web based actions file editor at <ulink
723 url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>.
724 See the <ulink url="../user-manual/actions-file.html"><citetitle>User
725 Manual</citetitle></ulink> for a list of actions, and how the default
730 Where the defaults are likely to break some sites, exceptions for
731 known popular <quote>problem</quote> sites are included, but in
732 general, the more aggressive your default settings are, the more exceptions
733 you will have to make later. See the <ulink
734 url="../user-manual/index.html"><citetitle>User Manual</citetitle></ulink>
735 for a more deatiled discussion.
739 It should be noted that the <quote>Adventuresome</quote> profile (formerly known
740 as the <quote>Advanced</quote> profile) is not only more
741 aggressive, but also includes fun and, extreme usage of most of
742 <application>Privoxy's</application> features. Use at your own risk!
747 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration
748 with a browser? Does that not raise security issues?</title>
750 It may seem strange that regular users can edit the config files with their
751 browsers, although the whole <filename>/etc/privoxy</filename> hierarchy
752 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
755 When you use the browser-based editor, <application>Privoxy</application>
756 itself is writing to the config files. Because
757 <application>Privoxy</application> is running as the user <quote>privoxy</quote>,
758 it can update the config files.
761 If you run <application>Privoxy</application> for multiple untrusted users (e.g. in
762 a LAN), you will probably want to turn the web-based editor and remote toggle
763 features off by setting <quote><literal><ulink
764 url="../user-manual/config.html#ENABLE-EDIT-ACTIONS">enable-edit-actions</ulink>
765 0</literal></quote> and <quote><literal><ulink
766 url="../user-manual/config.html#ENABLE-REMOTE-TOGGLE">enable-remote-toggle</ulink>
767 0</literal></quote> in the <ulink url="../user-manual/config.html">main configuration file</ulink>.
770 Note that in the default configuration, only local users (i.e. those on
771 <quote>localhost</quote>) can connect to <application>Privoxy</application>,
772 so this is not (normally) a security problem.
777 <sect2 renderas="sect3">
778 <title id="filterfile">What is the <filename>default.filter</filename> file? What is a <quote>filter</quote>?</title>
780 The <ulink url="../user-manual/filter-file.html"><filename>default.filter</filename></ulink>
781 file is where <emphasis>filters</emphasis> as supplied by the developers are defined.
782 Filters are a special subset of actions that can be used to modify or
783 remove, web page content on the fly. Filters apply to <emphasis>anything</emphasis>
784 in the page source (and optionally both client and server headers), including
785 HTML tags, and JavaScript. Regular expressions are used to accomplish this.
786 There are a number of pre-defined filters to deal with common annoyances. The
787 filters are only defined here, to invoke them, you need to use the
789 url="../user-manual/actions-file.html#FILTER"><literal>filter</literal>
790 action</ulink> in one of the actions files. Filtering is automatically
791 disabled for inappropriate MIME types.
795 If you are familiar with regular expressions, and HTML, you can look at
796 the provided <filename>default.filter</filename> with a text editor and define
797 your own filters. This is potentially a very powerful feature, but
798 requires some expertise in both regular expressions and HTML/HTTP. You should
799 place any modifications to the default filters, or any new ones you create
800 in a separate file, such as <filename>user.filter</filename>, so they won't
801 be overwritten during upgrades. The ability to define multiple filter files
802 in <filename>config</filename> is a new feature as of v. 3.0.4.
806 There is no GUI editor option for this part of the configuration,
807 but you can disable/enable the various pre-defined filters of the included
808 <filename>default.filter</filename> file with the <ulink
809 url="http://config.privoxy.org/show-status">web-based actions file editor</ulink>.
814 <sect2 renderas="sect3">
815 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
818 By default, <application>Privoxy</application> only responds to requests
819 from <literal>127.0.0.1</literal> (localhost). To have it act as a server for
820 a network, this needs to be changed in the <ulink
821 url="../user-manual/config.html">main configuration file</ulink>. Look for
823 url="../user-manual/config.html#LISTEN-ADDRESS">listen-address</ulink></literal>
824 option, which may be commented out with a <quote>#</quote> symbol. Make sure
825 it is uncommented, and assign it the address of the LAN gateway interface,
826 and port number to use. Assuming your LAN address is 192.168.1.1 and you
827 wish to run <application>Privoxy</application> on port 8118, this line
833 listen-address 192.168.1.1:8118</screen>
837 Save the file, and restart <application>Privoxy</application>. Configure
838 all browsers on the network then to use this address and port number.
842 Alternately, you can have <application>Privoxy</application> listen on
843 all available interfaces:
848 listen-address :8118</screen>
852 And then use <application>Privoxy's</application>
854 url="../user-manual/config.html#PERMIT-ACCESS">permit-access</ulink>
855 feature to limit connections. A firewall in this situation is recommended
860 The above steps should be the same for any TCP network, regardless of
865 If you run <application>Privoxy</application> on a LAN with untrusted users,
866 we recommend that you double-check the <ulink
867 url="../user-manual/config.html#ACCESS-CONTROL">access control and security</ulink>
874 <sect2 renderas="sect3">
875 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
877 The replacement for blocked images can be controlled with the <ulink
878 url="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"><literal>set-image-blocker</literal>
879 action</ulink>. You have the choice of a checkerboard pattern, a transparent 1x1 GIF
880 image (aka <quote>blank</quote>), or a redirect to a custom image of your choice.
881 Note that this choice only has effect for images which are blocked as images, i.e.
882 whose URLs match both a <literal><ulink
883 url="../user-manual/actions-file.html#HANDLE-AS-IMAGE">handle-as-image</ulink></literal>
884 <emphasis>and</emphasis> <literal><ulink
885 url="../user-manual/actions-file.html#BLOCK">block</ulink></literal> action.
888 If you want to see nothing, then change the <ulink
889 url="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"><literal>set-image-blocker</literal>
890 action</ulink> to <quote>blank</quote>. This can be done by editing the
891 <filename>default.action</filename> file, or trough the <ulink
892 url="http://config.privoxy.org/show-status">web-based actions file editor</ulink>.
897 <sect2 renderas="sect3">
898 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
900 Remember that <link linkend="whatsanad">telling which image is an ad and which
901 isn't</link>, is mostly guesswork. While we hope that the standard configuration
902 is rather smart, it can and will make errors. The checkerboard image is visually
903 decent, but it shows you that and where images were blocked, which can be very
904 helpful in case some navigation aid or otherwise innocent image was
905 erraneously blocked. Some people might also enjoy seeing how many banners
906 they <emphasis>don't</emphasis> have to see..
911 <sect2 renderas="sect3">
912 <title id="blockedbytext">I see some images being replaced by a text
913 instead of the checkerboard image. Why and how do I get rid of this?</title>
915 This happens when the banners are not embedded in the HTML code of the
916 page itself, but in separate HTML (sub)documents that are loaded into (i)frames
917 or (i)layers, and these external HTML documents are blocked. Being non-images
918 they get replaced by a substitute HTML page rather than a substitute image,
919 which wouldn't work out technically, since the browser expects and accepts
920 only HTML when it has requested an HTML document.
923 The substitute page adapts to the available space and shows itself as a
924 miniature two-liner if loaded into small frames, or full-blown with a
925 large red "BLOCKED" banner if space allows.
928 If you prefer the banners to be blocked by images, you must see to it that
929 the HTML documents in which they are embedded are not blocked. Clicking
930 the <quote>See why</quote> link offered in the substitute page will show
931 you which rule blocked the page. After changing the rule and un-blocking
932 the HTML documents, the browser will try to load the actual banner images
933 and the usual image blocking will (hopefully!) kick in.
938 <sect2 renderas="sect3" id="srvany">
939 <title>Can <application>Privoxy</application> run as a service
942 Earlier versions could run as a system service using <command>srvany.exe</command>.
943 See the discussion at <ulink
944 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>,
945 for details, and a sample configuration.
948 Version 3.0.1 fixes the problem where the icon and menu where not available
949 in the taskbar for this usage.
955 Version 3.0.4, introduces full Windows service functionality, thus elimating
956 the <command>srvany.exe</command> requirement.
961 <sect2 renderas="sect3" id="otherproxy">
962 <title>How can I make <application>Privoxy</application> work with other
963 proxies like <application>Squid</application> or <application>TOR</application>?</title>
965 This can be done and is often useful to combine the benefits of
966 <application>Privoxy</application> with those of a another proxy.
968 url="../user-manual/config.html#FORWARDING">forwarding chapter</ulink>
969 in the <ulink url="../user-manual/index.html">user manual</ulink> which
970 describes how to do this.
974 <sect2 renderas="sect3" id="port-80">
975 <title>Can I just set <application>Privoxy</application> to use port 80
976 and thus avoid individual browser configuration?</title>
979 No, its more complicated than that. This only works with special kinds
980 of proxies known as <quote>transparent</quote> proxies (see below).
985 <sect2 renderas="sect3" id="transparent">
986 <title>Can <application>Privoxy</application> run as a <quote>transparent
987 </quote> proxy?</title>
989 No, <application>Privoxy</application> currently does not have this ability,
990 though it is planned for a future release. Transparent proxies require
991 special handling of the request headers beyond what
992 <application>Privoxy</application> is now capable of.
996 Chaining <application>Privoxy</application> behind another proxy that has
997 this ability should work though.
999 url="../user-manual/config.html#FORWARDING">forwarding chapter</ulink>
1000 in the <ulink url="../user-manual/index.html">user manual</ulink>. As
1001 a transparent proxy to be used for chaining we recommend Transproxy
1002 (<ulink url="http://www.transproxy.nlc.net.au/">http://www.transproxy.nlc.net.au/</ulink>).
1007 <sect2 renderas="sect3" id="outlook">
1008 <title>How can I configure <application>Privoxy</application> for use with <application>Outlook
1009 Express</application>?</title>
1011 <application>Outlook Express</application> uses <application>Internet Explorer</application>
1012 components to both render HTML, and fetch any HTTP requests that may be embedded in an HTML email.
1013 So however you have <application>Privoxy</application> configured to work
1014 with IE, this configuration should automatically be shared.
1018 <sect2 renderas="sect3" id="outlook-more">
1019 <title>How can I have separate rules just for HTML mail?</title>
1021 The short answer is, you can't. <application>Privoxy</application> has no way
1022 of knowing which particular application makes a request, so there is no way to
1023 distinguish between web pages and HTML mail.
1024 <application>Privoxy</application> just blindly proxies all requests. In the
1025 case of <application>Outlook Express</application> (see above), OE uses
1026 IE anyway, and there is no way for <application>Privoxy</application> to ever
1027 be able to distinguish between them (nor could any other proxy type application for
1031 For a good discussion of some of the issues involved (including privacy and
1032 security issues), see
1033 <ulink url="http://sourceforge.net/tracker/?func=detail&atid=211118&aid=629518&group_id=11118">http://sourceforge.net/tracker/?func=detail&atid=211118&aid=629518&group_id=11118</ulink>.
1037 <sect2 renderas="sect3" id="allow-cookies">
1038 <title>How can I allow permanent cookies for my trusted sites?</title>
1041 There are several actions that relate to cookies. The default behavior is to
1042 allow only <quote>session cookies</quote>, which means the cookies only last
1043 for the current browser session. This eliminates most kinds of abuse related
1044 to cookies. But there may be cases where we want cookies to last.
1047 To disable all cookie actions, so that cookies are allowed unrestricted,
1048 both in and out, for <literal>example.com</literal>:
1052 { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
1053 .example.com</screen>
1056 Place the above in <filename>user.action</filename>. Note some of these may
1057 be off by default anyway, so this might be redundant, but there is no harm
1058 being explicit in what you want to happen. <filename>user.action</filename>
1059 includes an alias for this situation, called
1060 <literal>allow-all-cookies</literal>.
1064 <sect2 renderas="sect3" id="multiples">
1065 <title>Can I have separate configurations for different users?</title>
1067 Each instance of <application>Privoxy</application> has its own
1068 configuration, including such attributes as the TCP port that it listens on.
1069 What you can do is run multiple instances of <application>Privoxy</application>, each with
1070 a unique <literal>listen-address</literal> and configuration path, and then
1071 each of these can have their own configurations. Think of it as per-port
1075 Simple enough for a few users, but for large installations, consider having
1076 groups of users that might share like configurations.
1080 <sect2 renderas="sect3" id="whitelists">
1081 <title>Can I set-up <application>Privoxy</application> as a whitelist of
1082 <quote>good</quote> sites?</title>
1084 Sure. There are a couple of things you can do for simple whitelisting.
1085 Here's one real easy one:
1088 ############################################################
1090 ############################################################
1092 / # Block *all* URLs
1094 ############################################################
1096 ############################################################
1100 games.example.com</screen>
1102 This allows access to only those three sites.
1105 A more interesting approach is <application>Privoxy's</application>
1106 <literal>trustfile</literal> concept, which incorporates the notion of
1107 <quote>trusted referrers</quote>. See the <ulink
1108 url="../user-manual/config.html#TRUSTFILE">User Manual Trust</ulink>
1112 These are fairly simple approaches and are not completely foolproof. There
1113 are various other configuration options that should be disabled (described
1114 elsewhere here and in <ulink url="../user-manual/">the User Manual</ulink>)
1115 so that users can't modify their own configuration and easily circumvent the
1122 <!-- ~ End section ~ -->
1125 <!-- ~~~~~ New section ~~~~~ -->
1127 <sect1 id="misc"><title>Miscellaneous</title>
1129 <sect2 renderas="sect3">
1130 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
1131 has to add extra time to browsing.</title>
1133 How much of an impact depends on many things, including the CPU of the host
1134 system, how agressive the configuration is, which specific actions are being triggered, etc.
1137 Overall, it should not slow you down any in real terms, and may actually help
1138 speed things up since ads, banners and other junk are not typically being displayed.
1139 The actual processing time required by <application>Privoxy</application>
1140 itself for each page, is relatively small in the overall scheme of things,
1141 and happens very quickly. This is typically more than offset by time saved
1142 not downloading and rendering ad images (if ad blocking is being used).
1146 <quote>Filtering</quote> content via the <literal><ulink
1147 url="../user-manual/actions-file.html#FILTER">filter</ulink></literal> or
1149 url="../user-manual/actions-file.html#DEANIMATE-GIFS">deanimate-gifs</ulink></literal>
1150 actions will cause a perceived slowdown, since the entire document needs to be buffered
1151 before displaying. On very large documents, there may be some impact. How
1152 much depends on the page size, the actual definition of the filter(s), etc. See below.
1153 Most other actions have little to no impact on speed.
1159 <sect2 renderas="sect3" id="loadingtimes"><title>I noticed considerable
1160 delays in page requests compared to the old Junkbuster. What's wrong?</title>
1162 If you use any <literal><ulink
1163 url="../user-manual/actions-file.html#FILTER">filter</ulink></literal> action,
1164 such as filtering banners by size, web-bugs etc, or the <literal><ulink
1165 url="../user-manual/actions-file.html#DEANIMATE-GIFS">deanimate-gifs</ulink></literal>
1166 action, the entire document must be loaded into memory in order for the filtering
1167 mechanism to work, and nothing is sent to the browser during this time.
1170 The loading time typically does not really change much in real numbers, but
1171 the feeling is different, because most browsers are able to start rendering
1172 incomplete content, giving the user a feeling of "it works". This effect is
1173 more noticeable on slower dialup connections. Extremely large documents
1174 may have some impact on the time to load the page. But the overall difference
1175 should be very minimal. If there is a big impact, then probably some other
1176 problem is contributing.
1179 Filtering is automatically disabled for inappropriate MIME types. But note
1180 that if the web server mis-reports the MIME type, then content that should
1181 not be filtered, could be. <application>Privoxy</application> only knows how
1182 to differentiate filterable content because of the MIME type as reported by
1183 the server, or because of some configuration setting that enables/disables
1189 <sect2 renderas="sect3" id="slowcrawl">
1190 <title>I just installed <application>Privoxy</application>, and all my
1191 browsing has slowed to a crawl. What gives? </title>
1193 This should not happen, and for the overwhelming number of users world-wide,
1194 it does not happen. I would suspect some inadvertent interaction of software
1195 components such as anti-virus software, spyware protectors, personal
1196 firewalls or similar components. Try disabling (or uninstalling) these one
1197 at a time and see if that helps.
1201 <sect2 renderas="sect3" id="configurl"><title>What are "http://config.privoxy.org/" and
1202 "http://p.p/"?</title>
1204 <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> is the
1205 address of <application>Privoxy</application>'s built-in user interface, and
1206 <ulink url="http://p.p/">http://p.p/</ulink> is a shortcut for it.
1209 Since <application>Privoxy</application> sits between your web browser and the Internet,
1210 it can simply intercept requests for these addresses and answer them with its built-in
1211 <quote>web server</quote>.
1214 This also makes for a good test for your browser configuration: If entering the
1215 URL <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
1216 takes you to a page saying <quote>This is Privoxy ...</quote>, everything is OK.
1217 If you get a page saying <quote>Privoxy is not working</quote> instead, then
1218 your browser didn't use <application>Privoxy</application> for the request,
1219 hence it could not be intercepted, and you have accessed the <emphasis>real</emphasis>
1220 web site at config.privoxy.org.
1223 With recent versions of <application>Privoxy</application> (version 2.9.x and
1224 later), the user interface features information on the run time status, the
1225 configuration, and even a built-in editor for the <ulink
1226 url="../user-manual/actions-file.html">actions files</ulink>.
1230 Note that the built-in URLs from earlier versions of <application>Junkbuster</application>
1231 / <application>Privoxy</application>, http://example.com/show-proxy-args and http://i.j.b/,
1232 are no longer supported. If you still use such an old version, you should really consider
1233 upgrading to &p-version;.
1238 out of date 09/02/06 HB
1239 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1241 No. The patterns for blocking now reside (among other things) in the <ulink
1242 url="../user-manual/actions-file.html">actions files</ulink>, which are
1243 actively maintained instead. See next question ...
1247 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads, or report
1250 Please see the <link linkend="contact">Contact section</link> for
1251 various ways to interact with the developers.
1256 <sect2 renderas="sect3" id="noonecares"><title>Why doesn't anyone answer my support
1259 Rest assured that it has been read and considered. Why it is not answered,
1260 could be for various reasons, including no one has a good answer for it, no
1261 one has had time to yet investigate it thorougly, it has been reported
1262 numerous times already, or because not enough information was provided to help
1263 us help you. Your efforts are not wasted, and we do appreciate them.
1269 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1271 If you run both the browser and the proxy locally, you cannot hide your IP
1272 address with <application>Privoxy</application> or ultimately any other
1273 software. The server needs to know your IP address to send the answers back
1277 There are many publicly usable "anonymous" proxies out there, which
1278 provide a further level of indirection between you and the web server.
1281 However, these proxies are called "anonymous" because you don't need
1282 a password, not because they would offer any real anonymity.
1283 Most of them will log your IP address and make it available to the
1284 authorities in case you violate the law of the country they run in. In fact
1285 you can't even rule out that some of them only exist to *collect* information
1286 on (those suspicious) people with a more than average preference for privacy.
1289 Your best bet is to chain <application>Privoxy</application>
1290 with <ulink url="http://tor.eff.org/">Tor</ulink>,
1291 an <ulink url="http://www.eff.org/">EFF</ulink> supported onion routing system.
1292 The configuration details can be found in
1293 <ulink url="#TOR">How do I use <application>Privoxy</application> together with <application>Tor</application>?</ulink>.
1297 There is, however, even in the single-machine case the possibility to make the
1298 server believe that your machine is in fact a shared proxy serving a large
1299 LAN, and we are looking into that.
1301 I assume this is about sending fake forward IP addresses?
1302 David and I looked into it and considered it a waste of time to implement.
1307 <sect2 renderas="sect3">
1308 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1310 No. Your chances of remaining anonymous are greatly improved, but unless you
1311 <ulink url="#TOR">chain <application>Privoxy</application> with <application>Tor</application></ulink>
1312 or a similar system and know what you're doing when it comes to configuring
1313 the rest of your system, it would be safest to assume that everything you do
1314 on the Web can be traced back to you.
1317 <application>Privoxy</application> can remove various information about you,
1318 and allows <emphasis>you</emphasis> more freedom to decide which sites
1319 you can trust, and what details you want to reveal. But it neither
1320 hides your ip address, nor can it guarantee that the rest of the system
1321 behaves correctly. There are several possibilities how a web sites can find
1322 out who you are, even if you are using a strict <application>Privoxy</application>
1323 configuration and chained it with <application>Tor</application>.
1326 Most of <application>Privoxy's</application> protection can be easily subverted
1327 by an insecure browser configuration, therefore you should use a browser that can
1328 be configured to only execute code from trusted sites, and be careful which sites you trust.
1329 For example there is no point in having <application>Privoxy</application>
1330 modify the User-Agent header, if websites can get all the information they want
1331 through JavaScript, ActiveX, Flash, Java etc.
1334 A few browsers disclose the user's email address in certain situations, such
1335 as when transferring a file by FTP. <application>Privoxy</application>
1336 does not filter FTP. If you need this feature, or are concerned about the
1337 mail handler of your browser disclosing your email address, you might
1338 consider products such as <application>NSClean</application>.
1341 Browsers available only as binaries could use non-standard headers to give
1342 out any information they can have access to: see the manufacturer's license
1343 agreement. It's impossible to anticipate and prevent every breach of privacy
1344 that might occur. The professionally paranoid prefer browsers available as
1345 source code, because anticipating their behavior is easier. Trust the source,
1351 <sect2 renderas="sect3" id="tor"><title>How do I use <application>Privoxy</application>
1352 together with <application>Tor</application>?</title>
1354 Before you configure <application>Privoxy</application> to use <application>Tor</application>
1355 (<ulink url="http://tor.eff.org/">http://tor.eff.org/</ulink>),
1356 please follow the User Manual chapters
1357 <ulink url="../user-manual/installation.html">2. Installation</ulink> and
1358 <ulink url="../user-manual/startup.html">5. Startup</ulink> to make sure
1359 <application>Privoxy</application> itself is setup correctly.
1362 If it is, refer to <ulink url="http://tor.eff.org/documentation.html.en">Tor's
1363 extensive documentation</ulink> to learn how to install <application>Tor</application>,
1364 and make sure <application>Tor</application>'s logfile says that
1365 <quote>Tor has successfully opened a circuit</quote> and it
1366 <quote>[l]ooks like client functionality is working</quote>.
1369 If either <application>Tor</application> or <application>Privoxy</application>
1370 isn't working, their combination most likely will neither. Testing them on their
1371 own will also help you to direct problem reports to the right audience.
1372 If <application>Privoxy</application> isn't working, don't bother the
1373 <application>Tor</application> developers. If <application>Tor</application>
1374 isn't working, don't send bug reports to the <application>Privoxy</application> Team.
1377 If you verified that <application>Privoxy</application> and <application>Tor</application>
1378 are working, it is time to connect them. As far as <application>Privoxy</application>
1379 is concerned, <application>Tor</application> is just another proxy that can be reached
1380 by socks4 or socks4a. Most likely you are interested in <application>Tor</application>
1381 to increase your anonymity level, therefore you should use socks4a,
1382 to make sure <application>Privoxy's</application> DNS requests are
1383 done through <application>Tor</application> and thus invisible to your local network.
1386 Since <application>Privoxy</application> 3.0.4, its configuration (section 5.2)
1387 is already prepared for <application>Tor</application>, if you are using a
1388 default <application>Tor</application> configuration and run it on the same
1389 system as Privoxy, you just have to uncomment the line:
1393 # forward-socks4a / 127.0.0.1:9050 .
1397 This is enough to reach the internet, but additionally you should
1398 uncomment the following forward rules, to make sure your local network is still
1399 reachable through Privoxy:
1403 # forward 192.168.*.*/ .
1404 # forward 10.*.*.*/ .
1405 # forward 127.*.*.*/ .
1409 Unencrypted connections to systems in these address ranges will
1410 be as (un)secure as the local network is, but the alternative is
1411 that you can't reach the network at all.
1412 If you also want to be able to reach servers in your local
1413 network by using their names, you will need additional
1414 exceptions that look like this:
1418 # forward localhost/ .
1422 Save the modified configuration file and open
1423 <ulink url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status/</ulink>
1424 in your browser, confirm that <application>Privoxy</application> has reloaded its configuration
1425 and that there are no other forward lines, unless you know that you need them. I everything looks good,
1427 <ulink url="http://wiki.noreply.org/noreply/TheOnionRouter/TorFAQ#head-0e1cc2ac330ede8c6ad1ac0d0db0ac163b0e6143">Tor
1428 Faq 4.2</a> to learn how to verify that you are really using <application>Tor</application>.
1431 Afterwards, please take the time to at least skim through the rest
1432 of <application>Tor's</application> documentation. Make sure you understand
1433 what <application>Tor</application> does, why it is no replacement for
1434 application level security, and why you shouldn't use it for unencrypted logins.
1438 <sect2 renderas="sect3">
1439 <title id="sitebreak">Might some things break because header information or
1440 content is being altered?</title>
1443 Definitely. More and more sites use HTTP header content to decide what to
1444 display and how to display it. There is many ways that this can be handled,
1445 so having hard and fast rules, is tricky.
1449 <quote>User-Agent</quote> in particular is often used in this way to identify
1450 the browser, and adjust content accordingly. Changing this now (at least not
1451 further than removing the OS information) is not recommended, since so many
1452 sites do look for it. You may get undesirable results by changing this.
1456 For instance, different browsers use different encodings of Russian and Czech
1457 characters, certain web servers convert pages on-the-fly according to the
1458 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1459 operating system or browser manufacturer causes some sites in these languages
1460 to be garbled; Surfers to Eastern European sites should change it to
1461 something closer. And then some page access counters work by looking at the
1462 <quote>Referer</quote> header; they may fail or break if unavailable. The
1463 weather maps of Intellicast have been blocked by their server when no
1464 <quote>Referer</quote> or cookie is provided, is another example. (But you
1465 can forge both headers without giving information away). There are
1466 many other ways things can go wrong when trying to fool a web server.
1470 Similar thoughts apply to modifying JavaScript, and, to a lesser degree,
1475 If you have problems with a site, you will have to adjust your configuration
1476 accordingly. Cookies are probably the most likely adjustment that may
1477 be required, but by no means the only one.
1483 <sect2 renderas="sect3">
1484 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1485 speed up web browsing?</title>
1487 No, it does not have this ability at all. You want something like
1488 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1489 before you ask, <application>Privoxy</application> can co-exist
1490 with other kinds of proxies like <application>Squid</application>.
1491 See the <ulink url="../user-manual/config.html#FORWARDING">forwarding
1492 chapter</ulink> in the <ulink url="../user-manual/index.html">user
1493 manual</ulink> for details.
1497 <sect2 renderas="sect3">
1498 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1500 Not in the way you mean, or in the way a true firewall can.
1501 <application>Privoxy</application> can help protect your privacy, but not
1502 protect you from intrusion attempts. It is, of course, perfectly possible
1503 and recommended to use <emphasis>both</emphasis>.
1507 <!-- No longer needed
1508 <sect2 renderas="sect3">
1509 <title id="logo">The <application>Privoxy</application> logo that replaces ads is very blocky
1510 and ugly looking. Can't a better font be used?</title>
1513 This is not a font problem. The logo is an image that is created by
1514 <application>Privoxy</application> on the fly. So as to not waste
1515 memory, the image is rather small. The blockiness comes when the
1516 image is scaled to fill a largish area. There is not much to be done
1517 about this, other than to use one of the other
1518 <quote>imageblock</quote> directives: <emphasis>pattern</emphasis>,
1519 <emphasis>blank</emphasis>, or a URL of your choosing.
1522 Given the above problem, we have decided to remove the logo option entirely
1528 <sect2 renderas="sect3">
1529 <title id="wasted">I have large empty spaces / a checkerboard pattern now where
1530 ads used to be. Why?</title>
1532 It would be technically possible eliminate the banners in a way that frees
1533 their screen estate in many cases, by doing all banner blocking with filters,
1534 i.e. eliminating the whole image references from the HTML pages instead
1535 of letting them stay in, and blocking the resulting requests for the
1539 But this would consume considerable CPU resources, would likely destroy
1540 the layout of many web pages which rely on the banners consuming a certain
1541 amount of screen space, and would fail in other cases, where the screen space
1542 is reserved e.g. by tables anyway. Also, making the banners disappear without
1543 a visual trace complicates troubleshooting.
1546 So we won't support this in the default configuration, but you can of course
1547 define appropriate filters yourself.
1551 <sect2 renderas="sect3">
1552 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1554 Since secure HTTP connections are encrypted SSL sessions between your browser
1555 and the secure site, and are meant to be reliably <emphasis>secure</emphasis>,
1556 there is little that <application>Privoxy</application> can do but hand the raw
1557 gibberish data though from one end to the other unprocessed.
1560 The only exception to this is blocking by host patterns, as the client needs
1561 to tell <application>Privoxy</application> the name of the remote server,
1562 so that <application>Privoxy</application> can establish the connection.
1563 If that name matches a host-only pattern, the connection will be blocked.
1566 As far as ad blocking is concerned, this is less of a restriction than it may
1567 seem, since ad sources are often identifiable by the host name, and often
1568 the banners to be placed in an encrypted page come unencrypted nonetheless
1569 for efficiency reasons, which exposes them to the full power of
1570 <application>Privoxy</application>'s ad blocking.
1573 <quote>Content cookies</quote> (those that are embedded in the actual HTML or
1574 JS page content, see <literal><ulink
1575 url="../user-manual/actions-file.html#FILTER-CONTENT-COOKIES">filter{content-cookies}</ulink></literal>),
1576 in an SSL transaction will be impossible to block under these conditions.
1577 Fortunately, this does not seem to be a very common scenario since most
1578 cookies come by traditional means.
1583 <sect2 renderas="sect3">
1584 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1585 secure is it? Do I need to take any special precautions?</title>
1587 There are no known exploits that might affect
1588 <application>Privoxy</application>. On Unix-like systems,
1589 <application>Privoxy</application> can run as a non-privileged
1590 user, which is how we recommend it be run. Also, by default
1591 <application>Privoxy</application> only listens to requests
1592 from <quote>localhost</quote> only. The server aspect of
1593 <application>Privoxy</application> is not itself directly exposed to the
1594 Internet in this configuration. If you want to have
1595 <application>Privoxy</application> serve as a LAN proxy, this will have to
1596 be opened up to allow for LAN requests. In this case, we'd recommend
1597 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1598 <application>Privoxy</application> configuration file and check all <ulink
1599 url="../user-manual/config.html#ACCESS-CONTROL">access control and security
1600 options</ulink>. All LAN hosts can then use this as their proxy address
1601 in the browser proxy configuration, but <application>Privoxy</application>
1602 will not listen on any external interfaces. ACLs can be defined in addition,
1603 and using a firewall is always good too. Better safe than sorry.
1608 <sect2 renderas="sect3" id="turnoff">
1609 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1611 The easiest way is to access <application>Privoxy</application> with your
1612 browser by using the remote toggle URL: <ulink
1613 url="http://config.privoxy.org/toggle">http://config.privoxy.org/toggle</ulink>.
1614 See the <ulink url="../user-manual/appendix.html#BOOKMARKLETS">Bookmarklets section</ulink>
1615 of the <citetitle>User Manual</citetitle> for an easy way to access this
1620 <sect2 renderas="sect3" id="reallyoff">
1621 <title>When <quote>disabled</quote> is <application>Privoxy</application> totally
1622 out of the picture?</title>
1624 No, this just means all filtering and actions are disabled.
1625 <application>Privoxy</application> is still acting as a proxy, but just not
1626 doing any of the things that <application>Privoxy</application> would
1627 normally be expected to do. It is still a <quote>middle-man</quote> in
1628 the interaction between your browser and web sites.
1632 <sect2 renderas="sect3" id="crunch">
1633 <title>My logs show <application>Privoxy</application> <quote>crunches</quote>
1634 ads, but also its own CGI pages. What is a <quote>crunch</quote>?</title>
1636 A <quote>crunch</quote> simply means <application>Privoxy</application> intercepted
1637 <emphasis>something</emphasis>, nothing more. Often this is indeed ads or
1638 banners, but <application>Privoxy</application> uses the same mechanism for
1639 trapping requests for its own internal pages. For instance, a request for
1640 <application>Privoxy's</application> configuration page at: <ulink
1641 url="http://config.privoxy.org">http://config.privoxy.org</ulink>, is
1642 intercepted (i.e. it does not go out to the 'net), and the familiar CGI
1643 configuration is returned to the browser, and the log consequently will show
1644 a <quote>crunch</quote>.
1648 <sect2 renderas="sect3" id="downloads">
1649 <title>Can <application>Privoxy</application> effect files that I download
1650 from a webserver? FTP server?</title>
1652 From the webserver's perspective, there is no difference between
1653 viewing a document (i.e. a page), and downloading a file. The same is true of
1654 <application>Privoxy</application>. If there is a match for a <literal><ulink
1655 url="../user-manual/actions-file.html#BLOCK">block</ulink></literal> pattern,
1656 it will still be blocked, and of course this is obvious.
1659 Filtering is potentially more of a concern since the results are not always
1660 so obvious, and the effects of filtering are there whether the file is simply
1661 viewed, or downloaded. And potentially whether the content is some obnoxious
1662 advertizement, or Mr. Jimmy's latest/greatest source code jewel. Of course,
1663 one of these presumably is <quote>bad</quote> content that we don't want, and
1664 the other is <quote>good</quote> content that we do want.
1665 <application>Privoxy</application> is blind to the differences, and can only
1666 distinguish <quote>good from bad</quote> by the configuration parameters
1667 <emphasis>we</emphasis> give it.
1670 <application>Privoxy</application> knows the differences in files according
1671 to the <quote>Document Type</quote> as reported by the webserver. If this is
1672 reported accurately (e.g. <quote>application/zip</quote> for a zip archive),
1673 then <application>Privoxy</application> knows to ignore these where
1674 appropriate. <application>Privoxy</application> potentially can filter HTML
1675 as well as plain text documents, subject to configuration parameters of
1676 course. Also, documents that are of an unknown type (generally assumed to be
1677 <quote>text/plain</quote>) can be filtered, as will those that might be
1678 incorrectly reported by the webserver. If such a file is a downloaded file
1679 that is intended to be saved to disk, then any content that might have been
1680 altered by filtering, will be saved too, for these (probably rare) cases.
1683 Note that versions later than 3.0.2 do NOT filter document types of
1684 <quote>text/plain</quote>. Prior to this, <application>Privoxy</application>
1685 did filter this document type.
1688 In short, filtering is <quote>ON</quote> if a) the Document Type as reported
1689 by the webserver is appropriate <emphasis>and</emphasis> b) the configuration
1690 allows it (or at least does not disallow it). That's it. There is no magic
1691 cookie anywhere to say this is <quote>good</quote> and this is
1692 <quote>bad</quote>. It's the configuration that let's it all happen or not.
1695 If you download text files, you probably do not want these to be filtered,
1696 particularly if the content is source code, or other critical content. Source
1697 code sometimes might be mistaken for Javascript (i.e. the kind that might
1698 open a pop-up window). It is recommended to turn off filtering for download
1699 sites (particularly if the content may be plain text files and you are using
1700 version 3.0.2 or earlier) in your <filename>user.action</filename> file. And
1701 also, for any site or page where making <emphasis>any</emphasis> changes at
1702 all to the content is to be avoided.
1705 <application>Privoxy</application> does not do FTP at all, only HTTP
1706 protocols, so please don't even try.
1710 <sect2 renderas="sect3" id="downloads2">
1711 <title>I just downloaded a Perl script, and <application>Privoxy</application>
1712 altered it! Yikes, what is wrong!</title>
1719 <sect2 renderas="sect3" id="seealso">
1720 <title>Where can I find more information about <application>Privoxy</application>
1721 and related issues?</title>
1722 <!-- Include seealso.sgml boilerplate: -->
1724 <!-- end boilerplate -->
1729 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1735 <sect2 renderas="sect3" id="microsuck">
1736 <title>I've noticed that Privoxy changes <quote>Microsoft</quote> to
1737 <quote>MicroSuck</quote>! Why are you manipulating my browsing?</title>
1740 We're not. The text substitutions that you are seeing are disabled
1741 in the default configuration as shipped. You have either manually
1742 activated the <quote><literal>fun</literal></quote> filter which
1743 is clearly labeled <quote>Text replacements for subversive browsing
1744 fun!</quote> or you are using an older Privoxy version and have implicitly
1745 activated it by choosing the <quote>Adventuresome</quote> profile in the
1753 <!-- ~~~~~ New section ~~~~~ -->
1755 <sect1 id="trouble">
1756 <title>Troubleshooting</title>
1758 <sect2 renderas="sect3">
1759 <title id="refused">I am getting <quote>connection refused</quote>
1760 with every web page?</title>
1762 Either <application>Privoxy</application> is not running, or your
1763 browser is configured for a different port than what
1764 <application>Privoxy</application> is using.
1768 Early <application>Privoxy</application> versions (and also
1769 <application>Junkbuster</application>) used port 8000 by
1770 default. This has been changed to port 8118 now, due to a conflict
1771 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1772 you need to change your browser to the new port number, or alternately
1774 url="../user-manual/config.html#LISTEN-ADDRESS"><literal>listen-address</literal>
1775 option</ulink> in <application>Privoxy's</application> <ulink
1776 url="../user-manual/config.html">main configuration file</ulink>.
1781 <sect2 renderas="sect3">
1782 <title id="flushit">I just added a new rule, but the steenkin ad is
1783 still getting through. How?</title>
1785 If the ad had been displayed before you added its URL, it will probably be
1786 held in the browser's cache for some time, so it will be displayed without
1787 the need for any request to the server, and <application>Privoxy</application>
1788 will not be in the picture. The best thing to do is try flushing the browser's
1789 caches. And then try again.
1793 If this doesn't help, you probably have an error in the rule you
1794 applied. Try pasting the full URL of the offending ad into <ulink
1795 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1796 and see if it really matches your new rule. Blocking ads is like blocking
1797 spam: a lot of tinkering is required to stay ahead of the game.
1802 <sect2 id="badsite" renderas="sect3">
1803 <title >One of my favorite sites does not work with <application>Privoxy</application>.
1804 What can I do?</title>
1807 First verify that it is indeed a <application>Privoxy</application> problem,
1808 by toggling off <application>Privoxy</application> through <ulink
1809 url="http://config.privoxy.org/toggle">http://config.privoxy.org/toggle</ulink>,
1810 and then shift-reloading the problem page (i.e. holding down the shift key
1811 while clicking reload. Alternatively, flush your browser's disk and memory
1816 If still a problem, go to <ulink
1817 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1818 and paste the full URL of the page in question into the prompt. See which actions
1819 are being applied to the URL, and which matches in which actions files are
1820 responsible for that. Now, armed with this information, go to <ulink
1821 url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>
1822 and select the appropriate actions files for editing.
1825 You can now either look for a section which disables the actions that
1826 you suspect to cause the problem and add a pattern for your site there,
1827 or make up a completely new section for your site. In any case, the recommended
1828 way is to disable only the prime suspect, reload the problem page, and only
1829 if the problem persists, disable more and more actions until you have
1830 identified the culprit. You may or may not want to turn the other actions
1831 on again. Remember to flush your browser's caches in between any such changes!
1834 Alternately, if you are comfortable with a text editor, you can accomplish
1835 the same thing by editing the appropriate actions file. Probably the easiest
1836 way to deal with such problems when editing by hand is to add your
1837 site to a <literal>{ fragile }</literal> section in <filename>user.action</filename>,
1838 which is an alias that turns off most <quote>dangerous</quote>
1839 actions, but is also likely to turn off more actions then needed, and thus lower
1840 your privacy and protection more than necessary,
1843 Troubleshooting actions is discussed in more detail in the <ulink
1844 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1845 There is also an <ulink
1846 url="../user-manual/actions-file.html#ACT-EXAMPLES">actions tutorial</ulink>.
1852 <!-- ~~~~~ New section ~~~~~ -->
1853 <sect2 id="dun" renderas="sect3">
1854 <title>After installing <application>Privoxy</application>, I have to log in
1855 every time I start IE. What gives?</title>
1858 This is a quirk that effects the installation of
1859 <application>Privoxy</application>, in conjunction with Internet Explorer and
1860 Internet Connection Sharing on Windows 2000 and Windows XP. The symptoms may
1861 appear to be corrupted or invalid DUN settings, or passwords.
1865 When setting up an NT based Windows system with
1866 <application>Privoxy</application> you may find that things do not seem to be
1867 doing what you expect. When you set your system up you will probably have set
1868 up Internet Connection Sharing (ICS) with Dial up Networking (DUN) when
1869 logged in with administrator privileges. You will probably have made this DUN
1870 connection available to other accounts that you may have set-up on your
1871 system. E.g. Mum or Dad sets up the system and makes accounts suitably
1872 configured for the kids.
1876 When setting up <application>Privoxy</application> in this environment you
1877 will have to alter the proxy set-up of Internet Explorer (IE) for the
1878 specific DUN connection on which you wish to use
1879 <application>Privoxy</application>. When you do this the ICS DUN set-up
1880 becomes user specific. In this instance you will see no difference if you
1881 change the DUN connection under the account used to set-up the connection.
1882 However when you do this from another user you will notice that the DUN
1883 connection changes to make available to "Me only". You will also find that
1884 you have to store the password under each different user!
1888 The reason for this is that each user's set-up for IE is user specific. Each
1889 set-up DUN connection and each LAN connection in IE store the settings for
1890 each user individually. As such this enforces individual configurations
1891 rather than common ones. Hence the first time you use a DUN connection after
1892 re-booting your system it may not perform as you expect, and prompt you for
1893 the password. Just set and save the password again and all should be OK.
1897 [Thanks to Ray Griffith for this submission.]
1902 <!-- ~~~~~ New section ~~~~~ -->
1903 <sect2 id="ftp" renderas="sect3">
1904 <title>I cannot connect to any FTP sites. <application>Privoxy</application>
1905 seems to be blocking me.</title>
1907 <application>Privoxy</application> cannot act as a proxy for FTP traffic,
1908 so do not configure your browser to use <application>Privoxy</application>
1909 as an FTP proxy. The same is true for <emphasis>any protocol other than HTTP
1910 or HTTPS</emphasis>.
1913 Most browsers understand FTP as well as HTTP. If you connect to a site, with
1914 a URL like <literal>ftp://ftp.example.com</literal>, your browser is making
1915 an FTP connection, and not a HTTP connection. So while your browser may
1916 speak FTP, <application>Privoxy</application> does not, and cannot proxy
1920 To complicate matters, some systems may have a generic <quote>proxy</quote>
1921 setting, which will silently enable <emphasis>both</emphasis> HTTP and FTP
1922 proxying! So it is possible to accidentally enable FTP proxying in these
1923 cases. And of course, if this happens, <application>Privoxy</application>
1924 will indeed cause problems since it does not know FTP.
1927 Will <application>Privoxy</application> ever proxy FTP traffic? Unlikely.
1928 There just is not much reason, and the work to make this happen is more than
1933 <!-- ~~~~~ New section ~~~~~ -->
1934 <sect2 id="osxie" renderas="sect3">
1935 <title>In Mac OSX, I can't configure Microsoft Internet Explorer to use
1936 <application>Privoxy</application> as the HTTP proxy.</title>
1938 Microsoft Internet Explorer (in versions like 5.1) respects system-wide
1939 network settings. In order to change the HTTP proxy, open System
1940 Preferences, and click on the Network icon. In the settings pane that
1941 comes up, click on the Proxies tab. Ensure the "Web Proxy (HTTP)" checkbox
1942 is checked and enter <literal>127.0.0.1</literal> in the entry field.
1943 Enter <literal>8118</literal> in the Port field. The next time you start
1944 IE, it should reflect these values.
1948 <!-- ~~~~~ New section ~~~~~ -->
1949 <sect2 renderas="sect3" id="osxuninstall">
1950 <title>In Mac OSX, I dragged the Privoxy folder to the trash in order to
1951 uninstall it. Now the finder tells me I don't have sufficient privileges to
1952 empty the trash.</title>
1954 Just dragging the <application>Privoxy</application> folder to the trash is
1955 not enough to delete it. <application>Privoxy</application> supplies an
1956 <application>uninstall.command</application> file that takes care of
1957 these details. Open the trash, drag the <application>uninstall.command</application>
1958 file out of the trash and double-click on it. You will be prompted for
1959 confirmation and the administration password.
1962 The trash may still appear full after this command; emptying the trash
1963 from the desktop should make it appear empty again.
1968 <!-- ~~~~~ New section ~~~~~ -->
1969 <sect2 renderas="sect3" id="osximages">
1970 <title>In Mac OSX Panther (10.3), images often fail to load and/or I
1971 experience random delays in page loading. I'm using
1972 <literal>localhost</literal> as my browser's proxy setting.</title>
1974 We believe this is due to an IPv6-related bug in OSX, but don't fully
1975 understand the issue yet. In any case, changing the proxy setting to
1976 <literal>127.0.0.1</literal> instead of <literal>localhost</literal>
1977 works around the problem.
1981 <!-- ~~~~~ New section ~~~~~ -->
1982 <sect2 renderas="sect3" id="blankpage">
1983 <title>I get a completely blank page at one site. <quote>View Source</quote>
1984 shows only: <markup><![CDATA[<html><body></body></html>]]></markup>. Without
1985 <application>Privoxy</application> the page loads fine.</title>
1987 Chances are that the site suffers from a bug in
1988 <ulink url="http://www.php.net/"><application>PHP</application></ulink>,
1989 which results in empty pages being sent if the client explicitly requests
1990 an uncompressed page, like <application>Privoxy</application> does.
1991 This bug has been fixed in PHP 4.2.3.
1994 To find out if this is in fact the source of the problem, try adding
1995 the site to a <literal>-prevent-compression</literal> section in
1996 <filename>user.action</filename>:
1999 # Make exceptions for ill-behaved sites:
2001 {-prevent-compression}
2002 .example.com</screen>
2004 If that works, you may also want to report the problem to the
2005 site's webmasters, telling them to use zlib.output_compression
2006 instead of ob_gzhandler in their PHP applications (workaround)
2007 or upgrade to PHP 4.2.3 or later (fix).
2011 <!-- ~~~~~ New section ~~~~~ -->
2012 <sect2 renderas="sect3" id="error503">
2013 <title>Why am I getting a 503 Error (WSAECONNREFUSED) on every page?</title>
2015 More than likely this is a problem with your TCP/IP networking. ZoneAlarm has
2016 been reported to cause this symptom -- even if not running. The solution is
2017 to either fight the ZA configuration, or uninstall ZoneAlarm, and then find
2018 something better behaved in its place. Other personal firewall type products
2019 may cause similar type problems if not configured correctly.
2023 <sect2 renderas="sect3" id="nohostname">
2024 <title>My logs show many <quote>Unable to get my own hostname</quote> lines.
2027 <application>Privoxy</application> tries to get the hostname of the system
2028 its running on from the IP address of the system interface it is bound to
2029 (from the <filename>config</filename> file
2030 <emphasis>listen-address</emphasis> setting). If the system cannot supply
2031 this information, <application>Privoxy</application> logs this condition.
2034 Typically, this would be considered a minor system configuration error. It is
2035 not a fatal error to <application>Privoxy</application> however, but may
2036 result in a much slower response from <application>Privoxy</application> on
2037 some platforms due to DNS timeouts.
2041 <sect2 renderas="sect3" id="inuse">
2042 <title>When I try to launch <application>Privoxy</application>, I get an
2043 error message <quote>port 8118 is already in use</quote> (or similar wording).
2046 Port 8118 is <application>Privoxy's</application> default TCP
2047 <quote>listening</quote> port. Typically this message would mean that there
2048 is already one instance of <application>Privoxy</application> running, and
2049 you are actually trying to start a second <application>Privoxy</application>
2050 on the same port, which will not work. (You can have multiple instances but
2051 they must be assigned different ports.) How and why this might happen varies
2052 from platform to platform, but you need to check your installation and
2053 start-up procedures.
2057 <sect2 renderas="sect3" id="demoronizer">
2059 Pages with UTF-8 fonts are garbled.
2062 This is caused by the <quote>demoronizer</quote> filter. You should either
2063 upgrade <application>Privoxy</application>, or at least upgrade to the most
2064 recent <filename>default.action</filename> file available from <ulink
2065 url="http://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>.
2066 Or you can simply disable the demoronizer filter.
2070 <sect2 renderas="sect3" id="demoronizer2">
2072 Why are binary files (such as images) corrupted when <application>Privoxy</application>
2076 This may also be caused by the <quote>demoronizer</quote> filter,
2077 in conjunction with a web server that is misreporting a file type. Binary
2078 files are exempted from <application>Privoxy's</application> filtering
2079 (unless the web server by mistake says the file is something else). Either
2080 upgrade <application>Privoxy</application>, or go to the most recent
2081 <filename>default.action</filename> file available from <ulink
2082 url="http://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>.
2086 <sect2 renderas="sect3" id="demoronizer3">
2088 What is the <quote>demoronizer</quote> and why is it there?
2091 The original demoronizer was a Perl script that cleaned up HTML pages which
2092 were created with certain Microsoft products. MS has used proprietary extensions
2093 to standardized font encodings (ISO 8859-1), which has caused problems for pages
2094 that are viewed with non-Microsoft products (and are expecting to see a
2095 standard set of fonts). The demoronizer corrected these errors so the pages
2096 displayed correctly. <application>Privoxy</application> borrowed from this
2097 script, introducing a filter based on the original demoronizer, which in turn could
2098 correct these errors on the fly.
2101 But this is only needed in some situations, and will cause serious problems in some
2105 If you are using Microsoft products, you do not need it. If you need to view
2106 pages with UTF-8 characters (such as Cyrillic or Chinese), then it will
2107 cause corruption of the fonts, and thus <emphasis>should not be on</emphasis>.
2110 On the other hand, if you use non-Microsoft products, and you occasionally
2111 notice wierd characters on pages, you might want to try it.
2115 <sect2 renderas="sect3" id="windowopen">
2117 Why do I keep seeing <quote>PrivoxyWindowOpen()</quote> in raw source code?
2120 <application>Privoxy</application> is attempting to disable malicious
2121 Javascript in this case, with the <literal>unsolicited-popups</literal>
2122 filter. <application>Privoxy</application> cannot tell very well
2123 <quote>good</quote> code snippets from <quote>bad</quote> code snippets.
2126 If you see this in HTML source, and the page displays without problems, then
2127 this is good, and likely some pop-up window was disabled. If you see this
2128 where it is causing a problem, such as a downloaded program source code file,
2129 then you should set an exception for this site or page such that the
2130 integrity of the page stays in tact by disabling all filtering.
2134 <sect2 renderas="sect3" id="dnserrors">
2136 I am getting too many DNS errors like <quote>404 No Such Domain</quote>. Why
2137 can't <application>Privoxy</application> do this better?
2140 There are potentially several factors here. First of all, the DNS resolution
2141 is done by the underlying operating system -- not
2142 <application>Privoxy</application> itself. <application>Privoxy</application>
2143 merely initiates the process and hands it off, and then later reports
2144 whatever the outcome was. And tries to give a coherent message if there seems
2145 to be a problem. In some cases, this might otherwise be mitigated by the
2146 browser itself which might try some work-arounds and alernate approaches (e.g
2147 adding <quote>www.</quote> to the URL). In other cases, if
2148 <application>Privoxy</application> is being chained with another proxy, this
2149 could complicate the issue, and cause undue
2150 delays and timeouts. In the case of a <quote>socks4a</quote> proxy, the socks
2151 server handles all the DNS. <application>Privoxy</application> would just be
2152 the <quote>messenger</quote> which is reporting whatever problem occurred
2153 downstream, and not the root cause of the error.
2156 In any case, v. 3.0.4 includes various improvements to help
2157 <application>Privoxy</application> better handle these cases.
2161 <sect2 renderas="sect3" id="allcpu">
2163 At one site <application>Privoxy</application> just hangs, and starts taking
2164 all CPU. Why is this?
2167 This is probably a manifestation of the <quote>100% cpu</quote> problem that
2168 occurs on pages containing many (thousands upon thousands) of blank lines. The blank lines
2169 are in the raw HTML source of the page, and the browser just ignores them. But the
2170 pattern matching in <application>Privoxy's</application> page filtering
2171 mechanism is trying to match against absurdly long strings and this becomes
2172 very CPU-intensive, taking a long, long time to complete. Until a better
2173 solution comes along, disable filtering on these pages, particularly the
2174 <literal>js-annoyances</literal> and <literal>unsolicited-popups</literal>
2183 <!-- ~~~~~ New section ~~~~~ -->
2184 <sect1 id="contact"><title>Contacting the developers, Bug Reporting and Feature Requests</title>
2185 <!-- Include contacting.sgml -->
2187 <!-- end contacting -->
2190 <!-- ~~~~~ New section ~~~~~ -->
2191 <sect1 id="copyright"><title>Privoxy Copyright, License and History</title>
2193 <!-- Include copyright.sgml -->
2199 Portions of this document are <quote>borrowed</quote> from the original
2200 <application>Junkbuster</application> (tm) FAQ, and modified as
2201 appropriate for <application>Privoxy</application>.
2204 <!-- ~~~~~ New section ~~~~~ -->
2205 <sect2><title>License</title>
2206 <!-- Include copyright.sgml: -->
2208 <!-- end copyright -->
2210 <!-- ~ End section ~ -->
2212 <!-- ~~~~~ New section ~~~~~ -->
2213 <sect2><title>History</title>
2214 <!-- Include history.sgml -->
2220 <!-- ~ End section ~ -->
2223 <!-- ~~~~~ New section ~~~~~ -->
2225 <sect1 id="seealso"><title>See also</title>
2227 <!-- Include seealso.sgml -->
2238 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
2240 This program is free software; you can redistribute it
2241 and/or modify it under the terms of the GNU General
2242 Public License as published by the Free Software
2243 Foundation; either version 2 of the License, or (at
2244 your option) any later version.
2246 This program is distributed in the hope that it will
2247 be useful, but WITHOUT ANY WARRANTY; without even the
2248 implied warranty of MERCHANTABILITY or FITNESS FOR A
2249 PARTICULAR PURPOSE. See the GNU General Public
2250 License for more details.
2252 The GNU General Public License should be included with
2253 this file. If not, you can view it at
2254 http://www.gnu.org/copyleft/gpl.html
2255 or write to the Free Software Foundation, Inc., 59
2256 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2259 Revision 2.12 2006/09/03 14:15:30 hal9
2260 Various updates, including 7 or 8 new FAQs, and updates/changes to various
2261 other ones to better reflect improvements, additions and changes for the
2262 upcoming release. This is close to final form for 3.0.4 IMHO.
2264 Revision 2.11 2006/07/18 14:48:50 david__schmidt
2265 Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
2266 with what was really the latest development (the v_3_0_branch branch)
2268 Revision 1.61.2.41 2004/04/05 13:44:05 oes
2269 Fixed allow-all-cookies alias name; closes SR #929746
2271 Revision 1.61.2.40 2004/01/30 17:00:33 oes
2272 Added OSX Panther problem
2274 Revision 1.61.2.39 2004/01/29 22:53:08 hal9
2275 Minor changes for exempting docs of text/plain. Change copyright date.
2277 Revision 1.61.2.38 2003/12/10 03:39:45 hal9
2278 Added FAQs for: demoronizer, related problems and why its included. Also,
2279 port 8118 already in use questions, and PrivoxyWindowOpen() questions. All in
2280 troubleshooting section.
2282 Revision 1.61.2.37 2003/10/17 11:01:50 oes
2283 Added Q&A for "not being used" page problem
2285 Revision 1.61.2.36 2003/06/26 23:49:20 hal9
2286 More on the filter/source code problem.
2288 Revision 1.61.2.35 2003/06/26 13:38:08 hal9
2289 Add FAQ on whether configuring Privoxy is necessary or not.
2291 Revision 1.61.2.34 2003/06/26 03:00:03 hal9
2292 Sorry, found another copyright date.
2294 Revision 1.61.2.33 2003/06/26 02:57:05 hal9
2295 Fix typo (finally!) and very minor modifications.
2297 Revision 1.61.2.32 2003/06/26 02:52:04 hal9
2300 Revision 1.61.2.31 2003/06/25 01:27:51 hal9
2301 Fix copyright, and a few nits.
2303 Revision 1.61.2.30 2003/06/25 01:13:52 hal9
2306 - FAQ on "Unable to get my own hostname"
2307 - Another one on filtering effects on text files.
2309 Revision 1.61.2.29 2003/06/15 21:32:58 hal9
2310 Add to the 4.17 (filtering effects on downloaded files).
2312 Revision 1.61.2.28 2003/03/18 19:37:21 oes
2313 s/Advanced|Radical/Adventuresome/g to avoid complaints re fun filter
2315 Revision 1.61.2.27 2002/12/01 06:31:58 hal9
2316 Add faq on win32 error 503 due to ZoneAlarm.
2318 Revision 1.61.2.26 2002/11/17 06:41:06 hal9
2319 Move default profiles table from FAQ to U-M, and other minor related changes.
2322 Revision 1.61.2.25 2002/10/29 03:21:50 hal9
2323 Add 3 Q/A's relating to HTML in email. Other minor touchups.
2325 Revision 1.61.2.24 2002/10/15 12:50:22 oes
2326 s/Advanced/Radical/ (stupid me)
2328 Revision 1.61.2.23 2002/10/15 12:38:56 oes
2329 Added Microsuck faq; more detail for PHP problem
2331 Revision 1.61.2.22 2002/10/12 01:13:13 hal9
2332 Updates for demoronizer, more commentary on Radical profile, and update on
2333 the srvany.exe/icon fix.
2335 Revision 1.61.2.21 2002/10/10 04:09:35 hal9
2336 s/Advanced/Radical/ and added very brief note.
2338 Revision 1.61.2.20 2002/09/26 01:22:45 hal9
2339 Small additions for LAN setup, content-cookies/SSL, and FTP non-support.
2341 Revision 1.61.2.19 2002/08/25 23:31:56 hal9
2342 Fix one grammatical error. Add brief FAQ relating to tranparent proxies (ie
2343 port 80 setting). Add FAQ on effects of Privoxy on downloaded files
2344 (especially filtering).
2346 Revision 1.61.2.18 2002/08/14 16:39:37 hal9
2347 Fix wrong tag on FAQ addition.
2349 Revision 1.61.2.17 2002/08/14 00:01:18 hal9
2352 Revision 1.61.2.16 2002/08/13 00:10:38 hal9
2353 Add faq to troubleshooting re: blank page syndrome, ie {-prevent-compression}.
2355 Revision 1.61.2.15 2002/08/10 11:34:22 oes
2356 Add disclaimer about probably being out-of-date
2358 Revision 1.61.2.14 2002/08/07 02:53:43 hal9
2359 Fix some minor markup errors, and move one OSX Q/A to troubleshooting section.
2361 Revision 1.61.2.13 2002/08/06 11:55:32 oes
2362 Added missing close tag
2364 Revision 1.61.2.12 2002/08/06 11:43:46 david__schmidt
2365 Updated OSX uninstall FAQ... we have an uninstall script now.
2367 Revision 1.61.2.11 2002/08/06 08:54:03 oes
2368 Style police: Fixed formatting details
2370 Revision 1.61.2.10 2002/08/02 14:00:25 david__schmidt
2371 Made the OSX removal commands far less dangerous
2373 Revision 1.61.2.9 2002/08/02 13:14:45 oes
2374 Added warning about sudo rm -r for Mac OSX deinstallation; moved this item to install section
2376 Revision 1.61.2.8 2002/08/02 02:01:42 david__schmidt
2377 Add FAQ item for MSIE on OSX HTTP proxy confusion
2379 Revision 1.61.2.7 2002/08/02 01:46:01 david__schmidt
2380 Added FAQ item for Mac OSX uninstall woes
2382 Revision 1.61.2.6 2002/07/30 20:04:56 hal9
2383 Fix typo: 'schould'.
2385 Revision 1.61.2.5 2002/07/26 15:22:58 oes
2386 - Updated to reflect changes in standard.action
2387 - Added info on where to get updated actions files
2389 Revision 1.61.2.4 2002/07/25 21:42:29 hal9
2390 Add brief notes on not proxying non-HTTP protocols.
2392 Revision 1.61.2.3 2002/06/09 16:36:33 hal9
2393 Clarifications on filtering and MIME. Hardcode 'latest release' in index.html.
2395 Revision 1.61.2.2 2002/06/06 02:51:34 hal9
2396 Fix typo in URL http:/config.privoxy.org
2398 Revision 1.61.2.1 2002/06/05 23:10:43 hal9
2399 Add new FAQ re: DUN/IE. Change release date from May to June :)
2401 Revision 1.61 2002/05/25 12:37:25 hal9
2402 Various minor changes and edits.
2404 Revision 1.60 2002/05/22 17:17:48 oes
2405 Proofread & added more links into u-m
2407 Revision 1.59 2002/05/15 04:03:30 hal9
2408 Fix ulink -> link markup.
2410 Revision 1.58 2002/05/10 01:48:20 hal9
2411 This is mostly proposed copyright/licensing additions and changes. Docs
2412 are still GPL, but licensing and copyright are more visible. Also, copyright
2413 changed in doc header comments (eliminate references to JB except FAQ).
2415 Revision 1.57 2002/05/05 20:26:02 hal9
2416 Sorting out license vs copyright in these docs.
2418 Revision 1.56 2002/05/04 08:44:44 swa
2421 Revision 1.55 2002/05/04 00:41:56 hal9
2422 -Remove TOC/first page kludge in favor of proper handling via dsl file.
2424 Revision 1.54 2002/05/03 05:06:44 hal9
2425 Add brief Q/A on transparent proxies.
2427 Revision 1.53 2002/05/03 01:34:52 hal9
2428 Fix section numbering for new sections (due to TOC kludge).
2430 Revision 1.52 2002/04/29 03:08:43 hal9
2431 -Added new Q/A on new actions file set up (pointer to u-m)
2432 -Fixed a few broken links and converted old actions as a result of
2435 Revision 1.51 2002/04/26 17:24:31 swa
2436 bookmarks cleaned, changed structure of user manual, screen and programlisting cleanups, and numerous other changes that I forgot
2438 Revision 1.50 2002/04/26 05:25:23 hal9
2439 Mass commit to catch a few scattered fixes.
2441 Revision 1.49 2002/04/12 10:10:18 swa
2444 Revision 1.48 2002/04/10 18:45:15 swa
2447 Revision 1.47 2002/04/10 04:05:32 hal9
2450 Revision 1.45 2002/04/08 22:59:26 hal9
2451 Version update. Spell chkconfig correctly :)
2453 Revision 1.44 2002/04/07 21:24:29 hal9
2454 Touch up on name change.
2456 Revision 1.43 2002/04/04 21:59:53 hal9
2457 Added NT/W2K service/icon situation.
2459 Revision 1.42 2002/04/04 18:46:47 swa
2460 consistent look. reuse of copyright, history et. al.
2462 Revision 1.41 2002/04/04 06:48:37 hal9
2463 Structural changes to allow for conditional inclusion/exclusion of content
2464 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
2465 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
2466 eventually be set by Makefile.
2467 More boilerplate text for use across multiple docs.
2469 Revision 1.40 2002/04/03 04:22:03 hal9
2470 Fixed several typos.
2472 Revision 1.39 2002/04/03 03:53:03 hal9
2473 Revert some changes, and then make some news, to layout, and appearance.
2475 Revision 1.38 2002/04/02 03:49:10 hal9
2476 Major changes to doc structure and layout. Sections are not automatically
2477 numbered now. TOC is on page by itself.
2479 Revision 1.37 2002/04/01 16:24:07 hal9
2480 -Rework of supported Q/A.
2481 -Set up entities to include boilerplate text.
2483 Revision 1.36 2002/03/31 23:18:47 hal9
2484 More on dealing with BLOCKED.
2486 Revision 1.35 2002/03/30 04:14:19 hal9
2487 Fix privoxy.org/config links.
2489 Revision 1.34 2002/03/29 04:35:56 hal9
2492 Revision 1.33 2002/03/29 01:31:48 hal9
2493 Several new Q/A's and other touch ups.
2495 Revision 1.32 2002/03/27 00:57:03 hal9
2496 Touch ups for name change.
2498 Revision 1.31 2002/03/26 22:29:55 swa
2499 we have a new homepage!
2501 Revision 1.30 2002/03/25 16:39:22 hal9
2502 A few new sections. Made all links relative to user-manual.
2504 Revision 1.29 2002/03/25 05:23:57 hal9
2505 Moved section, and touch ups.
2507 Revision 1.28 2002/03/25 04:27:33 hal9
2508 New section related to name change.
2510 Revision 1.25 2002/03/24 16:08:08 swa
2511 we are too lazy to make a block-built
2512 privoxy logo. hence removed the option.
2514 Revision 1.24 2002/03/24 15:46:20 swa
2515 name change related issue.
2517 Revision 1.23 2002/03/24 12:33:01 swa
2520 Revision 1.22 2002/03/24 11:51:00 swa
2521 name change. changed filenames.
2523 Revision 1.21 2002/03/24 11:01:06 swa
2526 Revision 1.20 2002/03/23 15:13:11 swa
2527 renamed every reference to the old name with foobar.
2528 fixed "application foobar application" tag, fixed
2529 "the foobar" with "foobar". left junkbustser in cvs
2530 comments and remarks to history untouched.
2532 Revision 1.19 2002/03/21 17:01:54 hal9
2535 Revision 1.18 2002/03/18 16:40:31 hal9
2538 Revision 1.17 2002/03/18 03:53:53 hal9
2541 Revision 1.16 2002/03/17 21:32:56 hal9
2542 A few more additions.
2544 Revision 1.15 2002/03/17 07:25:59 hal9
2545 Correcting some of my typos, and some additions.
2547 Revision 1.14 2002/03/17 02:39:13 hal9
2548 A little more added ...
2550 Revision 1.13 2002/03/17 00:22:20 hal9
2551 Adding new stuff, and trying to incorporate stuff from old faq.
2553 Revision 1.12 2002/03/11 20:13:21 swa
2556 Revision 1.11 2002/03/11 18:42:27 swa
2559 Revision 1.10 2002/03/11 13:13:27 swa
2560 correct feedback channels
2562 Revision 1.9 2002/03/10 23:34:04 swa
2563 more info on not hiding ip address
2565 Revision 1.8 2002/03/09 15:55:48 swa
2566 added default config section
2568 Revision 1.7 2002/03/07 18:16:55 swa
2571 Revision 1.6 2002/03/07 13:16:31 oes
2572 Committing changes by Stefan
2574 Revision 1.5 2002/03/02 15:50:04 swa
2575 2.9.11 version. more input for docs.
2577 Revision 1.4 2002/02/24 14:34:24 jongfoster
2578 Formatting changes. Now changing the doctype to DocBook XML 4.1
2579 will work - no other changes are needed.
2581 Revision 1.3 2001/09/23 10:13:48 swa
2582 upload process established. run make webserver and
2583 the documentation is moved to the webserver. documents
2584 are now linked correctly.
2586 Revision 1.2 2001/09/13 15:20:17 swa
2587 merged standards into developer manual
2589 Revision 1.1 2001/09/12 15:36:41 swa
2590 source files for junkbuster documentation
2592 Revision 1.3 2001/09/10 17:43:59 swa
2593 first proposal of a structure.
2595 Revision 1.2 2001/06/13 14:28:31 swa
2596 docs should have an author.
2598 Revision 1.1 2001/06/13 14:20:37 swa
2599 first import of project's documentation for the webserver.