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.15 2006/09/08 23:05:07 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.15 2006/09/08 23:05:07 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
152 <emphasis>Junkbuster</emphasis>?</title>
154 <!-- Include history.sgml -->
161 <sect2 renderas="sect3">
162 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why change the name from
163 Junkbuster at all?</title>
165 <ulink url="http://junkbusters.com/">Junkbusters Corporation</ulink>
166 continues to offer their original version of the <application>Internet
167 Junkbuster</application>, so publishing our
168 <application> Junkbuster</application>-derived software under the same name
172 There are also potential legal complications from the continued use of the
173 <application>Junkbuster</application> name, which is a registered trademark of
174 <ulink url="http://junkbusters.com/">Junkbusters Corporation</ulink>.
175 There are, however, no objections from Junkbusters Corporation to the
176 <application>Privoxy</application> project itself, and they, in fact, still
177 share our ideals and goals.
180 The developers also believed that there are so many improvements over the original
181 code, that it was time to make a clean break from the past and make
182 a name in their own right.
185 <application>Privoxy</application> is the
186 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>. Also, its content
187 modification and junk suppression gives <emphasis>you</emphasis>, the user, more
188 control, more freedom, and allows you to browse your personal and
189 <quote><emphasis>private</emphasis> edition</quote> of the web.
194 <sect2 renderas="sect3" id="differs"><title>How does Privoxy differ
195 from the old Junkbuster?</title>
197 <application>Privoxy</application> picks up where
198 <application>Junkbuster</application> left off. All the old features remain.
199 The new <application>Privoxy</application> still blocks ads and banners,
200 still manages cookies, and still helps protect your privacy. But, these are
201 all greatly enhanced, and many, many new features have been added, all in the same vein.
204 The configuration has changed significantly as well. This is something that
205 users will notice right off the bat if upgrading from
206 <application>Junkbuster</application> 2.0.x. The <quote>blocklist</quote>
207 <quote>cookielist</quote>, <quote>imagelist</quote> and much more has been
208 combined into the <quote>actions</quote> files, with a completely different
209 syntax. See the <ulink url="../user-manual/whatsnew.html">What's New</ulink>
210 page for the latest updates.
213 <application>Privoxy</application>'s new features include:
216 <!-- Include newfeatures.sgml: -->
222 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
223 Privoxy work? </title>
225 A web proxy is a service, based on a software such as <application>Privoxy</application>,
226 that clients (i.e. browsers) can use instead of connecting directly to the web
227 servers on the Internet. The clients then ask the proxy to fetch the objects
228 they need (web pages, images, movies etc) on their behalf, and when the proxy
229 has done so, it hands the results back to the client.
232 There are many reasons to use web proxies, such as security (firewalling),
233 efficiency (caching) and others, and there are just as many different proxies
234 to accommodate those needs.
237 <application>Privoxy</application> is a proxy that is primarily focused on privacy
238 protection, junk elimination and freeing the user from restrictions placed on his
239 activities. Sitting between your browser(s) and the Internet,
240 it is in a perfect position to filter outbound personal information that your
241 browser is leaking, as well as inbound junk. It uses a variety of techniques to do
242 this, all of which are under your control via the various configuration
248 <sect2 renderas="sect3" id="whatsanad">
249 <title id="knows">How does Privoxy know what is
250 an ad, and what is not?</title>
252 <application>Privoxy</application>'s approach to blocking ads is twofold:
255 First, there are certain patterns in the <emphasis>locations</emphasis> (URLs)
256 of banner images. This applies to both the path (you wouldn't guess how many
257 web sites serve their banners from a directory called <quote>banners</quote>!)
258 and the host (blocking the big banner hosting services like doublecklick.net
259 already helps a lot). <application>Privoxy</application> takes advantage of this
260 fact by using <ulink url="../user-manual/actions-file.html#AF-PATTERNS">URL
261 patterns</ulink> to sort out and block the requests for banners.
264 Second, banners tend to come in certain <emphasis>sizes</emphasis>. But you
265 can't tell the size of an image by its URL without downloading it, and if you
266 do, it's too late to save bandwidth. Therefore, <application>Privoxy</application>
267 also inspects the HTML sources of web pages while they are loaded, and replaces
268 references to images with standard banner sizes by dummy references, so that
269 your browser doesn't request them anymore in the first place.
272 Both of this involves a certain amount of guesswork and is, of course, freely
277 <sect2 renderas="sect3">
278 <title id="mistakes">Can Privoxy make mistakes?
279 This does not sound very scientific.</title>
281 Actually, it's a black art ;-) And yes, it is always possible to have a broad
282 rule accidentally block or change something by mistake. You will almost surely
283 run into such situations at some point. It is tricky writing rules to
284 cover every conceivable possibility, and not occasionally get false positives.
288 But this should not be a big concern since the
289 <application>Privoxy</application> configuration is very flexible, and
290 includes tools to help identify these types of situations so they can be
291 addressed as needed, allowing you to customize your installation.
292 (<link linkend="badsite">See the Troubleshooting section below</link>.)
298 <sect2 renderas="sect3">
299 <title id="configornot">Will I have to configure Privoxy
300 before I can use it?</title>
302 No, not really. The default installation should give you a good starting
303 point, and block <emphasis>most</emphasis> unwanted content.
306 But you will certainly run into situations where there are false positives,
307 or ads not being blocked that you may not want to see. In these cases, you
308 would certainly benefit by customizing <application>Privoxy's</application>
309 configuration to more closely match your individual situation. And we would
310 encourage you to do this. This is where the real power of
311 <application>Privoxy</application> lies!
316 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
317 Privoxy. Why should I use
318 Privoxy at all?</title>
320 Modern browsers do indeed have <emphasis>some</emphasis> of the same
321 functionality as <application>Privoxy</application>. Maybe this is
322 adequate for you. But <application>Privoxy</application> is much more
323 versatile and powerful, and can do a number of things that browsers just can't.
326 In addition, a proxy is good choice if you use multiple browsers, or
327 have a LAN with multiple computers. This way all the configuration
328 is in one place, and you don't have to maintain a similar configuration
329 for possibly many browsers.
335 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
336 warranty? Registration?</title>
338 <application>Privoxy</application> is licensed under the <ulink
339 url="http://www.gnu.org/copyleft/gpl.html">GNU General Public License (GPL)</ulink>.
340 It is free to use, copy, modify or distribute as you wish under the terms of this
341 license. Please see the <link linkend="copyright">Copyright</link> section for more
342 information on the license and copyright. Or the <filename>LICENSE</filename> file
343 that should be included.
346 There is <emphasis>no warranty</emphasis> of any kind, expressed, implied or otherwise.
347 That is something that would cost real money ;-) There is no registration either.
348 <application>Privoxy</application> really is <emphasis>free</emphasis>
354 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what can I do?</title>
356 <sect3 renderas="sect4" id="jointeam-work"><title>Would you like to participate?</title>
358 Well, we <emphasis>always</emphasis> need help. There is something for
359 everybody who wants to help us. We welcome new developers, packagers,
360 testers, documentation writers or really anyone with a desire to help in
361 any way. You <emphasis>DO NOT</emphasis> need to be a
362 <quote>programmer</quote>. There are many other tasks available. In fact,
363 the programmers often can't spend as much time programming because of some
364 of the other, more mundane things that need to be done, like checking the
365 Tracker feedback sections.
368 So first thing, <ulink
369 url="https://sourceforge.net/account/register.php">get an account on SourceForge.net</ulink>
370 and mail your id to the <ulink url="mailto:ijbswa-developers@lists.sourceforge.net">developers
371 mailing list</ulink>. Then, please read the <ulink
372 url="../developer-manual/index.html">Developer's Manual</ulink>, at least
373 the pertinent sections.
376 Once we have added you to the team, you'll have access to the <ulink
377 url="http://sourceforge.net/cvs/?group_id=11118">CVS repository</ulink>, and
378 together we'll find a suitable task for you.
382 <sect3 renderas="sect4" id="jointeam-money"><title>Contribute!</title>
384 We, of course, welcome donations and could use money for domain registering,
385 buying software to test <application>Privoxy</application> with, and, of course,
386 for regular world-wide get-togethers (hahaha). If you enjoy the software and feel
387 like helping us with a donation, just <ulink
388 url="mailto: ijbswa-developers@lists.sourceforge.net">drop us a note</ulink>.
392 <sect3 renderas="sect4" id="jointeam-software"><title>Software</title>
394 If you are a vendor of a web-related software like a browser, web server
395 or proxy, and would like us to ensure that <application>Privoxy</application>
396 runs smoothly with your product, you might consider supplying us with a
397 copy or license. We can't, however, guarantee that we will fix all potential
398 compatibility issues as a result.
408 <!-- ~~~~~ New section ~~~~~ -->
410 <sect1 id="installation"><title>Installation</title>
412 <sect2 renderas="sect3" id="whichbrowsers">
413 <title>Which browsers are supported by Privoxy?</title>
415 Any browser that can be configured to use a proxy, which
416 should be virtually all browsers, including
417 <application>Firefox</application>, <application>Internet
418 Explorer</application>, and <application>Opera</application> among others.
419 Direct browser support is not an absolute requirement since
420 <application>Privoxy</application> runs as a separate application and talks
421 to the browser in the standardized HTTP protocol, just like a web server
426 <sect2 renderas="sect3" id="whichos">
427 <title>Which operating systems are supported?</title>
429 Include supported.sgml here:
434 <sect2 renderas="sect3" id="email-client">
435 <title>Can I use Privoxy with my email client?</title>
437 As long as there is some way to set a HTTP proxy for the client, then yes,
438 any application can be used, whether it is strictly speaking a
439 <quote>browser</quote> or not. Though this may not be the best approach for
440 dealing with some of the common abuses of HTML in email. See <link
441 linkend="outlook">How can I configure <application>Privoxy</application>
442 with <application>Outlook Express</application>?</link> below for more on
446 Be aware that HTML email presents a number of unique security and privacy
447 related issues, that can require advanced skills to overcome. The developers
448 recommend using email clients that can be configured to convert HTML to plain
449 text for these reasons.
453 <sect2 renderas="sect3" id="newinstall"><title>Can I install
454 Privoxy over Junkbuster?</title>
456 We recommend you un-install <application>Junkbuster</application>
457 first to minimize conflicts and confusion. You may want to
458 save your old configuration files for future reference. The configuration
459 files and syntax have substantially changed, so you will need to manually
460 port your old patterns. See the <ulink url="../user-manual/upgradersnote.html">note
461 to upgraders</ulink> and <ulink url="../user-manual/installation.html">installation
462 chapter</ulink> in the <ulink url="../user-manual/index.html">user manual</ulink>
466 Note: Some installers may automatically un-install
467 <application>Junkbuster</application>, if present!
472 <sect2 renderas="sect3">
473 <title id="firststep">I just installed Privoxy. Is there anything
474 special I have to do now?</title>
477 All browsers must be told to use <application>Privoxy</application>
478 as a proxy by specifying the correct proxy address and port number
479 in the appropriate configuration area for the browser. See below.
480 You should also flush your browser's memory and disk cache to get rid of any
481 cached junk items, and remove any stored cookies.
488 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of Privoxy?</title>
490 If you set up the <application>Privoxy</application> to run on
491 the computer you browse from (rather than your ISP's server or some
492 networked computer on a LAN), the proxy will be on <literal>127.0.0.1</literal>
493 (sometimes referred to as <quote>localhost</quote>,
494 which is the special name used by every computer on the Internet to refer
495 to itself) and the port will be 8118 (unless you have <application>Privoxy</application>
496 to run on a different port with the <ulink
497 url="../user-manual/config.html#LISTEN-ADDRESS">listen-address</ulink> config option).
500 When configuring your browser's proxy settings you typically enter
501 the word <quote>localhost</quote> or the IP address <quote>127.0.0.1</quote>
502 in the boxes next to <quote>HTTP</quote> and <quote>Secure</quote> (HTTPS) and
503 then the number <quote>8118</quote> for <quote>port</quote>.
504 This tells your browser to send all web requests to <application>Privoxy</application>
505 instead of directly to the Internet.
508 <application>Privoxy</application> can also be used to proxy for
509 a Local Area Network. In this case, your would enter either the IP
510 address of the LAN host where <application>Privoxy</application>
511 is running, or the equivalent hostname. Port assignment would be
512 same as above. Note that <application>Privoxy</application> doesn't
513 listen on any LAN interfaces by default.
516 <application>Privoxy</application> does not currently handle
517 any other protocols such as FTP, SMTP, IM, IRC, ICQ, etc. Be sure that
518 proxying any of these other protocols is not activated.
522 <sect2 renderas="sect3" id="nothing">
523 <title>I just installed Privoxy, and nothing is happening.
524 All the ads are there. What's wrong?</title>
527 Did you configure your browser to use <application>Privoxy</application>
528 as a proxy? It does not sound like it. See above. You might also try flushing
529 the browser's caches to force a full re-reading of pages. You can verify
530 that <application>Privoxy</application> is running, and your browser
531 is correctly configured by entering the special URL:
532 <ulink url="http://p.p/">http://p.p/</ulink>.
533 <!-- Use http://p.p/ instead of http://config.privoxy.org/ here because
534 of potential redirect caching problem (see next Q). -->
535 This should take you to a page titled <quote>This is Privoxy..</quote> with
536 access to <application>Privoxy's</application> internal configuration.
537 If you see this, then you are good to go. If you receive a page saying
538 <quote>Privoxy is not running</quote>, then the browser is not set up to use
539 your <application>Privoxy</application> installation.
540 If you receive anything else (probably nothing at all), it could either
541 be that the browser is not set up correctly, or that
542 <application>Privoxy</application> is not running at all. Check the <ulink
543 url="../user-manual/config.html#LOGFILE">log file</ulink>. For instructions
544 on starting <application>Privoxy</application> and browser configuration,
545 see the <ulink url="http://www.privoxy.org/user-manual/startup.html">chapter
546 on starting <application>Privoxy</application></ulink> in the
547 <ulink url="http://www.privoxy.org/user-manual/">user manual</ulink>.
552 <sect2 renderas="sect3" id="notused">
553 <title>I get a <quote>Privoxy is not being used</quote> dummy page although
554 Privoxy is running and being used.</title>
557 First, make sure that Privoxy is <emphasis>really</emphasis> running and
558 being used by visiting <ulink url="http://p.p/">http://p.p/</ulink>. You
559 should see the <application>Privoxy</application> main page. If not, see
560 the <ulink url="http://www.privoxy.org/user-manual/startup.html">chapter
561 on starting <application>Privoxy</application></ulink> in the
562 <ulink url="http://www.privoxy.org/user-manual/">user manual</ulink>.
566 Now if <ulink url="http://p.p/">http://p.p/</ulink> works for you, but
567 other parts of <application>Privoxy</application>'s web interface show
568 the dummy page, your browser has cached a redirection it encountered before
569 <application>Privoxy</application> was being used. You need to clear your
570 browser's cache. Note that shift-reloading the dummy page won't help, since
571 that'll only refresh the dummy page, not the redirection that lead you there.
575 The procedure for clearing the cache varies from browser to browser. For
576 example, <application>Mozilla/Netscape</application> users would click
577 <guibutton>Edit</guibutton> --> <guibutton>Preferences</guibutton> -->
578 <guibutton>Advanced</guibutton> --> <guibutton>Cache</guibutton> and
579 then click both <quote><guibutton>Clear Memory Cache</guibutton></quote>
580 and <quote><guibutton>Clear Disk Cache</guibutton></quote>.
581 And, <application>Firefox</application> users would click
582 <guibutton>Tools</guibutton> --> <guibutton>Options</guibutton> -->
583 <guibutton>Privacy</guibutton> --> <guibutton>Cache</guibutton> and
584 then click <quote><guibutton>Clear Cache Now</guibutton></quote>.
592 <!-- ~~~~~ New section ~~~~~ -->
594 <sect1 id="configuration"><title>Configuration</title>
596 <sect2 renderas="sect3" id="getupdates"><title>Where can I get updated Actions Files?</title>
598 Based on your feedback and the continuing development, updated actions files will be
599 made available on the <ulink
600 url="http://sourceforge.net/project/showfiles.php?group_id=11118">files section</ulink> of
601 our <ulink url="http://sf.net/projects/ijbswa/">project page</ulink>.
605 If you wish to receive an email notification whenever we release updates of
606 <application>Privoxy</application> or the actions file, <ulink
607 url="http://lists.sourceforge.net/lists/listinfo/ijbswa-announce/">subscribe
608 to our announce mailing list</ulink>, ijbswa-announce@lists.sourceforge.net.
613 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
615 The syntax and purpose of configuration files has remained the same
616 throughout the 3.x series. Although each release contains updated,
617 <quote>improved</quote> versions and it is recommended to use the newer
621 But all configuration files have substantially
622 changed from the <application>Junkbuster</application> days, and early
623 versions of <application>Privoxy 2.x</application>. The old files, like
624 <filename>blocklist</filename> will not work at all.
627 Refer to the <ulink url="../user-manual/whatsnew.html">What's New</ulink>
628 page for information on configuration changes that may occur from one release to another.
632 <sect2 renderas="sect3">
633 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
636 <ulink url="../user-manual/actions-file.html">Actions files</ulink>
637 are where various <ulink url="../user-manual/actions-file.html#ACTIONS">actions</ulink>
638 that <application>Privoxy</application> could take while processing a certain
639 request, are configured. Typically, you would define a set of default actions
640 that apply to all URLs, then add exceptions to these defaults where needed.
641 There is a wide array of actions available that give the user a high degree
642 of control and flexibility on how to process each and every web page.
646 Actions can be defined on a <ulink
647 url="../user-manual/actions-file.html#AF-PATTERNS">URL pattern</ulink> basis, i.e.
648 for single URLs, whole web sites, groups or parts thereof etc. Actions can also be
649 grouped together and then applied to requests matching one or more patterns.
650 There are many possible actions that might apply to any given site. As an example,
651 if you are blocking cookies as one of your default actions, but need to accept
652 cookies from a given site, you would need to define an exception for this
653 site in one of your actions files, preferably in <filename>user.action</filename>.
658 <sect2 renderas="sect3" id="actionss">
659 <title>The <quote>actions</quote> concept confuses me. Please list
660 some of these <quote>actions</quote>.</title>
662 For a comprehensive discussion of the actions concept, please refer
663 to the <ulink url="../user-manual/actions-file.html">actions file
664 chapter</ulink> in the <ulink url="../user-manual/index.html">user
665 manual</ulink>. It includes a <ulink
666 url="../user-manual/actions-file.html#ACTIONS">list of all actions</ulink>
667 and an <ulink url="../user-manual/actions-file.html#ACT-EXAMPLES">actions
668 file tutorial</ulink> to get you started.
673 <sect2 renderas="sect3">
674 <title id="actconfig">How are actions files configured? What is the easiest
675 way to do this?</title>
678 Actions files are just text files in a special syntax and can be edited
679 with a text editor. But probably the easiest way is to access
680 <application>Privoxy</application>'s user interface with your web browser
681 at <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
682 (Shortcut: <ulink url="http://p.p/">http://p.p/</ulink>) and then select
683 <quote><ulink url="http://config.privoxy.org/show-status">View &
684 change the current configuration</ulink></quote> from the menu.
689 <sect2 renderas="sect3">
690 <title>There are several different <quote>actions</quote> files. What are
691 the differences?</title>
693 As of <application>Privoxy</application> v2.9.15, three actions files
694 are being included, to be used for
695 different purposes: These are
696 <filename>default.action</filename>, the <quote>main</quote> actions file
697 which is actively maintained by the <application>Privoxy</application>
698 developers, <filename>user.action</filename>, where users are encouraged
699 to make their private customizations, and <filename>standard.action</filename>,
700 which is for internal <application>Privoxy</application> use only.
701 Please see <ulink url="../user-manual/actions-file.html">the actions chapter</ulink>
702 in the <ulink url="../user-manual/index.html">user manual</ulink> for a more
703 detailed explanation.
707 Earlier versions included three different versions of the
708 <filename>default.action</filename> file. The new scheme allows for
709 greater flexibility of local configuration, and for browser based
710 selection of pre-defined <quote>aggressiveness</quote> levels.
715 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo/Hotmail/Gmail account work?</title>
717 The default configuration shouldn't impact the usability of any of these services.
718 It will, however, make all cookies temporary, so that your browser will forget your
719 login credentials in between browser sessions. If you would like not to have to log
720 in manually each time you access those websites, simply turn off all cookie handling
721 for them in the <filename>user.action</filename> file. An example for yahoo might
725 <screen># Allow all cookies for Yahoo login:
727 { -<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> }
728 .login.yahoo.com</screen>
733 <sect2 renderas="sect3" id="configfiles"> <title>What's the difference between the
734 <quote>Cautious</quote>, <quote>Medium</quote> and <quote>Adventuresome</quote> defaults?</title>
736 Configuring <application>Privoxy</application> is not entirely trivial. To
737 help you get started, we provide you with three different default action
738 <quote>profiles</quote> in the web based actions file editor at <ulink
739 url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>.
740 See the <ulink url="../user-manual/actions-file.html"><citetitle>User
741 Manual</citetitle></ulink> for a list of actions, and how the default
746 Where the defaults are likely to break some sites, exceptions for
747 known popular <quote>problem</quote> sites are included, but in
748 general, the more aggressive your default settings are, the more exceptions
749 you will have to make later. See the <ulink
750 url="../user-manual/index.html"><citetitle>User Manual</citetitle></ulink>
751 for a more detailed discussion.
755 It should be noted that the <quote>Adventuresome</quote> profile (formerly known
756 as the <quote>Advanced</quote> profile) is not only more
757 aggressive, but also includes fun and, extreme usage of most of
758 <application>Privoxy's</application> features. Use at your own risk!
763 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration
764 with a browser? Does that not raise security issues?</title>
766 It may seem strange that regular users can edit the config files with their
767 browsers, although the whole <filename>/etc/privoxy</filename> hierarchy
768 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
771 When you use the browser-based editor, <application>Privoxy</application>
772 itself is writing to the config files. Because
773 <application>Privoxy</application> is running as the user <quote>privoxy</quote>,
774 it can update the config files.
777 If you run <application>Privoxy</application> for multiple untrusted users (e.g. in
778 a LAN), you will probably want to turn the web-based editor and remote toggle
779 features off by setting <quote><literal><ulink
780 url="../user-manual/config.html#ENABLE-EDIT-ACTIONS">enable-edit-actions</ulink>
781 0</literal></quote> and <quote><literal><ulink
782 url="../user-manual/config.html#ENABLE-REMOTE-TOGGLE">enable-remote-toggle</ulink>
783 0</literal></quote> in the <ulink url="../user-manual/config.html">main configuration file</ulink>.
786 Note that in the default configuration, only local users (i.e. those on
787 <quote>localhost</quote>) can connect to <application>Privoxy</application>,
788 so this is not (normally) a security problem.
793 <sect2 renderas="sect3">
794 <title id="filterfile">What is the <filename>default.filter</filename> file? What is a <quote>filter</quote>?</title>
796 The <ulink url="../user-manual/filter-file.html"><filename>default.filter</filename></ulink>
797 file is where <emphasis>filters</emphasis> as supplied by the developers are defined.
798 Filters are a special subset of actions that can be used to modify or
799 remove, web page content on the fly. Filters apply to <emphasis>anything</emphasis>
800 in the page source (and optionally both client and server headers), including
801 HTML tags, and JavaScript. Regular expressions are used to accomplish this.
802 There are a number of pre-defined filters to deal with common annoyances. The
803 filters are only defined here, to invoke them, you need to use the
805 url="../user-manual/actions-file.html#FILTER"><literal>filter</literal>
806 action</ulink> in one of the actions files. Filtering is automatically
807 disabled for inappropriate MIME types.
811 If you are familiar with regular expressions, and HTML, you can look at
812 the provided <filename>default.filter</filename> with a text editor and define
813 your own filters. This is potentially a very powerful feature, but
814 requires some expertise in both regular expressions and HTML/HTTP. You should
815 place any modifications to the default filters, or any new ones you create
816 in a separate file, such as <filename>user.filter</filename>, so they won't
817 be overwritten during upgrades. The ability to define multiple filter files
818 in <filename>config</filename> is a new feature as of v. 3.0.4.
822 There is no GUI editor option for this part of the configuration,
823 but you can disable/enable the various pre-defined filters of the included
824 <filename>default.filter</filename> file with the <ulink
825 url="http://config.privoxy.org/show-status">web-based actions file editor</ulink>.
830 <sect2 renderas="sect3">
831 <title id="lanconfig">How can I set up Privoxy to act as a proxy for my
834 By default, <application>Privoxy</application> only responds to requests
835 from <literal>127.0.0.1</literal> (localhost). To have it act as a server for
836 a network, this needs to be changed in the <ulink
837 url="../user-manual/config.html">main configuration file</ulink>. Look for
839 url="../user-manual/config.html#LISTEN-ADDRESS">listen-address</ulink></literal>
840 option, which may be commented out with a <quote>#</quote> symbol. Make sure
841 it is uncommented, and assign it the address of the LAN gateway interface,
842 and port number to use. Assuming your LAN address is 192.168.1.1 and you
843 wish to run <application>Privoxy</application> on port 8118, this line
849 listen-address 192.168.1.1:8118</screen>
853 Save the file, and restart <application>Privoxy</application>. Configure
854 all browsers on the network then to use this address and port number.
858 Alternately, you can have <application>Privoxy</application> listen on
859 all available interfaces:
864 listen-address :8118</screen>
868 And then use <application>Privoxy's</application>
870 url="../user-manual/config.html#PERMIT-ACCESS">permit-access</ulink>
871 feature to limit connections. A firewall in this situation is recommended
876 The above steps should be the same for any TCP network, regardless of
881 If you run <application>Privoxy</application> on a LAN with untrusted users,
882 we recommend that you double-check the <ulink
883 url="../user-manual/config.html#ACCESS-CONTROL">access control and security</ulink>
890 <sect2 renderas="sect3">
891 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
893 The replacement for blocked images can be controlled with the <ulink
894 url="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"><literal>set-image-blocker</literal>
895 action</ulink>. You have the choice of a checkerboard pattern, a transparent 1x1 GIF
896 image (aka <quote>blank</quote>), or a redirect to a custom image of your choice.
897 Note that this choice only has effect for images which are blocked as images, i.e.
898 whose URLs match both a <literal><ulink
899 url="../user-manual/actions-file.html#HANDLE-AS-IMAGE">handle-as-image</ulink></literal>
900 <emphasis>and</emphasis> <literal><ulink
901 url="../user-manual/actions-file.html#BLOCK">block</ulink></literal> action.
904 If you want to see nothing, then change the <ulink
905 url="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"><literal>set-image-blocker</literal>
906 action</ulink> to <quote>blank</quote>. This can be done by editing the
907 <filename>default.action</filename> file, or trough the <ulink
908 url="http://config.privoxy.org/show-status">web-based actions file editor</ulink>.
913 <sect2 renderas="sect3">
914 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
916 Remember that <link linkend="whatsanad">telling which image is an ad and which
917 isn't</link>, is mostly guesswork. While we hope that the standard configuration
918 is rather smart, it can and will make errors. The checkerboard image is visually
919 decent, but it shows you that and where images were blocked, which can be very
920 helpful in case some navigation aid or otherwise innocent image was
921 erroneously blocked. Some people might also enjoy seeing how many banners
922 they <emphasis>don't</emphasis> have to see..
927 <sect2 renderas="sect3">
928 <title id="blockedbytext">I see some images being replaced by a text
929 instead of the checkerboard image. Why and how do I get rid of this?</title>
931 This happens when the banners are not embedded in the HTML code of the
932 page itself, but in separate HTML (sub)documents that are loaded into (i)frames
933 or (i)layers, and these external HTML documents are blocked. Being non-images
934 they get replaced by a substitute HTML page rather than a substitute image,
935 which wouldn't work out technically, since the browser expects and accepts
936 only HTML when it has requested an HTML document.
939 The substitute page adapts to the available space and shows itself as a
940 miniature two-liner if loaded into small frames, or full-blown with a
941 large red "BLOCKED" banner if space allows.
944 If you prefer the banners to be blocked by images, you must see to it that
945 the HTML documents in which they are embedded are not blocked. Clicking
946 the <quote>See why</quote> link offered in the substitute page will show
947 you which rule blocked the page. After changing the rule and un-blocking
948 the HTML documents, the browser will try to load the actual banner images
949 and the usual image blocking will (hopefully!) kick in.
954 <sect2 renderas="sect3" id="srvany">
955 <title>Can Privoxy run as a service
956 on Win2K/NT/XP?</title>
958 Yes. Version 3.0.4 introduces full <application>Windows</application> service
959 functionality. See <ulink url="../user-manual/installation.html#installation-pack-win">
960 the User Manual</ulink> for details on how to install and configure
961 <application>Privoxy</application> as a service.
964 Earlier versions could run as a system service using <command>srvany.exe</command>.
965 See the discussion at <ulink
966 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>,
967 for details, and a sample configuration.
972 <sect2 renderas="sect3" id="otherproxy">
973 <title>How can I make Privoxy work with other
974 proxies like Squid or Tor?</title>
976 This can be done and is often useful to combine the benefits of
977 <application>Privoxy</application> with those of a another proxy.
979 url="../user-manual/config.html#FORWARDING">forwarding chapter</ulink>
980 in the <ulink url="../user-manual/index.html">user manual</ulink> which
981 describes how to do this.
985 <sect2 renderas="sect3" id="port-80">
986 <title>Can I just set Privoxy to use port 80
987 and thus avoid individual browser configuration?</title>
990 No, its more complicated than that. This only works with special kinds
991 of proxies known as <quote>transparent</quote> proxies (see below).
996 <sect2 renderas="sect3" id="transparent">
997 <title>Can Privoxy run as a <quote>transparent
998 </quote> proxy?</title>
1000 No, <application>Privoxy</application> currently does not have this ability,
1001 though it may be added in a future release. Transparent proxies require
1002 special handling of the request headers beyond what
1003 <application>Privoxy</application> is now capable of.
1007 Chaining <application>Privoxy</application> behind another proxy that has
1008 this ability should work though.
1010 url="../user-manual/config.html#FORWARDING">forwarding chapter</ulink>
1011 in the <ulink url="../user-manual/index.html">user manual</ulink>. As
1012 a transparent proxy to be used for chaining we recommend Transproxy
1013 (<ulink url="http://transproxy.sourceforge.net/">http://transproxy.sourceforge.net/</ulink>).
1018 <sect2 renderas="sect3" id="outlook">
1019 <title>How can I configure Privoxy for use with Outlook
1022 <application>Outlook Express</application> uses <application>Internet Explorer</application>
1023 components to both render HTML, and fetch any HTTP requests that may be embedded in an HTML email.
1024 So however you have <application>Privoxy</application> configured to work
1025 with IE, this configuration should automatically be shared.
1029 <sect2 renderas="sect3" id="outlook-more">
1030 <title>How can I have separate rules just for HTML mail?</title>
1032 The short answer is, you can't. <application>Privoxy</application> has no way
1033 of knowing which particular application makes a request, so there is no way to
1034 distinguish between web pages and HTML mail.
1035 <application>Privoxy</application> just blindly proxies all requests. In the
1036 case of <application>Outlook Express</application> (see above), OE uses
1037 IE anyway, and there is no way for <application>Privoxy</application> to ever
1038 be able to distinguish between them (nor could any other proxy type application for
1042 For a good discussion of some of the issues involved (including privacy and
1043 security issues), see
1044 <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>.
1048 <sect2 renderas="sect3" id="allow-cookies">
1049 <title>How can I allow permanent cookies for my trusted sites?</title>
1052 There are several actions that relate to cookies. The default behavior is to
1053 allow only <quote>session cookies</quote>, which means the cookies only last
1054 for the current browser session. This eliminates most kinds of abuse related
1055 to cookies. But there may be cases where we want cookies to last.
1058 To disable all cookie actions, so that cookies are allowed unrestricted,
1059 both in and out, for <literal>example.com</literal>:
1063 { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
1064 .example.com</screen>
1067 Place the above in <filename>user.action</filename>. Note some of these may
1068 be off by default anyway, so this might be redundant, but there is no harm
1069 being explicit in what you want to happen. <filename>user.action</filename>
1070 includes an alias for this situation, called
1071 <literal>allow-all-cookies</literal>.
1075 <sect2 renderas="sect3" id="multiples">
1076 <title>Can I have separate configurations for different users?</title>
1078 Each instance of <application>Privoxy</application> has its own
1079 configuration, including such attributes as the TCP port that it listens on.
1080 What you can do is run multiple instances of <application>Privoxy</application>, each with
1081 a unique <literal>listen-address</literal> and configuration path, and then
1082 each of these can have their own configurations. Think of it as per-port
1086 Simple enough for a few users, but for large installations, consider having
1087 groups of users that might share like configurations.
1091 <sect2 renderas="sect3" id="whitelists">
1092 <title>Can I set-up Privoxy as a whitelist of
1093 <quote>good</quote> sites?</title>
1095 Sure. There are a couple of things you can do for simple whitelisting.
1096 Here's one real easy one:
1099 ############################################################
1101 ############################################################
1102 { <ulink url="../user-manual/actions-file.html#BLOCK">+block</ulink> }
1103 / # Block *all* URLs
1105 ############################################################
1107 ############################################################
1108 { <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> }
1111 games.example.com</screen>
1113 This allows access to only those three sites.
1116 A more interesting approach is <application>Privoxy's</application>
1117 <literal>trustfile</literal> concept, which incorporates the notion of
1118 <quote>trusted referrers</quote>. See the <ulink
1119 url="../user-manual/config.html#TRUSTFILE">User Manual Trust</ulink>
1123 These are fairly simple approaches and are not completely foolproof. There
1124 are various other configuration options that should be disabled (described
1125 elsewhere here and in <ulink url="../user-manual/">the User Manual</ulink>)
1126 so that users can't modify their own configuration and easily circumvent the
1133 <!-- ~ End section ~ -->
1136 <!-- ~~~~~ New section ~~~~~ -->
1138 <sect1 id="misc"><title>Miscellaneous</title>
1140 <sect2 renderas="sect3">
1141 <title id="slowsme">How much does Privoxy slow my browsing down? This
1142 has to add extra time to browsing.</title>
1144 How much of an impact depends on many things, including the CPU of the host
1145 system, how aggressive the configuration is, which specific actions are being triggered,
1146 the size of the page, etc.
1149 Overall, it should not slow you down any in real terms, and may actually help
1150 speed things up since ads, banners and other junk are not typically being displayed.
1151 The actual processing time required by <application>Privoxy</application>
1152 itself for each page, is relatively small in the overall scheme of things,
1153 and happens very quickly. This is typically more than offset by time saved
1154 not downloading and rendering ad images (if ad blocking is being used).
1158 <quote>Filtering</quote> content via the <literal><ulink
1159 url="../user-manual/actions-file.html#FILTER">filter</ulink></literal> or
1161 url="../user-manual/actions-file.html#DEANIMATE-GIFS">deanimate-gifs</ulink></literal>
1162 actions will certainly cause a perceived slowdown, since the entire document
1163 needs to be buffered before displaying. And on very large documents, there may be
1164 some impact. How much depends on the page size, the actual definition of the
1165 filter(s), etc. See below. Most other actions have little to no impact on
1172 <sect2 renderas="sect3" id="loadingtimes"><title>I notice considerable
1173 delays in page requests compared to the old Junkbuster. What's wrong?</title>
1175 If you use any <literal><ulink
1176 url="../user-manual/actions-file.html#FILTER">filter</ulink></literal> action,
1177 such as filtering banners by size, web-bugs etc, or the <literal><ulink
1178 url="../user-manual/actions-file.html#DEANIMATE-GIFS">deanimate-gifs</ulink></literal>
1179 action, the entire document must be loaded into memory in order for the filtering
1180 mechanism to work, and nothing is sent to the browser during this time.
1183 The loading time typically does not really change much in real numbers, but
1184 the feeling is different, because most browsers are able to start rendering
1185 incomplete content, giving the user a feeling of "it works". This effect is
1186 more noticeable on slower dialup connections. Extremely large documents
1187 may have some impact on the time to load the page where there is filtering
1188 being done. But overall, the difference should be very minimal. If there is a
1189 big impact, then probably some other problem is contributing.
1192 Filtering is automatically disabled for inappropriate MIME types. But note
1193 that if the web server mis-reports the MIME type, then content that should
1194 not be filtered, could be. <application>Privoxy</application> only knows how
1195 to differentiate filterable content because of the MIME type as reported by
1196 the server, or because of some configuration setting that enables/disables
1202 <sect2 renderas="sect3" id="slowcrawl">
1203 <title>I just installed Privoxy, and all my
1204 browsing has slowed to a crawl. What gives? </title>
1206 This should not happen, and for the overwhelming number of users world-wide,
1207 it does not happen. I would suspect some inadvertent interaction of software
1208 components such as anti-virus software, spyware protectors, personal
1209 firewalls or similar components. Try disabling (or uninstalling) these one
1210 at a time and see if that helps.
1214 <sect2 renderas="sect3" id="configurl"><title>What are "http://config.privoxy.org/" and
1215 "http://p.p/"?</title>
1217 <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> is the
1218 address of <application>Privoxy</application>'s built-in user interface, and
1219 <ulink url="http://p.p/">http://p.p/</ulink> is a shortcut for it.
1222 Since <application>Privoxy</application> sits between your web browser and the Internet,
1223 it can simply intercept requests for these addresses and answer them with its built-in
1224 <quote>web server</quote>.
1227 This also makes for a good test for your browser configuration: If entering the
1228 URL <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
1229 takes you to a page saying <quote>This is Privoxy ...</quote>, everything is OK.
1230 If you get a page saying <quote>Privoxy is not working</quote> instead, then
1231 your browser didn't use <application>Privoxy</application> for the request,
1232 hence it could not be intercepted, and you have accessed the <emphasis>real</emphasis>
1233 web site at config.privoxy.org.
1236 With recent versions of <application>Privoxy</application> (version 2.9.x and
1237 later), the user interface features information on the run time status, the
1238 configuration, and even a built-in editor for the <ulink
1239 url="../user-manual/actions-file.html">actions files</ulink>.
1243 Note that the built-in URLs from earlier versions of <application>Junkbuster</application>
1244 / <application>Privoxy</application>, http://example.com/show-proxy-args and http://i.j.b/,
1245 are no longer supported. If you still use such an old version, you should really consider
1246 upgrading to &p-version;.
1251 out of date 09/02/06 HB
1252 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1254 No. The patterns for blocking now reside (among other things) in the <ulink
1255 url="../user-manual/actions-file.html">actions files</ulink>, which are
1256 actively maintained instead. See next question ...
1260 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads, or report
1263 Please see the <link linkend="contact">Contact section</link> for
1264 various ways to interact with the developers.
1269 <sect2 renderas="sect3" id="noonecares"><title>Why doesn't anyone answer my support
1272 Rest assured that it has been read and considered. Why it is not answered,
1273 could be for various reasons, including no one has a good answer for it, no
1274 one has had time to yet investigate it thoroughly, it has been reported
1275 numerous times already, or because not enough information was provided to help
1276 us help you. Your efforts are not wasted, and we do appreciate them.
1282 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1284 If you run both the browser and the proxy locally, you cannot hide your IP
1285 address with <application>Privoxy</application> or ultimately any other
1286 software. The server needs to know your IP address so that it knows where to
1287 send the responses back.
1290 There are many publicly usable "anonymous" proxies out there, which
1291 provide a further level of indirection between you and the web server.
1294 However, these proxies are called "anonymous" because you don't need
1295 a password, not because they would offer any real anonymity.
1296 Most of them will log your IP address and make it available to the
1297 authorities in case you violate the law of the country they run in. In fact
1298 you can't even rule out that some of them only exist to *collect* information
1299 on (those suspicious) people with a more than average preference for privacy.
1302 Your best bet is to chain <application>Privoxy</application>
1303 with <ulink url="http://tor.eff.org/">Tor</ulink>,
1304 an <ulink url="http://www.eff.org/">EFF</ulink> supported onion routing system.
1305 The configuration details can be found in
1306 <ulink url="#TOR">How do I use <application>Privoxy</application> together with <application>Tor</application>?</ulink>.
1310 There is, however, even in the single-machine case the possibility to make the
1311 server believe that your machine is in fact a shared proxy serving a large
1312 LAN, and we are looking into that.
1314 I assume this is about sending fake forward IP addresses?
1315 David and I looked into it and considered it a waste of time to implement.
1320 <sect2 renderas="sect3">
1321 <title id="anonforsure">Can Privoxy guarantee I am anonymous?</title>
1323 No. Your chances of remaining anonymous are greatly improved, but unless you
1324 <ulink url="#TOR">chain <application>Privoxy</application> with <application>Tor</application></ulink>
1325 or a similar system and know what you're doing when it comes to configuring
1326 the rest of your system, it would be safest to assume that everything you do
1327 on the Web can be traced back to you.
1330 <application>Privoxy</application> can remove various information about you,
1331 and allows <emphasis>you</emphasis> more freedom to decide which sites
1332 you can trust, and what details you want to reveal. But it neither
1333 hides your ip address, nor can it guarantee that the rest of the system
1334 behaves correctly. There are several possibilities how a web sites can find
1335 out who you are, even if you are using a strict <application>Privoxy</application>
1336 configuration and chained it with <application>Tor</application>.
1339 Most of <application>Privoxy's</application> protection can be easily subverted
1340 by an insecure browser configuration, therefore you should use a browser that can
1341 be configured to only execute code from trusted sites, and be careful which sites you trust.
1342 For example there is no point in having <application>Privoxy</application>
1343 modify the User-Agent header, if websites can get all the information they want
1344 through JavaScript, ActiveX, Flash, Java etc.
1347 A few browsers disclose the user's email address in certain situations, such
1348 as when transferring a file by FTP. <application>Privoxy</application>
1349 does not filter FTP. If you need this feature, or are concerned about the
1350 mail handler of your browser disclosing your email address, you might
1351 consider products such as <application>NSClean</application>.
1354 Browsers available only as binaries could use non-standard headers to give
1355 out any information they can have access to: see the manufacturer's license
1356 agreement. It's impossible to anticipate and prevent every breach of privacy
1357 that might occur. The professionally paranoid prefer browsers available as
1358 source code, because anticipating their behavior is easier. Trust the source,
1364 <sect2 renderas="sect3" id="tor"><title>How do I use Privoxy
1365 together with Tor?</title>
1367 Before you configure <application>Privoxy</application> to use <application>Tor</application>
1368 (<ulink url="http://tor.eff.org/">http://tor.eff.org/</ulink>),
1369 please follow the User Manual chapters
1370 <ulink url="../user-manual/installation.html">2. Installation</ulink> and
1371 <ulink url="../user-manual/startup.html">5. Startup</ulink> to make sure
1372 <application>Privoxy</application> itself is setup correctly.
1375 If it is, refer to <ulink url="http://tor.eff.org/documentation.html.en">Tor's
1376 extensive documentation</ulink> to learn how to install <application>Tor</application>,
1377 and make sure <application>Tor</application>'s logfile says that
1378 <quote>Tor has successfully opened a circuit</quote> and it
1379 <quote>[l]ooks like client functionality is working</quote>.
1382 If either <application>Tor</application> or <application>Privoxy</application>
1383 isn't working, their combination most likely will neither. Testing them on their
1384 own will also help you to direct problem reports to the right audience.
1385 If <application>Privoxy</application> isn't working, don't bother the
1386 <application>Tor</application> developers. If <application>Tor</application>
1387 isn't working, don't send bug reports to the <application>Privoxy</application> Team.
1390 If you verified that <application>Privoxy</application> and <application>Tor</application>
1391 are working, it is time to connect them. As far as <application>Privoxy</application>
1392 is concerned, <application>Tor</application> is just another proxy that can be reached
1393 by socks4 or socks4a. Most likely you are interested in <application>Tor</application>
1394 to increase your anonymity level, therefore you should use socks4a,
1395 to make sure <application>Privoxy's</application> DNS requests are
1396 done through <application>Tor</application> and thus invisible to your local network.
1399 Since <application>Privoxy</application> 3.0.4, its configuration (section 5.2)
1400 is already prepared for <application>Tor</application>, if you are using a
1401 default <application>Tor</application> configuration and run it on the same
1402 system as Privoxy, you just have to uncomment the line:
1406 # forward-socks4a / 127.0.0.1:9050 .
1410 This is enough to reach the Internet, but additionally you should
1411 uncomment the following forward rules, to make sure your local network is still
1412 reachable through Privoxy:
1416 # forward 192.168.*.*/ .
1417 # forward 10.*.*.*/ .
1418 # forward 127.*.*.*/ .
1422 Unencrypted connections to systems in these address ranges will
1423 be as (un)secure as the local network is, but the alternative is
1424 that you can't reach the network at all.
1425 If you also want to be able to reach servers in your local
1426 network by using their names, you will need additional
1427 exceptions that look like this:
1431 # forward localhost/ .
1435 Save the modified configuration file and open
1436 <ulink url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status/</ulink>
1437 in your browser, confirm that <application>Privoxy</application> has reloaded its configuration
1438 and that there are no other forward lines, unless you know that you need them. I everything looks good,
1440 <ulink url="http://wiki.noreply.org/noreply/TheOnionRouter/TorFAQ#head-0e1cc2ac330ede8c6ad1ac0d0db0ac163b0e6143">Tor
1441 Faq 4.2</ulink> to learn how to verify that you are really using <application>Tor</application>.
1444 Afterward, please take the time to at least skim through the rest
1445 of <application>Tor's</application> documentation. Make sure you understand
1446 what <application>Tor</application> does, why it is no replacement for
1447 application level security, and why you shouldn't use it for unencrypted logins.
1451 <sect2 renderas="sect3">
1452 <title id="sitebreak">Might some things break because header information or
1453 content is being altered?</title>
1456 Definitely. More and more sites use HTTP header content to decide what to
1457 display and how to display it. There is many ways that this can be handled,
1458 so having hard and fast rules, is tricky.
1462 <quote>User-Agent</quote> in particular is often used in this way to identify
1463 the browser, and adjust content accordingly. Changing this now (at least not
1464 further than removing the OS information) is not recommended, since so many
1465 sites do look for it. You may get undesirable results by changing this.
1469 For instance, different browsers use different encodings of Russian and Czech
1470 characters, certain web servers convert pages on-the-fly according to the
1471 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1472 operating system or browser manufacturer causes some sites in these languages
1473 to be garbled; Surfers to Eastern European sites should change it to
1474 something closer. And then some page access counters work by looking at the
1475 <quote>Referer</quote> header; they may fail or break if unavailable. The
1476 weather maps of Intellicast have been blocked by their server when no
1477 <quote>Referer</quote> or cookie is provided, is another example. (But you
1478 can forge both headers without giving information away). There are
1479 many other ways things can go wrong when trying to fool a web server.
1483 Similar thoughts apply to modifying JavaScript, and, to a lesser degree,
1488 If you have problems with a site, you will have to adjust your configuration
1489 accordingly. Cookies are probably the most likely adjustment that may
1490 be required, but by no means the only one.
1496 <sect2 renderas="sect3">
1497 <title id="caching">Can Privoxy act as a <quote>caching</quote> proxy to
1498 speed up web browsing?</title>
1500 No, it does not have this ability at all. You want something like
1501 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1502 before you ask, <application>Privoxy</application> can co-exist
1503 with other kinds of proxies like <application>Squid</application>.
1504 See the <ulink url="../user-manual/config.html#FORWARDING">forwarding
1505 chapter</ulink> in the <ulink url="../user-manual/index.html">user
1506 manual</ulink> for details.
1510 <sect2 renderas="sect3">
1511 <title id="firewall">What about as a firewall? Can Privoxy protect me?</title>
1513 Not in the way you mean, or in the way a true firewall can.
1514 <application>Privoxy</application> can help protect your privacy, but not
1515 protect you from intrusion attempts. It is, of course, perfectly possible
1516 and recommended to use <emphasis>both</emphasis>.
1520 <sect2 renderas="sect3">
1521 <title id="wasted">I have large empty spaces / a checkerboard pattern now where
1522 ads used to be. Why?</title>
1524 It would be technically possible eliminate the banners in a way that frees
1525 their screen estate in many cases, by doing all banner blocking with filters,
1526 i.e. eliminating the whole image references from the HTML pages instead
1527 of letting them stay in, and blocking the resulting requests for the
1531 But this would consume considerable CPU resources, would likely destroy
1532 the layout of many web pages which rely on the banners consuming a certain
1533 amount of screen space, and would fail in other cases, where the screen space
1534 is reserved e.g. by tables anyway. Also, making the banners disappear without
1535 a visual trace complicates troubleshooting.
1538 So we won't support this in the default configuration, but you can of course
1539 define appropriate filters yourself.
1543 <sect2 renderas="sect3">
1544 <title id="ssl">How can Privoxy filter Secure (HTTPS) URLs?</title>
1546 Since secure HTTP connections are encrypted SSL sessions between your browser
1547 and the secure site, and are meant to be reliably <emphasis>secure</emphasis>,
1548 there is little that <application>Privoxy</application> can do but hand the raw
1549 gibberish data though from one end to the other unprocessed.
1552 The only exception to this is blocking by host patterns, as the client needs
1553 to tell <application>Privoxy</application> the name of the remote server,
1554 so that <application>Privoxy</application> can establish the connection.
1555 If that name matches a host-only pattern, the connection will be blocked.
1558 As far as ad blocking is concerned, this is less of a restriction than it may
1559 seem, since ad sources are often identifiable by the host name, and often
1560 the banners to be placed in an encrypted page come unencrypted nonetheless
1561 for efficiency reasons, which exposes them to the full power of
1562 <application>Privoxy</application>'s ad blocking.
1565 <quote>Content cookies</quote> (those that are embedded in the actual HTML or
1566 JS page content, see <literal><ulink
1567 url="../user-manual/actions-file.html#FILTER-CONTENT-COOKIES">filter{content-cookies}</ulink></literal>),
1568 in an SSL transaction will be impossible to block under these conditions.
1569 Fortunately, this does not seem to be a very common scenario since most
1570 cookies come by traditional means.
1575 <sect2 renderas="sect3">
1576 <title id="secure">Privoxy runs as a <quote>server</quote>. How
1577 secure is it? Do I need to take any special precautions?</title>
1579 There are no known exploits that might affect
1580 <application>Privoxy</application>. On Unix-like systems,
1581 <application>Privoxy</application> can run as a non-privileged
1582 user, which is how we recommend it be run. Also, by default
1583 <application>Privoxy</application> only listens to requests
1584 from <quote>localhost</quote> only. The server aspect of
1585 <application>Privoxy</application> is not itself directly exposed to the
1586 Internet in this configuration. If you want to have
1587 <application>Privoxy</application> serve as a LAN proxy, this will have to
1588 be opened up to allow for LAN requests. In this case, we'd recommend
1589 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1590 <application>Privoxy</application> configuration file and check all <ulink
1591 url="../user-manual/config.html#ACCESS-CONTROL">access control and security
1592 options</ulink>. All LAN hosts can then use this as their proxy address
1593 in the browser proxy configuration, but <application>Privoxy</application>
1594 will not listen on any external interfaces. ACLs can be defined in addition,
1595 and using a firewall is always good too. Better safe than sorry.
1600 <sect2 renderas="sect3" id="turnoff">
1601 <title>How can I temporarily disable Privoxy?</title>
1603 The easiest way is to access <application>Privoxy</application> with your
1604 browser by using the remote toggle URL: <ulink
1605 url="http://config.privoxy.org/toggle">http://config.privoxy.org/toggle</ulink>.
1606 See the <ulink url="../user-manual/appendix.html#BOOKMARKLETS">Bookmarklets section</ulink>
1607 of the <citetitle>User Manual</citetitle> for an easy way to access this
1612 <sect2 renderas="sect3" id="reallyoff">
1613 <title>When <quote>disabled</quote> is Privoxy totally
1614 out of the picture?</title>
1616 No, this just means all filtering and actions are disabled.
1617 <application>Privoxy</application> is still acting as a proxy, but just not
1618 doing any of the things that <application>Privoxy</application> would
1619 normally be expected to do. It is still a <quote>middle-man</quote> in
1620 the interaction between your browser and web sites.
1624 <sect2 renderas="sect3" id="crunch">
1625 <title>My logs show Privoxy <quote>crunches</quote>
1626 ads, but also its own internal CGI pages. What is a <quote>crunch</quote>?</title>
1628 A <quote>crunch</quote> simply means <application>Privoxy</application> intercepted
1629 <emphasis>something</emphasis>, nothing more. Often this is indeed ads or
1630 banners, but <application>Privoxy</application> uses the same mechanism for
1631 trapping requests for its own internal pages. For instance, a request for
1632 <application>Privoxy's</application> configuration page at: <ulink
1633 url="http://config.privoxy.org">http://config.privoxy.org</ulink>, is
1634 intercepted (i.e. it does not go out to the 'net), and the familiar CGI
1635 configuration is returned to the browser, and the log consequently will show
1636 a <quote>crunch</quote>.
1640 <sect2 renderas="sect3" id="downloads">
1641 <title>Can Privoxy effect files that I download
1642 from a webserver? FTP server?</title>
1644 From the webserver's perspective, there is no difference between
1645 viewing a document (i.e. a page), and downloading a file. The same is true of
1646 <application>Privoxy</application>. If there is a match for a <literal><ulink
1647 url="../user-manual/actions-file.html#BLOCK">block</ulink></literal> pattern,
1648 it will still be blocked, and of course this is obvious.
1651 Filtering is potentially more of a concern since the results are not always
1652 so obvious, and the effects of filtering are there whether the file is simply
1653 viewed, or downloaded. And potentially whether the content is some obnoxious
1654 advertizement, or Mr. Jimmy's latest/greatest source code jewel. Of course,
1655 one of these presumably is <quote>bad</quote> content that we don't want, and
1656 the other is <quote>good</quote> content that we do want.
1657 <application>Privoxy</application> is blind to the differences, and can only
1658 distinguish <quote>good from bad</quote> by the configuration parameters
1659 <emphasis>we</emphasis> give it.
1662 <application>Privoxy</application> knows the differences in files according
1663 to the <quote>Document Type</quote> as reported by the webserver. If this is
1664 reported accurately (e.g. <quote>application/zip</quote> for a zip archive),
1665 then <application>Privoxy</application> knows to ignore these where
1666 appropriate. <application>Privoxy</application> potentially can filter HTML
1667 as well as plain text documents, subject to configuration parameters of
1668 course. Also, documents that are of an unknown type (generally assumed to be
1669 <quote>text/plain</quote>) can be filtered, as will those that might be
1670 incorrectly reported by the webserver. If such a file is a downloaded file
1671 that is intended to be saved to disk, then any content that might have been
1672 altered by filtering, will be saved too, for these (probably rare) cases.
1675 Note that versions later than 3.0.2 do NOT filter document types reported as
1676 <quote>text/plain</quote>. Prior to this, <application>Privoxy</application>
1677 did filter this document type.
1680 In short, filtering is <quote>ON</quote> if a) the Document Type as reported
1681 by the webserver is appropriate <emphasis>and</emphasis> b) the configuration
1682 allows it (or at least does not disallow it). That's it. There is no magic
1683 cookie anywhere to say this is <quote>good</quote> and this is
1684 <quote>bad</quote>. It's the configuration that let's it all happen or not.
1687 If you download text files, you probably do not want these to be filtered,
1688 particularly if the content is source code, or other critical content. Source
1689 code sometimes might be mistaken for Javascript (i.e. the kind that might
1690 open a pop-up window). It is recommended to turn off filtering for download
1691 sites (particularly if the content may be plain text files and you are using
1692 version 3.0.2 or earlier) in your <filename>user.action</filename> file. And
1693 also, for any site or page where making <emphasis>any</emphasis> changes at
1694 all to the content is to be avoided.
1697 <application>Privoxy</application> does not do FTP at all, only HTTP
1698 protocols, so please don't try.
1702 <sect2 renderas="sect3" id="downloads2">
1703 <title>I just downloaded a Perl script, and Privoxy
1704 altered it! Yikes, what is wrong!</title>
1710 <sect2 renderas="sect3" id="hostsfile">
1711 <title>Should I continue to use a <quote>HOSTS</quote> file for ad-blocking?</title>
1713 One time-tested technique to defeat common ads is to trick the local DNS
1714 system by giving a phony IP address for the ad generator in the local
1715 <filename>HOSTS</filename> file, typically using <literal>127.0.0.1</literal>, aka
1716 <literal>localhost</literal>. This effectively blocks the ad.
1719 There is no reason to use this technique in conjunction with
1720 <application>Privoxy</application>. <application>Privoxy</application>
1721 does essentially the same thing, much more elegantly and with much more
1722 flexibility. A large <filename>HOSTS</filename> file, in fact, not only
1723 duplicates effort, but may get in the way. It is recommended to remove
1724 such entries from your <filename>HOSTS</filename> file. If you think
1725 your hosts list is neglected by <application>Privoxy's </application>
1726 configuration, consider adding your list to your <filename>user.action</filename> file:
1733 ads.galore.example.com
1734 etc.example.com</screen>
1738 <sect2 renderas="sect3" id="seealso">
1739 <title>Where can I find more information about Privoxy
1740 and related issues?</title>
1741 <!-- Include seealso.sgml boilerplate: -->
1743 <!-- end boilerplate -->
1748 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1754 <sect2 renderas="sect3" id="microsuck">
1755 <title>I've noticed that Privoxy changes <quote>Microsoft</quote> to
1756 <quote>MicroSuck</quote>! Why are you manipulating my browsing?</title>
1759 We're not. The text substitutions that you are seeing are disabled
1760 in the default configuration as shipped. You have either manually
1761 activated the <quote><literal>fun</literal></quote> filter which
1762 is clearly labeled <quote>Text replacements for subversive browsing
1763 fun!</quote> or you are using an older Privoxy version and have implicitly
1764 activated it by choosing the <quote>Adventuresome</quote> profile in the
1772 <!-- ~~~~~ New section ~~~~~ -->
1774 <sect1 id="trouble">
1775 <title>Troubleshooting</title>
1777 <sect2 renderas="sect3">
1778 <title id="refused">I am getting <quote>connection refused</quote>
1779 with every web page?</title>
1781 Either <application>Privoxy</application> is not running, or your
1782 browser is configured for a different port than what
1783 <application>Privoxy</application> is using.
1787 Early <application>Privoxy</application> 2.x versions (and also
1788 <application>Junkbuster</application>) used port 8000 by
1789 default. This has been changed to port 8118 now, due to a conflict
1790 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1791 you need to change your browser to the new port number, or alternately
1793 url="../user-manual/config.html#LISTEN-ADDRESS"><literal>listen-address</literal>
1794 option</ulink> in <application>Privoxy's</application> <ulink
1795 url="../user-manual/config.html">main configuration file</ulink>.
1800 <sect2 renderas="sect3">
1801 <title id="flushit">I just added a new rule, but the steenkin ad is
1802 still getting through. How?</title>
1804 If the ad had been displayed before you added its URL, it will probably be
1805 held in the browser's cache for some time, so it will be displayed without
1806 the need for any request to the server, and <application>Privoxy</application>
1807 will not be in the picture. The best thing to do is try flushing the browser's
1808 caches. And then try again.
1812 If this doesn't help, you probably have an error in the rule you
1813 applied. Try pasting the full URL of the offending ad into <ulink
1814 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1815 and see if it really matches your new rule. Blocking ads is like blocking
1816 spam: a lot of tinkering is required to stay ahead of the game.
1821 <sect2 id="badsite" renderas="sect3">
1822 <title >One of my favorite sites does not work with Privoxy.
1823 What can I do?</title>
1826 First verify that it is indeed a <application>Privoxy</application> problem,
1827 by toggling off <application>Privoxy</application> through <ulink
1828 url="http://config.privoxy.org/toggle">http://config.privoxy.org/toggle</ulink>,
1829 and then shift-reloading the problem page (i.e. holding down the shift key
1830 while clicking reload. Alternatively, flush your browser's disk and memory
1835 If still a problem, go to <ulink
1836 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1837 and paste the full URL of the page in question into the prompt. See which actions
1838 are being applied to the URL, and which matches in which actions files are
1839 responsible for that. Now, armed with this information, go to <ulink
1840 url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>
1841 and select the appropriate actions files for editing.
1844 You can now either look for a section which disables the actions that
1845 you suspect to cause the problem and add a pattern for your site there,
1846 or make up a completely new section for your site. In any case, the recommended
1847 way is to disable only the prime suspect, reload the problem page, and only
1848 if the problem persists, disable more and more actions until you have
1849 identified the culprit. You may or may not want to turn the other actions
1850 on again. Remember to flush your browser's caches in between any such changes!
1853 Alternately, if you are comfortable with a text editor, you can accomplish
1854 the same thing by editing the appropriate actions file. Probably the easiest
1855 way to deal with such problems when editing by hand is to add your
1856 site to a <literal>{ fragile }</literal> section in <filename>user.action</filename>,
1857 which is an alias that turns off most <quote>dangerous</quote>
1858 actions, but is also likely to turn off more actions then needed, and thus lower
1859 your privacy and protection more than necessary,
1862 Troubleshooting actions is discussed in more detail in the <ulink
1863 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1864 There is also an <ulink
1865 url="../user-manual/actions-file.html#ACT-EXAMPLES">actions tutorial</ulink>.
1871 <!-- ~~~~~ New section ~~~~~ -->
1872 <sect2 id="dun" renderas="sect3">
1873 <title>After installing Privoxy, I have to log in
1874 every time I start IE. What gives?</title>
1877 This is a quirk that effects the installation of
1878 <application>Privoxy</application>, in conjunction with Internet Explorer and
1879 Internet Connection Sharing on Windows 2000 and Windows XP. The symptoms may
1880 appear to be corrupted or invalid DUN settings, or passwords.
1884 When setting up an NT based Windows system with
1885 <application>Privoxy</application> you may find that things do not seem to be
1886 doing what you expect. When you set your system up you will probably have set
1887 up Internet Connection Sharing (ICS) with Dial up Networking (DUN) when
1888 logged in with administrator privileges. You will probably have made this DUN
1889 connection available to other accounts that you may have set-up on your
1890 system. E.g. Mum or Dad sets up the system and makes accounts suitably
1891 configured for the kids.
1895 When setting up <application>Privoxy</application> in this environment you
1896 will have to alter the proxy set-up of Internet Explorer (IE) for the
1897 specific DUN connection on which you wish to use
1898 <application>Privoxy</application>. When you do this the ICS DUN set-up
1899 becomes user specific. In this instance you will see no difference if you
1900 change the DUN connection under the account used to set-up the connection.
1901 However when you do this from another user you will notice that the DUN
1902 connection changes to make available to "Me only". You will also find that
1903 you have to store the password under each different user!
1907 The reason for this is that each user's set-up for IE is user specific. Each
1908 set-up DUN connection and each LAN connection in IE store the settings for
1909 each user individually. As such this enforces individual configurations
1910 rather than common ones. Hence the first time you use a DUN connection after
1911 re-booting your system it may not perform as you expect, and prompt you for
1912 the password. Just set and save the password again and all should be OK.
1916 [Thanks to Ray Griffith for this submission.]
1921 <!-- ~~~~~ New section ~~~~~ -->
1922 <sect2 id="ftp" renderas="sect3">
1923 <title>I cannot connect to any FTP sites. Privoxy
1924 is blocking me.</title>
1926 <application>Privoxy</application> cannot act as a proxy for FTP traffic,
1927 so do not configure your browser to use <application>Privoxy</application>
1928 as an FTP proxy. The same is true for <emphasis>any protocol other than HTTP
1929 or HTTPS (SSL)</emphasis>.
1932 Most browsers understand FTP as well as HTTP. If you connect to a site, with
1933 a URL like <literal>ftp://ftp.example.com</literal>, your browser is making
1934 an FTP connection, and not a HTTP connection. So while your browser may
1935 speak FTP, <application>Privoxy</application> does not, and cannot proxy
1939 To complicate matters, some systems may have a generic <quote>proxy</quote>
1940 setting, which will silently various protocols, including
1941 <emphasis>both</emphasis> HTTP and FTP proxying! So it is possible to
1942 accidentally enable FTP proxying in these cases. And of course, if this
1943 happens, <application>Privoxy</application> will indeed cause problems since
1944 it does not know FTP. Newer version will give a sane error message if a FTP
1945 connection is attempted.
1948 Will <application>Privoxy</application> ever proxy FTP traffic? Unlikely.
1949 There just is not much reason, and the work to make this happen is more than
1954 <!-- ~~~~~ New section ~~~~~ -->
1955 <sect2 id="osxie" renderas="sect3">
1956 <title>In Mac OSX, I can't configure Microsoft Internet Explorer to use
1957 Privoxy as the HTTP proxy.</title>
1959 Microsoft Internet Explorer (in versions like 5.1) respects system-wide
1960 network settings. In order to change the HTTP proxy, open System
1961 Preferences, and click on the Network icon. In the settings pane that
1962 comes up, click on the Proxies tab. Ensure the "Web Proxy (HTTP)" checkbox
1963 is checked and enter <literal>127.0.0.1</literal> in the entry field.
1964 Enter <literal>8118</literal> in the Port field. The next time you start
1965 IE, it should reflect these values.
1969 <!-- ~~~~~ New section ~~~~~ -->
1970 <sect2 renderas="sect3" id="osxuninstall">
1971 <title>In Mac OSX, I dragged the Privoxy folder to the trash in order to
1972 uninstall it. Now the finder tells me I don't have sufficient privileges to
1973 empty the trash.</title>
1975 Just dragging the <application>Privoxy</application> folder to the trash is
1976 not enough to delete it. <application>Privoxy</application> supplies an
1977 <application>uninstall.command</application> file that takes care of
1978 these details. Open the trash, drag the <application>uninstall.command</application>
1979 file out of the trash and double-click on it. You will be prompted for
1980 confirmation and the administration password.
1983 The trash may still appear full after this command; emptying the trash
1984 from the desktop should make it appear empty again.
1989 <!-- ~~~~~ New section ~~~~~ -->
1990 <sect2 renderas="sect3" id="osximages">
1991 <title>In Mac OSX Panther (10.3), images often fail to load and/or I
1992 experience random delays in page loading. I'm using
1993 <literal>localhost</literal> as my browser's proxy setting.</title>
1995 We believe this is due to an IPv6-related bug in OSX, but don't fully
1996 understand the issue yet. In any case, changing the proxy setting to
1997 <literal>127.0.0.1</literal> instead of <literal>localhost</literal>
1998 works around the problem.
2002 <!-- ~~~~~ New section ~~~~~ -->
2003 <sect2 renderas="sect3" id="blankpage">
2004 <title>I get a completely blank page at one site. <quote>View Source</quote>
2005 shows only: <markup><![CDATA[<html><body></body></html>]]></markup>. Without
2006 Privoxy the page loads fine.</title>
2008 Chances are that the site suffers from a bug in
2009 <ulink url="http://www.php.net/"><application>PHP</application></ulink>,
2010 which results in empty pages being sent if the client explicitly requests
2011 an uncompressed page, like <application>Privoxy</application> does.
2012 This bug has been fixed in PHP 4.2.3.
2015 To find out if this is in fact the source of the problem, try adding
2016 the site to a <literal>-prevent-compression</literal> section in
2017 <filename>user.action</filename>:
2020 # Make exceptions for ill-behaved sites:
2022 {-prevent-compression}
2023 .example.com</screen>
2025 If that works, you may also want to report the problem to the
2026 site's webmasters, telling them to use zlib.output_compression
2027 instead of ob_gzhandler in their PHP applications (workaround)
2028 or upgrade to PHP 4.2.3 or later (fix).
2032 <!-- ~~~~~ New section ~~~~~ -->
2033 <sect2 renderas="sect3" id="error503">
2034 <title>Why am I getting a 503 Error (WSAECONNREFUSED) on every page?</title>
2036 More than likely this is a problem with your TCP/IP networking. ZoneAlarm has
2037 been reported to cause this symptom -- even if not running. The solution is
2038 to either fight the ZA configuration, or uninstall ZoneAlarm, and then find
2039 something better behaved in its place. Other personal firewall type products
2040 may cause similar type problems if not configured correctly.
2044 <sect2 renderas="sect3" id="nohostname">
2045 <title>My logs show many <quote>Unable to get my own hostname</quote> lines.
2048 <application>Privoxy</application> tries to get the hostname of the system
2049 its running on from the IP address of the system interface it is bound to
2050 (from the <filename>config</filename> file
2051 <emphasis>listen-address</emphasis> setting). If the system cannot supply
2052 this information, <application>Privoxy</application> logs this condition.
2055 Typically, this would be considered a minor system configuration error. It is
2056 not a fatal error to <application>Privoxy</application> however, but may
2057 result in a much slower response from <application>Privoxy</application> on
2058 some platforms due to DNS timeouts.
2062 <sect2 renderas="sect3" id="inuse">
2063 <title>When I try to launch Privoxy, I get an
2064 error message <quote>port 8118 is already in use</quote> (or similar wording).
2067 Port 8118 is <application>Privoxy's</application> default TCP
2068 <quote>listening</quote> port. Typically this message would mean that there
2069 is already one instance of <application>Privoxy</application> running, and
2070 you are actually trying to start a second <application>Privoxy</application>
2071 on the same port, which will not work. (You can have multiple instances but
2072 they must be assigned different ports.) How and why this might happen varies
2073 from platform to platform, but you need to check your installation and
2074 start-up procedures.
2078 <sect2 renderas="sect3" id="demoronizer">
2080 Pages with UTF-8 fonts are garbled.
2083 This is caused by the <quote>demoronizer</quote> filter. You should either
2084 upgrade <application>Privoxy</application>, or at least upgrade to the most
2085 recent <filename>default.action</filename> file available from <ulink
2086 url="http://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>.
2087 Or you can simply disable the demoronizer filter.
2091 <sect2 renderas="sect3" id="demoronizer2">
2093 Why are binary files (such as images) corrupted when Privoxy
2097 This may also be caused by the <quote>demoronizer</quote> filter,
2098 in conjunction with a web server that is misreporting a file type. Binary
2099 files are exempted from <application>Privoxy's</application> filtering
2100 (unless the web server by mistake says the file is something else). Either
2101 upgrade <application>Privoxy</application>, or go to the most recent
2102 <filename>default.action</filename> file available from <ulink
2103 url="http://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>.
2107 <sect2 renderas="sect3" id="demoronizer3">
2109 What is the <quote>demoronizer</quote> and why is it there?
2112 The original demoronizer was a Perl script that cleaned up HTML pages which
2113 were created with certain Microsoft products. MS has used proprietary extensions
2114 to standardized font encodings (ISO 8859-1), which has caused problems for pages
2115 that are viewed with non-Microsoft products (and are expecting to see a
2116 standard set of fonts). The demoronizer corrected these errors so the pages
2117 displayed correctly. <application>Privoxy</application> borrowed from this
2118 script, introducing a filter based on the original demoronizer, which in turn could
2119 correct these errors on the fly.
2122 But this is only needed in some situations, and will cause serious problems in some
2126 If you are using Microsoft products, you do not need it. If you need to view
2127 pages with UTF-8 characters (such as Cyrillic or Chinese), then it will
2128 cause corruption of the fonts, and thus <emphasis>should not be on</emphasis>.
2131 On the other hand, if you use non-Microsoft products, and you occasionally
2132 notice wierd characters on pages, you might want to try it.
2136 <sect2 renderas="sect3" id="windowopen">
2138 Why do I keep seeing <quote>PrivoxyWindowOpen()</quote> in raw source code?
2141 <application>Privoxy</application> is attempting to disable malicious
2142 Javascript in this case, with the <literal>unsolicited-popups</literal>
2143 filter. <application>Privoxy</application> cannot tell very well
2144 <quote>good</quote> code snippets from <quote>bad</quote> code snippets.
2147 If you see this in HTML source, and the page displays without problems, then
2148 this is good, and likely some pop-up window was disabled. If you see this
2149 where it is causing a problem, such as a downloaded program source code file,
2150 then you should set an exception for this site or page such that the
2151 integrity of the page stays in tact by disabling all filtering.
2155 <sect2 renderas="sect3" id="dnserrors">
2157 I am getting too many DNS errors like <quote>404 No Such Domain</quote>. Why
2158 can't Privoxy do this better?
2161 There are potentially several factors here. First of all, the DNS resolution
2162 is done by the underlying operating system -- not
2163 <application>Privoxy</application> itself. <application>Privoxy</application>
2164 merely initiates the process and hands it off, and then later reports
2165 whatever the outcome was. And tries to give a coherent message if there seems
2166 to be a problem. In some cases, this might otherwise be mitigated by the
2167 browser itself which might try some work-arounds and alternate approaches (e.g
2168 adding <quote>www.</quote> to the URL). In other cases, if
2169 <application>Privoxy</application> is being chained with another proxy, this
2170 could complicate the issue, and cause undue
2171 delays and timeouts. In the case of a <quote>socks4a</quote> proxy, the socks
2172 server handles all the DNS. <application>Privoxy</application> would just be
2173 the <quote>messenger</quote> which is reporting whatever problem occurred
2174 downstream, and not the root cause of the error.
2177 In any case, v. 3.0.4 includes various improvements to help
2178 <application>Privoxy</application> better handle these cases.
2182 <sect2 renderas="sect3" id="allcpu">
2184 At one site Privoxy just hangs, and starts taking
2185 all CPU. Why is this?
2188 This is probably a manifestation of the <quote>100% cpu</quote> problem that
2189 occurs on pages containing many (thousands upon thousands) of blank lines. The blank lines
2190 are in the raw HTML source of the page, and the browser just ignores them. But the
2191 pattern matching in <application>Privoxy's</application> page filtering
2192 mechanism is trying to match against absurdly long strings and this becomes
2193 very CPU-intensive, taking a long, long time to complete. Until a better
2194 solution comes along, disable filtering on these pages, particularly the
2195 <literal>js-annoyances</literal> and <literal>unsolicited-popups</literal>
2204 <!-- ~~~~~ New section ~~~~~ -->
2205 <sect1 id="contact"><title>Contacting the developers, Bug Reporting and Feature Requests</title>
2206 <!-- Include contacting.sgml -->
2208 <!-- end contacting -->
2211 <!-- ~~~~~ New section ~~~~~ -->
2212 <sect1 id="copyright"><title>Privoxy Copyright, License and History</title>
2214 <!-- Include copyright.sgml -->
2220 Portions of this document are <quote>borrowed</quote> from the original
2221 <application>Junkbuster</application> (tm) FAQ, and modified as
2222 appropriate for <application>Privoxy</application>.
2225 <!-- ~~~~~ New section ~~~~~ -->
2226 <sect2><title>License</title>
2227 <!-- Include copyright.sgml: -->
2229 <!-- end copyright -->
2231 <!-- ~ End section ~ -->
2233 <!-- ~~~~~ New section ~~~~~ -->
2234 <sect2><title>History</title>
2235 <!-- Include history.sgml -->
2241 <!-- ~ End section ~ -->
2244 <!-- ~~~~~ New section ~~~~~ -->
2246 <sect1 id="seealso"><title>See also</title>
2248 <!-- Include seealso.sgml -->
2259 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
2261 This program is free software; you can redistribute it
2262 and/or modify it under the terms of the GNU General
2263 Public License as published by the Free Software
2264 Foundation; either version 2 of the License, or (at
2265 your option) any later version.
2267 This program is distributed in the hope that it will
2268 be useful, but WITHOUT ANY WARRANTY; without even the
2269 implied warranty of MERCHANTABILITY or FITNESS FOR A
2270 PARTICULAR PURPOSE. See the GNU General Public
2271 License for more details.
2273 The GNU General Public License should be included with
2274 this file. If not, you can view it at
2275 http://www.gnu.org/copyleft/gpl.html
2276 or write to the Free Software Foundation, Inc.,
2277 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
2280 Revision 2.15 2006/09/08 23:05:07 hal9
2281 Fix broken links. Add faq on hosts files. Move most of new windows service
2282 feature to user manual and reference in faq. Various other small changes.
2284 Revision 2.14 2006/09/05 13:25:12 david__schmidt
2285 Add Windows service invocation stuff (duplicated) in FAQ and in user manual under Windows startup. One probably ought to reference the other.
2287 Revision 2.13 2006/09/04 19:20:33 fabiankeil
2288 Adjusted anonymity related sections to match reality.
2289 Added a section about using Privoxy with Tor.
2291 Revision 2.12 2006/09/03 14:15:30 hal9
2292 Various updates, including 7 or 8 new FAQs, and updates/changes to various
2293 other ones to better reflect improvements, additions and changes for the
2294 upcoming release. This is close to final form for 3.0.4 IMHO.
2296 Revision 2.11 2006/07/18 14:48:50 david__schmidt
2297 Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
2298 with what was really the latest development (the v_3_0_branch branch)
2300 Revision 1.61.2.41 2004/04/05 13:44:05 oes
2301 Fixed allow-all-cookies alias name; closes SR #929746
2303 Revision 1.61.2.40 2004/01/30 17:00:33 oes
2304 Added OSX Panther problem
2306 Revision 1.61.2.39 2004/01/29 22:53:08 hal9
2307 Minor changes for exempting docs of text/plain. Change copyright date.
2309 Revision 1.61.2.38 2003/12/10 03:39:45 hal9
2310 Added FAQs for: demoronizer, related problems and why its included. Also,
2311 port 8118 already in use questions, and PrivoxyWindowOpen() questions. All in
2312 troubleshooting section.
2314 Revision 1.61.2.37 2003/10/17 11:01:50 oes
2315 Added Q&A for "not being used" page problem
2317 Revision 1.61.2.36 2003/06/26 23:49:20 hal9
2318 More on the filter/source code problem.
2320 Revision 1.61.2.35 2003/06/26 13:38:08 hal9
2321 Add FAQ on whether configuring Privoxy is necessary or not.
2323 Revision 1.61.2.34 2003/06/26 03:00:03 hal9
2324 Sorry, found another copyright date.
2326 Revision 1.61.2.33 2003/06/26 02:57:05 hal9
2327 Fix typo (finally!) and very minor modifications.
2329 Revision 1.61.2.32 2003/06/26 02:52:04 hal9
2332 Revision 1.61.2.31 2003/06/25 01:27:51 hal9
2333 Fix copyright, and a few nits.
2335 Revision 1.61.2.30 2003/06/25 01:13:52 hal9
2338 - FAQ on "Unable to get my own hostname"
2339 - Another one on filtering effects on text files.
2341 Revision 1.61.2.29 2003/06/15 21:32:58 hal9
2342 Add to the 4.17 (filtering effects on downloaded files).
2344 Revision 1.61.2.28 2003/03/18 19:37:21 oes
2345 s/Advanced|Radical/Adventuresome/g to avoid complaints re fun filter
2347 Revision 1.61.2.27 2002/12/01 06:31:58 hal9
2348 Add faq on win32 error 503 due to ZoneAlarm.
2350 Revision 1.61.2.26 2002/11/17 06:41:06 hal9
2351 Move default profiles table from FAQ to U-M, and other minor related changes.
2354 Revision 1.61.2.25 2002/10/29 03:21:50 hal9
2355 Add 3 Q/A's relating to HTML in email. Other minor touchups.
2357 Revision 1.61.2.24 2002/10/15 12:50:22 oes
2358 s/Advanced/Radical/ (stupid me)
2360 Revision 1.61.2.23 2002/10/15 12:38:56 oes
2361 Added Microsuck faq; more detail for PHP problem
2363 Revision 1.61.2.22 2002/10/12 01:13:13 hal9
2364 Updates for demoronizer, more commentary on Radical profile, and update on
2365 the srvany.exe/icon fix.
2367 Revision 1.61.2.21 2002/10/10 04:09:35 hal9
2368 s/Advanced/Radical/ and added very brief note.
2370 Revision 1.61.2.20 2002/09/26 01:22:45 hal9
2371 Small additions for LAN setup, content-cookies/SSL, and FTP non-support.
2373 Revision 1.61.2.19 2002/08/25 23:31:56 hal9
2374 Fix one grammatical error. Add brief FAQ relating to tranparent proxies (ie
2375 port 80 setting). Add FAQ on effects of Privoxy on downloaded files
2376 (especially filtering).
2378 Revision 1.61.2.18 2002/08/14 16:39:37 hal9
2379 Fix wrong tag on FAQ addition.
2381 Revision 1.61.2.17 2002/08/14 00:01:18 hal9
2384 Revision 1.61.2.16 2002/08/13 00:10:38 hal9
2385 Add faq to troubleshooting re: blank page syndrome, ie {-prevent-compression}.
2387 Revision 1.61.2.15 2002/08/10 11:34:22 oes
2388 Add disclaimer about probably being out-of-date
2390 Revision 1.61.2.14 2002/08/07 02:53:43 hal9
2391 Fix some minor markup errors, and move one OSX Q/A to troubleshooting section.
2393 Revision 1.61.2.13 2002/08/06 11:55:32 oes
2394 Added missing close tag
2396 Revision 1.61.2.12 2002/08/06 11:43:46 david__schmidt
2397 Updated OSX uninstall FAQ... we have an uninstall script now.
2399 Revision 1.61.2.11 2002/08/06 08:54:03 oes
2400 Style police: Fixed formatting details
2402 Revision 1.61.2.10 2002/08/02 14:00:25 david__schmidt
2403 Made the OSX removal commands far less dangerous
2405 Revision 1.61.2.9 2002/08/02 13:14:45 oes
2406 Added warning about sudo rm -r for Mac OSX deinstallation; moved this item to install section
2408 Revision 1.61.2.8 2002/08/02 02:01:42 david__schmidt
2409 Add FAQ item for MSIE on OSX HTTP proxy confusion
2411 Revision 1.61.2.7 2002/08/02 01:46:01 david__schmidt
2412 Added FAQ item for Mac OSX uninstall woes
2414 Revision 1.61.2.6 2002/07/30 20:04:56 hal9
2415 Fix typo: 'schould'.
2417 Revision 1.61.2.5 2002/07/26 15:22:58 oes
2418 - Updated to reflect changes in standard.action
2419 - Added info on where to get updated actions files
2421 Revision 1.61.2.4 2002/07/25 21:42:29 hal9
2422 Add brief notes on not proxying non-HTTP protocols.
2424 Revision 1.61.2.3 2002/06/09 16:36:33 hal9
2425 Clarifications on filtering and MIME. Hardcode 'latest release' in index.html.
2427 Revision 1.61.2.2 2002/06/06 02:51:34 hal9
2428 Fix typo in URL http:/config.privoxy.org
2430 Revision 1.61.2.1 2002/06/05 23:10:43 hal9
2431 Add new FAQ re: DUN/IE. Change release date from May to June :)
2433 Revision 1.61 2002/05/25 12:37:25 hal9
2434 Various minor changes and edits.
2436 Revision 1.60 2002/05/22 17:17:48 oes
2437 Proofread & added more links into u-m
2439 Revision 1.59 2002/05/15 04:03:30 hal9
2440 Fix ulink -> link markup.
2442 Revision 1.58 2002/05/10 01:48:20 hal9
2443 This is mostly proposed copyright/licensing additions and changes. Docs
2444 are still GPL, but licensing and copyright are more visible. Also, copyright
2445 changed in doc header comments (eliminate references to JB except FAQ).
2447 Revision 1.57 2002/05/05 20:26:02 hal9
2448 Sorting out license vs copyright in these docs.
2450 Revision 1.56 2002/05/04 08:44:44 swa
2453 Revision 1.55 2002/05/04 00:41:56 hal9
2454 -Remove TOC/first page kludge in favor of proper handling via dsl file.
2456 Revision 1.54 2002/05/03 05:06:44 hal9
2457 Add brief Q/A on transparent proxies.
2459 Revision 1.53 2002/05/03 01:34:52 hal9
2460 Fix section numbering for new sections (due to TOC kludge).
2462 Revision 1.52 2002/04/29 03:08:43 hal9
2463 -Added new Q/A on new actions file set up (pointer to u-m)
2464 -Fixed a few broken links and converted old actions as a result of
2467 Revision 1.51 2002/04/26 17:24:31 swa
2468 bookmarks cleaned, changed structure of user manual, screen and programlisting cleanups, and numerous other changes that I forgot
2470 Revision 1.50 2002/04/26 05:25:23 hal9
2471 Mass commit to catch a few scattered fixes.
2473 Revision 1.49 2002/04/12 10:10:18 swa
2476 Revision 1.48 2002/04/10 18:45:15 swa
2479 Revision 1.47 2002/04/10 04:05:32 hal9
2482 Revision 1.45 2002/04/08 22:59:26 hal9
2483 Version update. Spell chkconfig correctly :)
2485 Revision 1.44 2002/04/07 21:24:29 hal9
2486 Touch up on name change.
2488 Revision 1.43 2002/04/04 21:59:53 hal9
2489 Added NT/W2K service/icon situation.
2491 Revision 1.42 2002/04/04 18:46:47 swa
2492 consistent look. reuse of copyright, history et. al.
2494 Revision 1.41 2002/04/04 06:48:37 hal9
2495 Structural changes to allow for conditional inclusion/exclusion of content
2496 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
2497 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
2498 eventually be set by Makefile.
2499 More boilerplate text for use across multiple docs.
2501 Revision 1.40 2002/04/03 04:22:03 hal9
2502 Fixed several typos.
2504 Revision 1.39 2002/04/03 03:53:03 hal9
2505 Revert some changes, and then make some news, to layout, and appearance.
2507 Revision 1.38 2002/04/02 03:49:10 hal9
2508 Major changes to doc structure and layout. Sections are not automatically
2509 numbered now. TOC is on page by itself.
2511 Revision 1.37 2002/04/01 16:24:07 hal9
2512 -Rework of supported Q/A.
2513 -Set up entities to include boilerplate text.
2515 Revision 1.36 2002/03/31 23:18:47 hal9
2516 More on dealing with BLOCKED.
2518 Revision 1.35 2002/03/30 04:14:19 hal9
2519 Fix privoxy.org/config links.
2521 Revision 1.34 2002/03/29 04:35:56 hal9
2524 Revision 1.33 2002/03/29 01:31:48 hal9
2525 Several new Q/A's and other touch ups.
2527 Revision 1.32 2002/03/27 00:57:03 hal9
2528 Touch ups for name change.
2530 Revision 1.31 2002/03/26 22:29:55 swa
2531 we have a new homepage!
2533 Revision 1.30 2002/03/25 16:39:22 hal9
2534 A few new sections. Made all links relative to user-manual.
2536 Revision 1.29 2002/03/25 05:23:57 hal9
2537 Moved section, and touch ups.
2539 Revision 1.28 2002/03/25 04:27:33 hal9
2540 New section related to name change.
2542 Revision 1.25 2002/03/24 16:08:08 swa
2543 we are too lazy to make a block-built
2544 privoxy logo. hence removed the option.
2546 Revision 1.24 2002/03/24 15:46:20 swa
2547 name change related issue.
2549 Revision 1.23 2002/03/24 12:33:01 swa
2552 Revision 1.22 2002/03/24 11:51:00 swa
2553 name change. changed filenames.
2555 Revision 1.21 2002/03/24 11:01:06 swa
2558 Revision 1.20 2002/03/23 15:13:11 swa
2559 renamed every reference to the old name with foobar.
2560 fixed "application foobar application" tag, fixed
2561 "the foobar" with "foobar". left junkbustser in cvs
2562 comments and remarks to history untouched.
2564 Revision 1.19 2002/03/21 17:01:54 hal9
2567 Revision 1.18 2002/03/18 16:40:31 hal9
2570 Revision 1.17 2002/03/18 03:53:53 hal9
2573 Revision 1.16 2002/03/17 21:32:56 hal9
2574 A few more additions.
2576 Revision 1.15 2002/03/17 07:25:59 hal9
2577 Correcting some of my typos, and some additions.
2579 Revision 1.14 2002/03/17 02:39:13 hal9
2580 A little more added ...
2582 Revision 1.13 2002/03/17 00:22:20 hal9
2583 Adding new stuff, and trying to incorporate stuff from old faq.
2585 Revision 1.12 2002/03/11 20:13:21 swa
2588 Revision 1.11 2002/03/11 18:42:27 swa
2591 Revision 1.10 2002/03/11 13:13:27 swa
2592 correct feedback channels
2594 Revision 1.9 2002/03/10 23:34:04 swa
2595 more info on not hiding ip address
2597 Revision 1.8 2002/03/09 15:55:48 swa
2598 added default config section
2600 Revision 1.7 2002/03/07 18:16:55 swa
2603 Revision 1.6 2002/03/07 13:16:31 oes
2604 Committing changes by Stefan
2606 Revision 1.5 2002/03/02 15:50:04 swa
2607 2.9.11 version. more input for docs.
2609 Revision 1.4 2002/02/24 14:34:24 jongfoster
2610 Formatting changes. Now changing the doctype to DocBook XML 4.1
2611 will work - no other changes are needed.
2613 Revision 1.3 2001/09/23 10:13:48 swa
2614 upload process established. run make webserver and
2615 the documentation is moved to the webserver. documents
2616 are now linked correctly.
2618 Revision 1.2 2001/09/13 15:20:17 swa
2619 merged standards into developer manual
2621 Revision 1.1 2001/09/12 15:36:41 swa
2622 source files for junkbuster documentation
2624 Revision 1.3 2001/09/10 17:43:59 swa
2625 first proposal of a structure.
2627 Revision 1.2 2001/06/13 14:28:31 swa
2628 docs should have an author.
2630 Revision 1.1 2001/06/13 14:20:37 swa
2631 first import of project's documentation for the webserver.