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.14 2006/09/05 13:25:12 david__schmidt 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.14 2006/09/05 13:25:12 david__schmidt Exp $</pubdate>
82 Note: this should generate a separate page, and a live link to it.
83 But it doesn't for some mysterious reason. Please leave commented
84 unless it can be fixed proper. For the time being, the copyright
85 statement will be in copyright.smgl.
89 <legalnotice id="legalnotice">
91 text goes here ........
101 <orgname>By: Privoxy Developers</orgname>
110 This is here to keep vim syntax file from breaking :/
111 If I knew enough to fix it, I would.
112 PLEASE DO NOT REMOVE! HB: hal@foobox.net
117 This FAQ gives quick answers to frequently asked questions about
118 <ulink url="http://www.privoxy.org/">Privoxy</ulink>.
119 It can't and doesn't replace the
120 <ulink url="../user-manual/index.html"><citetitle>User Manual</citetitle></ulink>.
122 This works, at least in some situtations:
123 Test: <ulink url="privoxy-user-manual.pdf"><citetitle>User Manual</citetitle></ulink>.
127 <!-- Include privoxy.sgml boilerplate: -->
129 <!-- end boilerplate -->
132 Please note that this document is a work in progress. This copy represents
133 the state at the release of version &p-version;.
134 You can find the latest version of the document at <ulink
135 url="http://www.privoxy.org/faq/">http://www.privoxy.org/faq/</ulink>.
136 Please see the <link linkend="contact">Contact section</link> if you want to
137 contact the developers.
141 <!-- Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
147 <!-- ~~~~~ New section ~~~~~ -->
149 <sect1 id="general"><title>General Information</title>
151 <sect2 renderas="sect3" id="newjb"><title>What is this new version of <application>Junkbuster</application>?</title>
153 <!-- Include history.sgml -->
160 <sect2 renderas="sect3">
161 <title id="whyprivoxy">Why <quote>Privoxy</quote>? Why change the name from
162 <application>Junkbuster</application> at all?</title>
164 <ulink url="http://junkbusters.com/">Junkbusters Corporation</ulink>
165 continues to offer their original version of the <application>Internet
166 Junkbuster</application>, so publishing our
167 <application> Junkbuster</application>-derived software under the same name
171 There are also potential legal complications from the continued use of the
172 <application>Junkbuster</application> name, which is a registered trademark of
173 <ulink url="http://junkbusters.com/">Junkbusters Corporation</ulink>.
174 There are, however, no objections from Junkbusters Corporation to the
175 <application>Privoxy</application> project itself, and they, in fact, still
176 share our ideals and goals.
179 The developers also believed that there are so many improvements over the original
180 code, that it was time to make a clean break from the past and make
181 a name in their own right.
184 <application>Privoxy</application> is the
185 <quote><emphasis>Privacy Enhancing Proxy</emphasis></quote>. Also, its content
186 modification and junk suppression gives <emphasis>you</emphasis>, the user, more
187 control, more freedom, and allows you to browse your personal and
188 <quote><emphasis>private</emphasis> edition</quote> of the web.
193 <sect2 renderas="sect3" id="differs"><title>How does <application>Privoxy</application> differ
194 from the old <application>Junkbuster?</application></title>
196 <application>Privoxy</application> picks up where
197 <application>Junkbuster</application> left off. All the old features remain.
198 The new <application>Privoxy</application> still blocks ads and banners,
199 still manages cookies, and still helps protect your privacy. But, these are
200 all greatly enhanced, and many, many new features have been added, all in the same vein.
203 The configuration has changed significantly as well. This is something that
204 users will notice right off the bat if upgrading from
205 <application>Junkbuster</application> 2.0.x. The <quote>blocklist</quote>
206 <quote>cookielist</quote>, <quote>imagelist</quote> and much more has been
207 combined into the <quote>actions</quote> files, with a completely different
208 syntax. See the <ulink url="../user-manual/whatsnew.html">What's New</ulink>
209 page for the latest updates.
212 <application>Privoxy</application>'s new features include:
215 <!-- Include newfeatures.sgml: -->
221 <sect2 renderas="sect3" id="proxymoron"><title>What is a <quote>proxy</quote>? How does
222 <application>Privoxy</application> work? </title>
224 A web proxy is a service, based on a software such as <application>Privoxy</application>,
225 that clients (i.e. browsers) can use instead of connecting directly to the web
226 servers on the Internet. The clients then ask the proxy to fetch the objects
227 they need (web pages, images, movies etc) on their behalf, and when the proxy
228 has done so, it hands the results back to the client.
231 There are many reasons to use web proxies, such as security (firewalling),
232 efficiency (caching) and others, and there are just as many different proxies
233 to accommodate those needs.
236 <application>Privoxy</application> is a proxy that is primarily focused on privacy
237 protection, junk elimination and freeing the user from restrictions placed on his
238 activities. Sitting between your browser(s) and the Internet,
239 it is in a perfect position to filter outbound personal information that your
240 browser is leaking, as well as inbound junk. It uses a variety of techniques to do
241 this, all of which are under your control via the various configuration
247 <sect2 renderas="sect3" id="whatsanad">
248 <title id="knows">How does <application>Privoxy</application> know what is
249 an ad, and what is not?</title>
251 <application>Privoxy</application>'s approach to blocking ads is twofold:
254 First, there are certain patterns in the <emphasis>locations</emphasis> (URLs)
255 of banner images. This applies to both the path (you wouldn't guess how many
256 web sites serve their banners from a directory called <quote>banners</quote>!)
257 and the host (blocking the big banner hosting services like doublecklick.net
258 already helps a lot). <application>Privoxy</application> takes advantage of this
259 fact by using <ulink url="../user-manual/actions-file.html#AF-PATTERNS">URL
260 patterns</ulink> to sort out and block the requests for banners.
263 Second, banners tend to come in certain <emphasis>sizes</emphasis>. But you
264 can't tell the size of an image by its URL without downloading it, and if you
265 do, it's too late to save bandwidth. Therefore, <application>Privoxy</application>
266 also inspects the HTML sources of web pages while they are loaded, and replaces
267 references to images with standard banner sizes by dummy references, so that
268 your browser doesn't request them anymore in the first place.
271 Both of this involves a certain amount of guesswork and is, of course, freely
276 <sect2 renderas="sect3">
277 <title id="mistakes">Can <application>Privoxy</application> make mistakes?
278 This does not sound very scientific.</title>
280 Actually, it's a black art ;-) And yes, it is always possible to have a broad
281 rule accidentally block or change something by mistake. You will almost surely
282 run into such situations at some point. It is tricky writing rules to
283 cover every conceivable possibility, and not occasionally get false positives.
287 But this should not be a big concern since the
288 <application>Privoxy</application> configuration is very flexible, and
289 includes tools to help identify these types of situations so they can be
290 addressed as needed, allowing you to customize your installation.
291 (<link linkend="badsite">See the Troubleshooting section below</link>.)
297 <sect2 renderas="sect3">
298 <title id="configornot">Will I have to configure <application>Privoxy</application>
299 before I can use it?</title>
301 No, not really. The default installation should give you a good starting
302 point, and block <emphasis>most</emphasis> unwanted content.
305 But you will certainly run into situations where there are false positives,
306 or ads not being blocked that you may not want to see. In these cases, you
307 would certainly benefit by customizing <application>Privoxy's</application>
308 configuration to more closely match your individual situation. And we would
309 encourage you to do this. This is where the real power of
310 <application>Privoxy</application> lies!
315 <sect2 renderas="sect3" id="browsers2"><title>My browser does the same things as
316 <application>Privoxy</application>. Why should I use
317 <application>Privoxy</application> at all?</title>
319 Modern browsers do indeed have <emphasis>some</emphasis> of the same
320 functionality as <application>Privoxy</application>. Maybe this is
321 adequate for you. But <application>Privoxy</application> is much more
322 versatile and powerful, and can do a number of things that browsers just can't.
325 In addition, a proxy is good choice if you use multiple browsers, or
326 have a LAN with multiple computers. This way all the configuration
327 is in one place, and you don't have to maintain a similar configuration
328 for possibly many browsers.
334 <sect2 renderas="sect3" id="license"><title>Is there is a license or fee? What about a
335 warranty? Registration?</title>
337 <application>Privoxy</application> is licensed under the <ulink
338 url="http://www.gnu.org/copyleft/gpl.html">GNU General Public License (GPL)</ulink>.
339 It is free to use, copy, modify or distribute as you wish under the terms of this
340 license. Please see the <link linkend="copyright">Copyright</link> section for more
341 information on the license and copyright. Or the <filename>LICENSE</filename> file
342 that should be included.
345 There is <emphasis>no warranty</emphasis> of any kind, expressed, implied or otherwise.
346 That is something that would cost real money ;-) There is no registration either.
347 <application>Privoxy</application> really is <emphasis>free</emphasis>
353 <sect2 renderas="sect3" id="jointeam"><title>I would like to help you, what can I do?</title>
355 <sect3 renderas="sect4" id="jointeam-work"><title>Would you like to participate?</title>
357 Well, we <emphasis>always</emphasis> need help. There is something for
358 everybody who wants to help us. We welcome new developers, packagers,
359 testers, documentation writers or really anyone with a desire to help in
360 any way. You <emphasis>DO NOT</emphasis> need to be a
361 <quote>programmer</quote>. There are many other tasks available. In fact,
362 the programmers often can't spend as much time programming because of some
363 of the other, more mundane things that need to be done, like checking the
364 Tracker feedback sections.
367 So first thing, <ulink
368 url="https://sourceforge.net/account/register.php">get an account on SourceForge.net</ulink>
369 and mail your id to the <ulink url="mailto:ijbswa-developers@lists.sourceforge.net">developers
370 mailing list</ulink>. Then, please read the <ulink
371 url="../developer-manual/index.html">Developer's Manual</ulink>, at least
372 the pertinent sections.
375 Once we have added you to the team, you'll have access to the <ulink
376 url="http://sourceforge.net/cvs/?group_id=11118">CVS repository</ulink>, and
377 together we'll find a suitable task for you.
381 <sect3 renderas="sect4" id="jointeam-money"><title>Contribute!</title>
383 We, of course, welcome donations and could use money for domain registering,
384 buying software to test <application>Privoxy</application> with, and, of course,
385 for regular world-wide get-togethers (hahaha). If you enjoy the software and feel
386 like helping us with a donation, just <ulink
387 url="mailto: ijbswa-developers@lists.sourceforge.net">drop us a note</ulink>.
391 <sect3 renderas="sect4" id="jointeam-software"><title>Software</title>
393 If you are a vendor of a web-related software like a browser, web server
394 or proxy, and would like us to ensure that <application>Privoxy</application>
395 runs smoothly with your product, you might consider supplying us with a
396 copy or license. We can't, however, guarantee that we will fix all potential
397 compatibility issues as a result.
407 <!-- ~~~~~ New section ~~~~~ -->
409 <sect1 id="installation"><title>Installation</title>
411 <sect2 renderas="sect3" id="whichbrowsers">
412 <title>Which browsers are supported by <application>Privoxy</application>?</title>
414 Any browser that can be configured to use a proxy, which
415 should be virtually all browsers, including
416 <application>Firefox</application>, <application>Internet
417 Explorer</application>, and <application>Opera</application> among others.
418 Direct browser support is not an absolute requirement since
419 <application>Privoxy</application> runs as a separate application and talks
420 to the browser in the standardized HTTP protocol, just like a web server
425 <sect2 renderas="sect3" id="whichos">
426 <title>Which operating systems are supported?</title>
428 Include supported.sgml here:
433 <sect2 renderas="sect3" id="email-client">
434 <title>Can I use <application>Privoxy</application> with my email client?</title>
436 As long as there is some way to set a HTTP proxy for the client, then yes,
437 any application can be used, whether it is strictly speaking a
438 <quote>browser</quote> or not. Though this may not be the best approach for
439 dealing with some of the common abuses of HTML in email. See <link
440 linkend="outlook">How can I configure <application>Privoxy</application>
441 with <application>Outlook Express</application>?</link> below for more on
445 Be aware that HTML email presents a number of unique security and privacy
446 related issues, that can require advanced skills to overcome. The developers
447 recommend using email clients that can be configured to convert HTML to plain
448 text for these reasons.
452 <sect2 renderas="sect3" id="newinstall"><title>Can I install
453 <application>Privoxy</application> over <application>Junkbuster</application>?</title>
455 We recommend you un-install <application>Junkbuster</application>
456 first to minimize conflicts and confusion. You may want to
457 save your old configuration files for future reference. The configuration
458 files and syntax have substantially changed, so you will need to manually
459 port your old patterns. See the <ulink url="../user-manual/upgradersnote.html">note
460 to upgraders</ulink> and <ulink url="../user-manual/installation.html">installation
461 chapter</ulink> in the <ulink url="../user-manual/index.html">user manual</ulink>
465 Note: Some installers may automatically un-install
466 <application>Junkbuster</application>, if present!
471 <sect2 renderas="sect3">
472 <title id="firststep">I just installed <application>Privoxy</application>. Is there anything
473 special I have to do now?</title>
476 All browsers must be told to use <application>Privoxy</application>
477 as a proxy by specifying the correct proxy address and port number
478 in the appropriate configuration area for the browser. See below.
479 You should also flush your browser's memory and disk cache to get rid of any
480 cached junk items, and remove any stored cookies.
487 <sect2 renderas="sect3" id="localhost"><title>What is the proxy address of <application>Privoxy</application>?</title>
489 If you set up the <application>Privoxy</application> to run on
490 the computer you browse from (rather than your ISP's server or some
491 networked computer on a LAN), the proxy will be on <literal>127.0.0.1</literal>
492 (sometimes referred to as <quote>localhost</quote>,
493 which is the special name used by every computer on the Internet to refer
494 to itself) and the port will be 8118 (unless you have <application>Privoxy</application>
495 to run on a different port with the <ulink
496 url="../user-manual/config.html#LISTEN-ADDRESS">listen-address</ulink> config option).
499 When configuring your browser's proxy settings you typically enter
500 the word <quote>localhost</quote> or the IP address <quote>127.0.0.1</quote>
501 in the boxes next to <quote>HTTP</quote> and <quote>Secure</quote> (HTTPS) and
502 then the number <quote>8118</quote> for <quote>port</quote>.
503 This tells your browser to send all web requests to <application>Privoxy</application>
504 instead of directly to the Internet.
507 <application>Privoxy</application> can also be used to proxy for
508 a Local Area Network. In this case, your would enter either the IP
509 address of the LAN host where <application>Privoxy</application>
510 is running, or the equivalent hostname. Port assignment would be
511 same as above. Note that <application>Privoxy</application> doesn't
512 listen on any LAN interfaces by default.
515 <application>Privoxy</application> does not currently handle
516 any other protocols such as FTP, SMTP, IM, IRC, ICQ, etc. Be sure that
517 proxying any of these other protocols is not activated.
521 <sect2 renderas="sect3" id="nothing">
522 <title>I just installed <application>Privoxy</application>, and nothing is happening.
523 All the ads are there. What's wrong?</title>
526 Did you configure your browser to use <application>Privoxy</application>
527 as a proxy? It does not sound like it. See above. You might also try flushing
528 the browser's caches to force a full re-reading of pages. You can verify
529 that <application>Privoxy</application> is running, and your browser
530 is correctly configured by entering the special URL:
531 <ulink url="http://p.p/">http://p.p/</ulink>.
532 <!-- Use http://p.p/ instead of http://config.privoxy.org/ here because
533 of potential redirect caching problem (see next Q). -->
534 This should take you to a page titled <quote>This is Privoxy..</quote> with
535 access to <application>Privoxy's</application> internal configuration.
536 If you see this, then you are good to go. If you receive a page saying
537 <quote>Privoxy is not running</quote>, then the browser is not set up to use
538 your <application>Privoxy</application> installation.
539 If you receive anything else (probably nothing at all), it could either
540 be that the browser is not set up correctly, or that
541 <application>Privoxy</application> is not running at all. Check the <ulink
542 url="../user-manual/config.html#LOGFILE">log file</ulink>. For instructions
543 on starting <application>Privoxy</application> and browser configuration,
544 see the <ulink url="http://www.privoxy.org/user-manual/startup.html">chapter
545 on starting <application>Privoxy</application></ulink> in the
546 <ulink url="http://www.privoxy.org/user-manual/">user manual</ulink>.
551 <sect2 renderas="sect3" id="notused">
552 <title>I get a <quote>Privoxy is not being used</quote> dummy page although
553 <application>Privoxy</application> is running and being used.</title>
556 First, make sure that Privoxy is <emphasis>really</emphasis> running and
557 being used by visiting <ulink url="http://p.p/">http://p.p/</ulink>. You
558 should see the <application>Privoxy</application> main page. If not, see
559 the <ulink url="http://www.privoxy.org/user-manual/startup.html">chapter
560 on starting <application>Privoxy</application></ulink> in the
561 <ulink url="http://www.privoxy.org/user-manual/">user manual</ulink>.
565 Now if <ulink url="http://p.p/">http://p.p/</ulink> works for you, but
566 other parts of <application>Privoxy</application>'s web interface show
567 the dummy page, your browser has cached a redirection it encountered before
568 <application>Privoxy</application> was being used. You need to clear your
569 browser's cache. Note that shift-reloading the dummy page won't help, since
570 that'll only refresh the dummy page, not the redirection that lead you there.
574 The procedure for clearing the cache varies from browser to browser. For
575 example, <application>Mozilla/Netscape</application> users would click
576 <guibutton>Edit</guibutton> --> <guibutton>Preferences</guibutton> -->
577 <guibutton>Advanced</guibutton> --> <guibutton>Cache</guibutton> and
578 then click both <quote><guibutton>Clear Memory Cache</guibutton></quote>
579 and <quote><guibutton>Clear Disk Cache</guibutton></quote>.
580 And, <application>Firefox</application> users would click
581 <guibutton>Tools</guibutton> --> <guibutton>Options</guibutton> -->
582 <guibutton>Privacy</guibutton> --> <guibutton>Cache</guibutton> and
583 then click <quote><guibutton>Clear Cache Now</guibutton></quote>.
591 <!-- ~~~~~ New section ~~~~~ -->
593 <sect1 id="configuration"><title>Configuration</title>
595 <sect2 renderas="sect3" id="getupdates"><title>Where can I get updated Actions Files?</title>
597 Based on your feedback and the continuing development, updated actions files will be
598 made available on the <ulink
599 url="http://sourceforge.net/project/showfiles.php?group_id=11118">files section</ulink> of
600 our <ulink url="http://sf.net/projects/ijbswa/">project page</ulink>.
604 If you wish to receive an email notification whenever we release updates of
605 <application>Privoxy</application> or the actions file, <ulink
606 url="http://lists.sourceforge.net/lists/listinfo/ijbswa-announce/">subscribe
607 to our announce mailing list</ulink>, ijbswa-announce@lists.sourceforge.net.
612 <sect2 renderas="sect3" id="newconfig"><title>Can I use my old config files?</title>
614 The syntax and purpose of configuration files has remained the same
615 throughout the 3.x series. Although each release contains updated,
616 <quote>improved</quote> versions and it is recommended to use the newer
620 But all configuration files have substantially
621 changed from the <application>Junkbuster</application> days, and early
622 versions of <application>Privoxy 2.x</application>. The old files, like
623 <filename>blocklist</filename> will not work at all.
626 Refer to the <ulink url="../user-manual/whatsnew.html">What's New</ulink>
627 page for information on configuration changes that may occur from one release to another.
631 <sect2 renderas="sect3">
632 <title id="actionsfile">What is an <quote>actions</quote> file?</title>
635 <ulink url="../user-manual/actions-file.html">Actions files</ulink>
636 are where various <ulink url="../user-manual/actions-file.html#ACTIONS">actions</ulink>
637 that <application>Privoxy</application> could take while processing a certain
638 request, are configured. Typically, you would define a set of default actions
639 that apply to all URLs, then add exceptions to these defaults where needed.
640 There is a wide array of actions available that give the user a high degree
641 of control and flexibility on how to process each and every web page.
645 Actions can be defined on a <ulink
646 url="../user-manual/actions-file.html#AF-PATTERNS">URL pattern</ulink> basis, i.e.
647 for single URLs, whole web sites, groups or parts thereof etc. Actions can also be
648 grouped together and then applied to requests matching one or more patterns.
649 There are many possible actions that might apply to any given site. As an example,
650 if you are blocking cookies as one of your default actions, but need to accept
651 cookies from a given site, you would need to define an exception for this
652 site in one of your actions files, preferably in <filename>user.action</filename>.
657 <sect2 renderas="sect3" id="actionss">
658 <title>The <quote>actions</quote> concept confuses me. Please list
659 some of these <quote>actions</quote>.</title>
661 For a comprehensive discussion of the actions concept, please refer
662 to the <ulink url="../user-manual/actions-file.html">actions file
663 chapter</ulink> in the <ulink url="../user-manual/index.html">user
664 manual</ulink>. It includes a <ulink
665 url="../user-manual/actions-file.html#ACTIONS">list of all actions</ulink>
666 and an <ulink url="../user-manual/actions-file.html#ACT-EXAMPLES">actions
667 file tutorial</ulink> to get you started.
672 <sect2 renderas="sect3">
673 <title id="actconfig">How are actions files configured? What is the easiest
674 way to do this?</title>
677 Actions files are just text files in a special syntax and can be edited
678 with a text editor. But probably the easiest way is to access
679 <application>Privoxy</application>'s user interface with your web browser
680 at <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
681 (Shortcut: <ulink url="http://p.p/">http://p.p/</ulink>) and then select
682 <quote><ulink url="http://config.privoxy.org/show-status">View &
683 change the current configuration</ulink></quote> from the menu.
688 <sect2 renderas="sect3">
689 <title>There are several different <quote>actions</quote> files. What are
690 the differences?</title>
692 As of <application>Privoxy</application> v2.9.15, three actions files
693 are being included, to be used for
694 different purposes: These are
695 <filename>default.action</filename>, the <quote>main</quote> actions file
696 which is actively maintained by the <application>Privoxy</application>
697 developers, <filename>user.action</filename>, where users are encouraged
698 to make their private customizations, and <filename>standard.action</filename>,
699 which is for internal <application>Privoxy</application> use only.
700 Please see <ulink url="../user-manual/actions-file.html">the actions chapter</ulink>
701 in the <ulink url="../user-manual/index.html">user manual</ulink> for a more
702 detailed explanation.
706 Earlier versions included three different versions of the
707 <filename>default.action</filename> file. The new scheme allows for
708 greater flexibility of local configuration, and for browser based
709 selection of pre-defined <quote>aggressiveness</quote> levels.
714 <sect2 renderas="sect3" id="yahoo"><title>How can I make my Yahoo/Hotmail/Gmail account work?</title>
716 The default configuration shouldn't impact the usability of any of these services.
717 It will, however, make all cookies temporary, so that your browser will forget your
718 login credentials in between browser sessions. If you would like not to have to log
719 in manually each time you access those websites, simply turn off all cookie handling
720 for them in the <filename>user.action</filename> file. An example for yahoo might
724 <screen># Allow all cookies for Yahoo login:
726 { -<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> }
727 .login.yahoo.com</screen>
732 <sect2 renderas="sect3" id="configfiles"> <title>What's the difference between the
733 <quote>Cautious</quote>, <quote>Medium</quote> and <quote>Adventuresome</quote> defaults?</title>
735 Configuring <application>Privoxy</application> is not entirely trivial. To
736 help you get started, we provide you with three different default action
737 <quote>profiles</quote> in the web based actions file editor at <ulink
738 url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>.
739 See the <ulink url="../user-manual/actions-file.html"><citetitle>User
740 Manual</citetitle></ulink> for a list of actions, and how the default
745 Where the defaults are likely to break some sites, exceptions for
746 known popular <quote>problem</quote> sites are included, but in
747 general, the more aggressive your default settings are, the more exceptions
748 you will have to make later. See the <ulink
749 url="../user-manual/index.html"><citetitle>User Manual</citetitle></ulink>
750 for a more deatiled discussion.
754 It should be noted that the <quote>Adventuresome</quote> profile (formerly known
755 as the <quote>Advanced</quote> profile) is not only more
756 aggressive, but also includes fun and, extreme usage of most of
757 <application>Privoxy's</application> features. Use at your own risk!
762 <sect2 renderas="sect3" id="browseconfig"> <title>Why can I change the configuration
763 with a browser? Does that not raise security issues?</title>
765 It may seem strange that regular users can edit the config files with their
766 browsers, although the whole <filename>/etc/privoxy</filename> hierarchy
767 belongs to the user <quote>privoxy</quote>, with only 644 permissions.
770 When you use the browser-based editor, <application>Privoxy</application>
771 itself is writing to the config files. Because
772 <application>Privoxy</application> is running as the user <quote>privoxy</quote>,
773 it can update the config files.
776 If you run <application>Privoxy</application> for multiple untrusted users (e.g. in
777 a LAN), you will probably want to turn the web-based editor and remote toggle
778 features off by setting <quote><literal><ulink
779 url="../user-manual/config.html#ENABLE-EDIT-ACTIONS">enable-edit-actions</ulink>
780 0</literal></quote> and <quote><literal><ulink
781 url="../user-manual/config.html#ENABLE-REMOTE-TOGGLE">enable-remote-toggle</ulink>
782 0</literal></quote> in the <ulink url="../user-manual/config.html">main configuration file</ulink>.
785 Note that in the default configuration, only local users (i.e. those on
786 <quote>localhost</quote>) can connect to <application>Privoxy</application>,
787 so this is not (normally) a security problem.
792 <sect2 renderas="sect3">
793 <title id="filterfile">What is the <filename>default.filter</filename> file? What is a <quote>filter</quote>?</title>
795 The <ulink url="../user-manual/filter-file.html"><filename>default.filter</filename></ulink>
796 file is where <emphasis>filters</emphasis> as supplied by the developers are defined.
797 Filters are a special subset of actions that can be used to modify or
798 remove, web page content on the fly. Filters apply to <emphasis>anything</emphasis>
799 in the page source (and optionally both client and server headers), including
800 HTML tags, and JavaScript. Regular expressions are used to accomplish this.
801 There are a number of pre-defined filters to deal with common annoyances. The
802 filters are only defined here, to invoke them, you need to use the
804 url="../user-manual/actions-file.html#FILTER"><literal>filter</literal>
805 action</ulink> in one of the actions files. Filtering is automatically
806 disabled for inappropriate MIME types.
810 If you are familiar with regular expressions, and HTML, you can look at
811 the provided <filename>default.filter</filename> with a text editor and define
812 your own filters. This is potentially a very powerful feature, but
813 requires some expertise in both regular expressions and HTML/HTTP. You should
814 place any modifications to the default filters, or any new ones you create
815 in a separate file, such as <filename>user.filter</filename>, so they won't
816 be overwritten during upgrades. The ability to define multiple filter files
817 in <filename>config</filename> is a new feature as of v. 3.0.4.
821 There is no GUI editor option for this part of the configuration,
822 but you can disable/enable the various pre-defined filters of the included
823 <filename>default.filter</filename> file with the <ulink
824 url="http://config.privoxy.org/show-status">web-based actions file editor</ulink>.
829 <sect2 renderas="sect3">
830 <title id="lanconfig">How can I set up <application>Privoxy</application> to act as a proxy for my
833 By default, <application>Privoxy</application> only responds to requests
834 from <literal>127.0.0.1</literal> (localhost). To have it act as a server for
835 a network, this needs to be changed in the <ulink
836 url="../user-manual/config.html">main configuration file</ulink>. Look for
838 url="../user-manual/config.html#LISTEN-ADDRESS">listen-address</ulink></literal>
839 option, which may be commented out with a <quote>#</quote> symbol. Make sure
840 it is uncommented, and assign it the address of the LAN gateway interface,
841 and port number to use. Assuming your LAN address is 192.168.1.1 and you
842 wish to run <application>Privoxy</application> on port 8118, this line
848 listen-address 192.168.1.1:8118</screen>
852 Save the file, and restart <application>Privoxy</application>. Configure
853 all browsers on the network then to use this address and port number.
857 Alternately, you can have <application>Privoxy</application> listen on
858 all available interfaces:
863 listen-address :8118</screen>
867 And then use <application>Privoxy's</application>
869 url="../user-manual/config.html#PERMIT-ACCESS">permit-access</ulink>
870 feature to limit connections. A firewall in this situation is recommended
875 The above steps should be the same for any TCP network, regardless of
880 If you run <application>Privoxy</application> on a LAN with untrusted users,
881 we recommend that you double-check the <ulink
882 url="../user-manual/config.html#ACCESS-CONTROL">access control and security</ulink>
889 <sect2 renderas="sect3">
890 <title id="noseeum">Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</title>
892 The replacement for blocked images can be controlled with the <ulink
893 url="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"><literal>set-image-blocker</literal>
894 action</ulink>. You have the choice of a checkerboard pattern, a transparent 1x1 GIF
895 image (aka <quote>blank</quote>), or a redirect to a custom image of your choice.
896 Note that this choice only has effect for images which are blocked as images, i.e.
897 whose URLs match both a <literal><ulink
898 url="../user-manual/actions-file.html#HANDLE-AS-IMAGE">handle-as-image</ulink></literal>
899 <emphasis>and</emphasis> <literal><ulink
900 url="../user-manual/actions-file.html#BLOCK">block</ulink></literal> action.
903 If you want to see nothing, then change the <ulink
904 url="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"><literal>set-image-blocker</literal>
905 action</ulink> to <quote>blank</quote>. This can be done by editing the
906 <filename>default.action</filename> file, or trough the <ulink
907 url="http://config.privoxy.org/show-status">web-based actions file editor</ulink>.
912 <sect2 renderas="sect3">
913 <title id="whyseeum">Why would anybody want to see a checkerboard pattern?</title>
915 Remember that <link linkend="whatsanad">telling which image is an ad and which
916 isn't</link>, is mostly guesswork. While we hope that the standard configuration
917 is rather smart, it can and will make errors. The checkerboard image is visually
918 decent, but it shows you that and where images were blocked, which can be very
919 helpful in case some navigation aid or otherwise innocent image was
920 erraneously blocked. Some people might also enjoy seeing how many banners
921 they <emphasis>don't</emphasis> have to see..
926 <sect2 renderas="sect3">
927 <title id="blockedbytext">I see some images being replaced by a text
928 instead of the checkerboard image. Why and how do I get rid of this?</title>
930 This happens when the banners are not embedded in the HTML code of the
931 page itself, but in separate HTML (sub)documents that are loaded into (i)frames
932 or (i)layers, and these external HTML documents are blocked. Being non-images
933 they get replaced by a substitute HTML page rather than a substitute image,
934 which wouldn't work out technically, since the browser expects and accepts
935 only HTML when it has requested an HTML document.
938 The substitute page adapts to the available space and shows itself as a
939 miniature two-liner if loaded into small frames, or full-blown with a
940 large red "BLOCKED" banner if space allows.
943 If you prefer the banners to be blocked by images, you must see to it that
944 the HTML documents in which they are embedded are not blocked. Clicking
945 the <quote>See why</quote> link offered in the substitute page will show
946 you which rule blocked the page. After changing the rule and un-blocking
947 the HTML documents, the browser will try to load the actual banner images
948 and the usual image blocking will (hopefully!) kick in.
953 <sect2 renderas="sect3" id="srvany">
954 <title>Can <application>Privoxy</application> run as a service
955 on Win2K/NT/XP?</title>
957 Yes. Version 3.0.4 introduces full <application>Windows</application> service
958 functionality. See <ulink url="../user-manual/installation.html#installation-pack-win">
959 the User Manual</ulink> for details on how to install and configure
960 <application>Privoxy</application> as a service.
963 Earlier versions could run as a system service using <command>srvany.exe</command>.
964 See the discussion at <ulink
965 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>,
966 for details, and a sample configuration.
971 <sect2 renderas="sect3" id="otherproxy">
972 <title>How can I make <application>Privoxy</application> work with other
973 proxies like <application>Squid</application> or <application>Tor</application>?</title>
975 This can be done and is often useful to combine the benefits of
976 <application>Privoxy</application> with those of a another proxy.
978 url="../user-manual/config.html#FORWARDING">forwarding chapter</ulink>
979 in the <ulink url="../user-manual/index.html">user manual</ulink> which
980 describes how to do this.
984 <sect2 renderas="sect3" id="port-80">
985 <title>Can I just set <application>Privoxy</application> to use port 80
986 and thus avoid individual browser configuration?</title>
989 No, its more complicated than that. This only works with special kinds
990 of proxies known as <quote>transparent</quote> proxies (see below).
995 <sect2 renderas="sect3" id="transparent">
996 <title>Can <application>Privoxy</application> run as a <quote>transparent
997 </quote> proxy?</title>
999 No, <application>Privoxy</application> currently does not have this ability,
1000 though it may be added in a future release. Transparent proxies require
1001 special handling of the request headers beyond what
1002 <application>Privoxy</application> is now capable of.
1006 Chaining <application>Privoxy</application> behind another proxy that has
1007 this ability should work though.
1009 url="../user-manual/config.html#FORWARDING">forwarding chapter</ulink>
1010 in the <ulink url="../user-manual/index.html">user manual</ulink>. As
1011 a transparent proxy to be used for chaining we recommend Transproxy
1012 (<ulink url="http://transproxy.sourceforge.net/">http://transproxy.sourceforge.net/</ulink>).
1017 <sect2 renderas="sect3" id="outlook">
1018 <title>How can I configure <application>Privoxy</application> for use with <application>Outlook
1019 Express</application>?</title>
1021 <application>Outlook Express</application> uses <application>Internet Explorer</application>
1022 components to both render HTML, and fetch any HTTP requests that may be embedded in an HTML email.
1023 So however you have <application>Privoxy</application> configured to work
1024 with IE, this configuration should automatically be shared.
1028 <sect2 renderas="sect3" id="outlook-more">
1029 <title>How can I have separate rules just for HTML mail?</title>
1031 The short answer is, you can't. <application>Privoxy</application> has no way
1032 of knowing which particular application makes a request, so there is no way to
1033 distinguish between web pages and HTML mail.
1034 <application>Privoxy</application> just blindly proxies all requests. In the
1035 case of <application>Outlook Express</application> (see above), OE uses
1036 IE anyway, and there is no way for <application>Privoxy</application> to ever
1037 be able to distinguish between them (nor could any other proxy type application for
1041 For a good discussion of some of the issues involved (including privacy and
1042 security issues), see
1043 <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>.
1047 <sect2 renderas="sect3" id="allow-cookies">
1048 <title>How can I allow permanent cookies for my trusted sites?</title>
1051 There are several actions that relate to cookies. The default behavior is to
1052 allow only <quote>session cookies</quote>, which means the cookies only last
1053 for the current browser session. This eliminates most kinds of abuse related
1054 to cookies. But there may be cases where we want cookies to last.
1057 To disable all cookie actions, so that cookies are allowed unrestricted,
1058 both in and out, for <literal>example.com</literal>:
1062 { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
1063 .example.com</screen>
1066 Place the above in <filename>user.action</filename>. Note some of these may
1067 be off by default anyway, so this might be redundant, but there is no harm
1068 being explicit in what you want to happen. <filename>user.action</filename>
1069 includes an alias for this situation, called
1070 <literal>allow-all-cookies</literal>.
1074 <sect2 renderas="sect3" id="multiples">
1075 <title>Can I have separate configurations for different users?</title>
1077 Each instance of <application>Privoxy</application> has its own
1078 configuration, including such attributes as the TCP port that it listens on.
1079 What you can do is run multiple instances of <application>Privoxy</application>, each with
1080 a unique <literal>listen-address</literal> and configuration path, and then
1081 each of these can have their own configurations. Think of it as per-port
1085 Simple enough for a few users, but for large installations, consider having
1086 groups of users that might share like configurations.
1090 <sect2 renderas="sect3" id="whitelists">
1091 <title>Can I set-up <application>Privoxy</application> as a whitelist of
1092 <quote>good</quote> sites?</title>
1094 Sure. There are a couple of things you can do for simple whitelisting.
1095 Here's one real easy one:
1098 ############################################################
1100 ############################################################
1102 / # Block *all* URLs
1104 ############################################################
1106 ############################################################
1110 games.example.com</screen>
1112 This allows access to only those three sites.
1115 A more interesting approach is <application>Privoxy's</application>
1116 <literal>trustfile</literal> concept, which incorporates the notion of
1117 <quote>trusted referrers</quote>. See the <ulink
1118 url="../user-manual/config.html#TRUSTFILE">User Manual Trust</ulink>
1122 These are fairly simple approaches and are not completely foolproof. There
1123 are various other configuration options that should be disabled (described
1124 elsewhere here and in <ulink url="../user-manual/">the User Manual</ulink>)
1125 so that users can't modify their own configuration and easily circumvent the
1132 <!-- ~ End section ~ -->
1135 <!-- ~~~~~ New section ~~~~~ -->
1137 <sect1 id="misc"><title>Miscellaneous</title>
1139 <sect2 renderas="sect3">
1140 <title id="slowsme">How much does <application>Privoxy</application> slow my browsing down? This
1141 has to add extra time to browsing.</title>
1143 How much of an impact depends on many things, including the CPU of the host
1144 system, how agressive the configuration is, which specific actions are being triggered,
1145 the size of the page, etc.
1148 Overall, it should not slow you down any in real terms, and may actually help
1149 speed things up since ads, banners and other junk are not typically being displayed.
1150 The actual processing time required by <application>Privoxy</application>
1151 itself for each page, is relatively small in the overall scheme of things,
1152 and happens very quickly. This is typically more than offset by time saved
1153 not downloading and rendering ad images (if ad blocking is being used).
1157 <quote>Filtering</quote> content via the <literal><ulink
1158 url="../user-manual/actions-file.html#FILTER">filter</ulink></literal> or
1160 url="../user-manual/actions-file.html#DEANIMATE-GIFS">deanimate-gifs</ulink></literal>
1161 actions will certainly cause a perceived slowdown, since the entire document
1162 needs to be buffered before displaying. And on very large documents, there may be
1163 some impact. How much depends on the page size, the actual definition of the
1164 filter(s), etc. See below. Most other actions have little to no impact on
1171 <sect2 renderas="sect3" id="loadingtimes"><title>I notice considerable
1172 delays in page requests compared to the old Junkbuster. What's wrong?</title>
1174 If you use any <literal><ulink
1175 url="../user-manual/actions-file.html#FILTER">filter</ulink></literal> action,
1176 such as filtering banners by size, web-bugs etc, or the <literal><ulink
1177 url="../user-manual/actions-file.html#DEANIMATE-GIFS">deanimate-gifs</ulink></literal>
1178 action, the entire document must be loaded into memory in order for the filtering
1179 mechanism to work, and nothing is sent to the browser during this time.
1182 The loading time typically does not really change much in real numbers, but
1183 the feeling is different, because most browsers are able to start rendering
1184 incomplete content, giving the user a feeling of "it works". This effect is
1185 more noticeable on slower dialup connections. Extremely large documents
1186 may have some impact on the time to load the page where there is filtering
1187 being done. But overall, the difference should be very minimal. If there is a
1188 big impact, then probably some other problem is contributing.
1191 Filtering is automatically disabled for inappropriate MIME types. But note
1192 that if the web server mis-reports the MIME type, then content that should
1193 not be filtered, could be. <application>Privoxy</application> only knows how
1194 to differentiate filterable content because of the MIME type as reported by
1195 the server, or because of some configuration setting that enables/disables
1201 <sect2 renderas="sect3" id="slowcrawl">
1202 <title>I just installed <application>Privoxy</application>, and all my
1203 browsing has slowed to a crawl. What gives? </title>
1205 This should not happen, and for the overwhelming number of users world-wide,
1206 it does not happen. I would suspect some inadvertent interaction of software
1207 components such as anti-virus software, spyware protectors, personal
1208 firewalls or similar components. Try disabling (or uninstalling) these one
1209 at a time and see if that helps.
1213 <sect2 renderas="sect3" id="configurl"><title>What are "http://config.privoxy.org/" and
1214 "http://p.p/"?</title>
1216 <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink> is the
1217 address of <application>Privoxy</application>'s built-in user interface, and
1218 <ulink url="http://p.p/">http://p.p/</ulink> is a shortcut for it.
1221 Since <application>Privoxy</application> sits between your web browser and the Internet,
1222 it can simply intercept requests for these addresses and answer them with its built-in
1223 <quote>web server</quote>.
1226 This also makes for a good test for your browser configuration: If entering the
1227 URL <ulink url="http://config.privoxy.org/">http://config.privoxy.org/</ulink>
1228 takes you to a page saying <quote>This is Privoxy ...</quote>, everything is OK.
1229 If you get a page saying <quote>Privoxy is not working</quote> instead, then
1230 your browser didn't use <application>Privoxy</application> for the request,
1231 hence it could not be intercepted, and you have accessed the <emphasis>real</emphasis>
1232 web site at config.privoxy.org.
1235 With recent versions of <application>Privoxy</application> (version 2.9.x and
1236 later), the user interface features information on the run time status, the
1237 configuration, and even a built-in editor for the <ulink
1238 url="../user-manual/actions-file.html">actions files</ulink>.
1242 Note that the built-in URLs from earlier versions of <application>Junkbuster</application>
1243 / <application>Privoxy</application>, http://example.com/show-proxy-args and http://i.j.b/,
1244 are no longer supported. If you still use such an old version, you should really consider
1245 upgrading to &p-version;.
1250 out of date 09/02/06 HB
1251 <sect2 renderas="sect3" id="blocklist"><title>Do you still maintain the blocklists?</title>
1253 No. The patterns for blocking now reside (among other things) in the <ulink
1254 url="../user-manual/actions-file.html">actions files</ulink>, which are
1255 actively maintained instead. See next question ...
1259 <sect2 renderas="sect3" id="newads"><title>How can I submit new ads, or report
1262 Please see the <link linkend="contact">Contact section</link> for
1263 various ways to interact with the developers.
1268 <sect2 renderas="sect3" id="noonecares"><title>Why doesn't anyone answer my support
1271 Rest assured that it has been read and considered. Why it is not answered,
1272 could be for various reasons, including no one has a good answer for it, no
1273 one has had time to yet investigate it thorougly, it has been reported
1274 numerous times already, or because not enough information was provided to help
1275 us help you. Your efforts are not wasted, and we do appreciate them.
1281 <sect2 renderas="sect3" id="ip"><title>How can I hide my IP address?</title>
1283 If you run both the browser and the proxy locally, you cannot hide your IP
1284 address with <application>Privoxy</application> or ultimately any other
1285 software. The server needs to know your IP address so that it knows where to
1286 send the responses back.
1289 There are many publicly usable "anonymous" proxies out there, which
1290 provide a further level of indirection between you and the web server.
1293 However, these proxies are called "anonymous" because you don't need
1294 a password, not because they would offer any real anonymity.
1295 Most of them will log your IP address and make it available to the
1296 authorities in case you violate the law of the country they run in. In fact
1297 you can't even rule out that some of them only exist to *collect* information
1298 on (those suspicious) people with a more than average preference for privacy.
1301 Your best bet is to chain <application>Privoxy</application>
1302 with <ulink url="http://tor.eff.org/">Tor</ulink>,
1303 an <ulink url="http://www.eff.org/">EFF</ulink> supported onion routing system.
1304 The configuration details can be found in
1305 <ulink url="#TOR">How do I use <application>Privoxy</application> together with <application>Tor</application>?</ulink>.
1309 There is, however, even in the single-machine case the possibility to make the
1310 server believe that your machine is in fact a shared proxy serving a large
1311 LAN, and we are looking into that.
1313 I assume this is about sending fake forward IP addresses?
1314 David and I looked into it and considered it a waste of time to implement.
1319 <sect2 renderas="sect3">
1320 <title id="anonforsure">Can <application>Privoxy</application> guarantee I am anonymous?</title>
1322 No. Your chances of remaining anonymous are greatly improved, but unless you
1323 <ulink url="#TOR">chain <application>Privoxy</application> with <application>Tor</application></ulink>
1324 or a similar system and know what you're doing when it comes to configuring
1325 the rest of your system, it would be safest to assume that everything you do
1326 on the Web can be traced back to you.
1329 <application>Privoxy</application> can remove various information about you,
1330 and allows <emphasis>you</emphasis> more freedom to decide which sites
1331 you can trust, and what details you want to reveal. But it neither
1332 hides your ip address, nor can it guarantee that the rest of the system
1333 behaves correctly. There are several possibilities how a web sites can find
1334 out who you are, even if you are using a strict <application>Privoxy</application>
1335 configuration and chained it with <application>Tor</application>.
1338 Most of <application>Privoxy's</application> protection can be easily subverted
1339 by an insecure browser configuration, therefore you should use a browser that can
1340 be configured to only execute code from trusted sites, and be careful which sites you trust.
1341 For example there is no point in having <application>Privoxy</application>
1342 modify the User-Agent header, if websites can get all the information they want
1343 through JavaScript, ActiveX, Flash, Java etc.
1346 A few browsers disclose the user's email address in certain situations, such
1347 as when transferring a file by FTP. <application>Privoxy</application>
1348 does not filter FTP. If you need this feature, or are concerned about the
1349 mail handler of your browser disclosing your email address, you might
1350 consider products such as <application>NSClean</application>.
1353 Browsers available only as binaries could use non-standard headers to give
1354 out any information they can have access to: see the manufacturer's license
1355 agreement. It's impossible to anticipate and prevent every breach of privacy
1356 that might occur. The professionally paranoid prefer browsers available as
1357 source code, because anticipating their behavior is easier. Trust the source,
1363 <sect2 renderas="sect3" id="tor"><title>How do I use <application>Privoxy</application>
1364 together with <application>Tor</application>?</title>
1366 Before you configure <application>Privoxy</application> to use <application>Tor</application>
1367 (<ulink url="http://tor.eff.org/">http://tor.eff.org/</ulink>),
1368 please follow the User Manual chapters
1369 <ulink url="../user-manual/installation.html">2. Installation</ulink> and
1370 <ulink url="../user-manual/startup.html">5. Startup</ulink> to make sure
1371 <application>Privoxy</application> itself is setup correctly.
1374 If it is, refer to <ulink url="http://tor.eff.org/documentation.html.en">Tor's
1375 extensive documentation</ulink> to learn how to install <application>Tor</application>,
1376 and make sure <application>Tor</application>'s logfile says that
1377 <quote>Tor has successfully opened a circuit</quote> and it
1378 <quote>[l]ooks like client functionality is working</quote>.
1381 If either <application>Tor</application> or <application>Privoxy</application>
1382 isn't working, their combination most likely will neither. Testing them on their
1383 own will also help you to direct problem reports to the right audience.
1384 If <application>Privoxy</application> isn't working, don't bother the
1385 <application>Tor</application> developers. If <application>Tor</application>
1386 isn't working, don't send bug reports to the <application>Privoxy</application> Team.
1389 If you verified that <application>Privoxy</application> and <application>Tor</application>
1390 are working, it is time to connect them. As far as <application>Privoxy</application>
1391 is concerned, <application>Tor</application> is just another proxy that can be reached
1392 by socks4 or socks4a. Most likely you are interested in <application>Tor</application>
1393 to increase your anonymity level, therefore you should use socks4a,
1394 to make sure <application>Privoxy's</application> DNS requests are
1395 done through <application>Tor</application> and thus invisible to your local network.
1398 Since <application>Privoxy</application> 3.0.4, its configuration (section 5.2)
1399 is already prepared for <application>Tor</application>, if you are using a
1400 default <application>Tor</application> configuration and run it on the same
1401 system as Privoxy, you just have to uncomment the line:
1405 # forward-socks4a / 127.0.0.1:9050 .
1409 This is enough to reach the internet, but additionally you should
1410 uncomment the following forward rules, to make sure your local network is still
1411 reachable through Privoxy:
1415 # forward 192.168.*.*/ .
1416 # forward 10.*.*.*/ .
1417 # forward 127.*.*.*/ .
1421 Unencrypted connections to systems in these address ranges will
1422 be as (un)secure as the local network is, but the alternative is
1423 that you can't reach the network at all.
1424 If you also want to be able to reach servers in your local
1425 network by using their names, you will need additional
1426 exceptions that look like this:
1430 # forward localhost/ .
1434 Save the modified configuration file and open
1435 <ulink url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status/</ulink>
1436 in your browser, confirm that <application>Privoxy</application> has reloaded its configuration
1437 and that there are no other forward lines, unless you know that you need them. I everything looks good,
1439 <ulink url="http://wiki.noreply.org/noreply/TheOnionRouter/TorFAQ#head-0e1cc2ac330ede8c6ad1ac0d0db0ac163b0e6143">Tor
1440 Faq 4.2</ulink> to learn how to verify that you are really using <application>Tor</application>.
1443 Afterwards, please take the time to at least skim through the rest
1444 of <application>Tor's</application> documentation. Make sure you understand
1445 what <application>Tor</application> does, why it is no replacement for
1446 application level security, and why you shouldn't use it for unencrypted logins.
1450 <sect2 renderas="sect3">
1451 <title id="sitebreak">Might some things break because header information or
1452 content is being altered?</title>
1455 Definitely. More and more sites use HTTP header content to decide what to
1456 display and how to display it. There is many ways that this can be handled,
1457 so having hard and fast rules, is tricky.
1461 <quote>User-Agent</quote> in particular is often used in this way to identify
1462 the browser, and adjust content accordingly. Changing this now (at least not
1463 further than removing the OS information) is not recommended, since so many
1464 sites do look for it. You may get undesirable results by changing this.
1468 For instance, different browsers use different encodings of Russian and Czech
1469 characters, certain web servers convert pages on-the-fly according to the
1470 User Agent header. Giving a <quote>User Agent</quote> with the wrong
1471 operating system or browser manufacturer causes some sites in these languages
1472 to be garbled; Surfers to Eastern European sites should change it to
1473 something closer. And then some page access counters work by looking at the
1474 <quote>Referer</quote> header; they may fail or break if unavailable. The
1475 weather maps of Intellicast have been blocked by their server when no
1476 <quote>Referer</quote> or cookie is provided, is another example. (But you
1477 can forge both headers without giving information away). There are
1478 many other ways things can go wrong when trying to fool a web server.
1482 Similar thoughts apply to modifying JavaScript, and, to a lesser degree,
1487 If you have problems with a site, you will have to adjust your configuration
1488 accordingly. Cookies are probably the most likely adjustment that may
1489 be required, but by no means the only one.
1495 <sect2 renderas="sect3">
1496 <title id="caching">Can <application>Privoxy</application> act as a <quote>caching</quote> proxy to
1497 speed up web browsing?</title>
1499 No, it does not have this ability at all. You want something like
1500 <ulink url="http://www.squid-cache.org/">Squid</ulink> for this. And, yes,
1501 before you ask, <application>Privoxy</application> can co-exist
1502 with other kinds of proxies like <application>Squid</application>.
1503 See the <ulink url="../user-manual/config.html#FORWARDING">forwarding
1504 chapter</ulink> in the <ulink url="../user-manual/index.html">user
1505 manual</ulink> for details.
1509 <sect2 renderas="sect3">
1510 <title id="firewall">What about as a firewall? Can <application>Privoxy</application> protect me?</title>
1512 Not in the way you mean, or in the way a true firewall can.
1513 <application>Privoxy</application> can help protect your privacy, but not
1514 protect you from intrusion attempts. It is, of course, perfectly possible
1515 and recommended to use <emphasis>both</emphasis>.
1519 <sect2 renderas="sect3">
1520 <title id="wasted">I have large empty spaces / a checkerboard pattern now where
1521 ads used to be. Why?</title>
1523 It would be technically possible eliminate the banners in a way that frees
1524 their screen estate in many cases, by doing all banner blocking with filters,
1525 i.e. eliminating the whole image references from the HTML pages instead
1526 of letting them stay in, and blocking the resulting requests for the
1530 But this would consume considerable CPU resources, would likely destroy
1531 the layout of many web pages which rely on the banners consuming a certain
1532 amount of screen space, and would fail in other cases, where the screen space
1533 is reserved e.g. by tables anyway. Also, making the banners disappear without
1534 a visual trace complicates troubleshooting.
1537 So we won't support this in the default configuration, but you can of course
1538 define appropriate filters yourself.
1542 <sect2 renderas="sect3">
1543 <title id="ssl">How can <application>Privoxy</application> filter Secure (HTTPS) URLs?</title>
1545 Since secure HTTP connections are encrypted SSL sessions between your browser
1546 and the secure site, and are meant to be reliably <emphasis>secure</emphasis>,
1547 there is little that <application>Privoxy</application> can do but hand the raw
1548 gibberish data though from one end to the other unprocessed.
1551 The only exception to this is blocking by host patterns, as the client needs
1552 to tell <application>Privoxy</application> the name of the remote server,
1553 so that <application>Privoxy</application> can establish the connection.
1554 If that name matches a host-only pattern, the connection will be blocked.
1557 As far as ad blocking is concerned, this is less of a restriction than it may
1558 seem, since ad sources are often identifiable by the host name, and often
1559 the banners to be placed in an encrypted page come unencrypted nonetheless
1560 for efficiency reasons, which exposes them to the full power of
1561 <application>Privoxy</application>'s ad blocking.
1564 <quote>Content cookies</quote> (those that are embedded in the actual HTML or
1565 JS page content, see <literal><ulink
1566 url="../user-manual/actions-file.html#FILTER-CONTENT-COOKIES">filter{content-cookies}</ulink></literal>),
1567 in an SSL transaction will be impossible to block under these conditions.
1568 Fortunately, this does not seem to be a very common scenario since most
1569 cookies come by traditional means.
1574 <sect2 renderas="sect3">
1575 <title id="secure"><application>Privoxy</application> runs as a <quote>server</quote>. How
1576 secure is it? Do I need to take any special precautions?</title>
1578 There are no known exploits that might affect
1579 <application>Privoxy</application>. On Unix-like systems,
1580 <application>Privoxy</application> can run as a non-privileged
1581 user, which is how we recommend it be run. Also, by default
1582 <application>Privoxy</application> only listens to requests
1583 from <quote>localhost</quote> only. The server aspect of
1584 <application>Privoxy</application> is not itself directly exposed to the
1585 Internet in this configuration. If you want to have
1586 <application>Privoxy</application> serve as a LAN proxy, this will have to
1587 be opened up to allow for LAN requests. In this case, we'd recommend
1588 you specify only the LAN gateway address, e.g. 192.168.1.1, in the main
1589 <application>Privoxy</application> configuration file and check all <ulink
1590 url="../user-manual/config.html#ACCESS-CONTROL">access control and security
1591 options</ulink>. All LAN hosts can then use this as their proxy address
1592 in the browser proxy configuration, but <application>Privoxy</application>
1593 will not listen on any external interfaces. ACLs can be defined in addition,
1594 and using a firewall is always good too. Better safe than sorry.
1599 <sect2 renderas="sect3" id="turnoff">
1600 <title>How can I temporarily disable <application>Privoxy</application>?</title>
1602 The easiest way is to access <application>Privoxy</application> with your
1603 browser by using the remote toggle URL: <ulink
1604 url="http://config.privoxy.org/toggle">http://config.privoxy.org/toggle</ulink>.
1605 See the <ulink url="../user-manual/appendix.html#BOOKMARKLETS">Bookmarklets section</ulink>
1606 of the <citetitle>User Manual</citetitle> for an easy way to access this
1611 <sect2 renderas="sect3" id="reallyoff">
1612 <title>When <quote>disabled</quote> is <application>Privoxy</application> totally
1613 out of the picture?</title>
1615 No, this just means all filtering and actions are disabled.
1616 <application>Privoxy</application> is still acting as a proxy, but just not
1617 doing any of the things that <application>Privoxy</application> would
1618 normally be expected to do. It is still a <quote>middle-man</quote> in
1619 the interaction between your browser and web sites.
1623 <sect2 renderas="sect3" id="crunch">
1624 <title>My logs show <application>Privoxy</application> <quote>crunches</quote>
1625 ads, but also its own internal CGI pages. What is a <quote>crunch</quote>?</title>
1627 A <quote>crunch</quote> simply means <application>Privoxy</application> intercepted
1628 <emphasis>something</emphasis>, nothing more. Often this is indeed ads or
1629 banners, but <application>Privoxy</application> uses the same mechanism for
1630 trapping requests for its own internal pages. For instance, a request for
1631 <application>Privoxy's</application> configuration page at: <ulink
1632 url="http://config.privoxy.org">http://config.privoxy.org</ulink>, is
1633 intercepted (i.e. it does not go out to the 'net), and the familiar CGI
1634 configuration is returned to the browser, and the log consequently will show
1635 a <quote>crunch</quote>.
1639 <sect2 renderas="sect3" id="downloads">
1640 <title>Can <application>Privoxy</application> effect files that I download
1641 from a webserver? FTP server?</title>
1643 From the webserver's perspective, there is no difference between
1644 viewing a document (i.e. a page), and downloading a file. The same is true of
1645 <application>Privoxy</application>. If there is a match for a <literal><ulink
1646 url="../user-manual/actions-file.html#BLOCK">block</ulink></literal> pattern,
1647 it will still be blocked, and of course this is obvious.
1650 Filtering is potentially more of a concern since the results are not always
1651 so obvious, and the effects of filtering are there whether the file is simply
1652 viewed, or downloaded. And potentially whether the content is some obnoxious
1653 advertizement, or Mr. Jimmy's latest/greatest source code jewel. Of course,
1654 one of these presumably is <quote>bad</quote> content that we don't want, and
1655 the other is <quote>good</quote> content that we do want.
1656 <application>Privoxy</application> is blind to the differences, and can only
1657 distinguish <quote>good from bad</quote> by the configuration parameters
1658 <emphasis>we</emphasis> give it.
1661 <application>Privoxy</application> knows the differences in files according
1662 to the <quote>Document Type</quote> as reported by the webserver. If this is
1663 reported accurately (e.g. <quote>application/zip</quote> for a zip archive),
1664 then <application>Privoxy</application> knows to ignore these where
1665 appropriate. <application>Privoxy</application> potentially can filter HTML
1666 as well as plain text documents, subject to configuration parameters of
1667 course. Also, documents that are of an unknown type (generally assumed to be
1668 <quote>text/plain</quote>) can be filtered, as will those that might be
1669 incorrectly reported by the webserver. If such a file is a downloaded file
1670 that is intended to be saved to disk, then any content that might have been
1671 altered by filtering, will be saved too, for these (probably rare) cases.
1674 Note that versions later than 3.0.2 do NOT filter document types reported as
1675 <quote>text/plain</quote>. Prior to this, <application>Privoxy</application>
1676 did filter this document type.
1679 In short, filtering is <quote>ON</quote> if a) the Document Type as reported
1680 by the webserver is appropriate <emphasis>and</emphasis> b) the configuration
1681 allows it (or at least does not disallow it). That's it. There is no magic
1682 cookie anywhere to say this is <quote>good</quote> and this is
1683 <quote>bad</quote>. It's the configuration that let's it all happen or not.
1686 If you download text files, you probably do not want these to be filtered,
1687 particularly if the content is source code, or other critical content. Source
1688 code sometimes might be mistaken for Javascript (i.e. the kind that might
1689 open a pop-up window). It is recommended to turn off filtering for download
1690 sites (particularly if the content may be plain text files and you are using
1691 version 3.0.2 or earlier) in your <filename>user.action</filename> file. And
1692 also, for any site or page where making <emphasis>any</emphasis> changes at
1693 all to the content is to be avoided.
1696 <application>Privoxy</application> does not do FTP at all, only HTTP
1697 protocols, so please don't try.
1701 <sect2 renderas="sect3" id="downloads2">
1702 <title>I just downloaded a Perl script, and <application>Privoxy</application>
1703 altered it! Yikes, what is wrong!</title>
1709 <sect2 renderas="sect3" id="hostsfile">
1710 <title>Should I continue to use a <quote>HOSTS</quote> file for ad-blocking?</title>
1712 One time-tested technique to defeat common ads is to trick the local DNS
1713 system by giving a phony IP address for the ad generator in the local
1714 <filename>HOSTS</filename> file, typically using <literal>127.0.0.1</literal>, aka
1715 <literal>localhost</literal>. This effectively blocks the ad.
1718 There is no reason to use this technique in conjunction with
1719 <application>Privoxy</application>. <application>Privoxy</application>
1720 does essentially the same thing, much more elegantly and with much more
1721 flexibility. A large <filename>HOSTS</filename> file, in fact, not only
1722 duplicates effort, but may get in the way. It is recommended to remove
1723 such entries from your <filename>HOSTS</filename> file. If you think
1724 your hosts list is neglected by <application>Privoxy's </application>
1725 configuration, consider adding your list to your <filename>user.action</filename> file:
1732 ads.galore.example.com
1733 etc.example.com</screen>
1737 <sect2 renderas="sect3" id="seealso">
1738 <title>Where can I find more information about <application>Privoxy</application>
1739 and related issues?</title>
1740 <!-- Include seealso.sgml boilerplate: -->
1742 <!-- end boilerplate -->
1747 <ulink url="../user-manual/seealso.html">user-manual</ulink> for
1753 <sect2 renderas="sect3" id="microsuck">
1754 <title>I've noticed that Privoxy changes <quote>Microsoft</quote> to
1755 <quote>MicroSuck</quote>! Why are you manipulating my browsing?</title>
1758 We're not. The text substitutions that you are seeing are disabled
1759 in the default configuration as shipped. You have either manually
1760 activated the <quote><literal>fun</literal></quote> filter which
1761 is clearly labeled <quote>Text replacements for subversive browsing
1762 fun!</quote> or you are using an older Privoxy version and have implicitly
1763 activated it by choosing the <quote>Adventuresome</quote> profile in the
1771 <!-- ~~~~~ New section ~~~~~ -->
1773 <sect1 id="trouble">
1774 <title>Troubleshooting</title>
1776 <sect2 renderas="sect3">
1777 <title id="refused">I am getting <quote>connection refused</quote>
1778 with every web page?</title>
1780 Either <application>Privoxy</application> is not running, or your
1781 browser is configured for a different port than what
1782 <application>Privoxy</application> is using.
1786 Early <application>Privoxy</application> 2.x versions (and also
1787 <application>Junkbuster</application>) used port 8000 by
1788 default. This has been changed to port 8118 now, due to a conflict
1789 with NAS (Network Audio Service), which uses port 8000. If you haven't,
1790 you need to change your browser to the new port number, or alternately
1792 url="../user-manual/config.html#LISTEN-ADDRESS"><literal>listen-address</literal>
1793 option</ulink> in <application>Privoxy's</application> <ulink
1794 url="../user-manual/config.html">main configuration file</ulink>.
1799 <sect2 renderas="sect3">
1800 <title id="flushit">I just added a new rule, but the steenkin ad is
1801 still getting through. How?</title>
1803 If the ad had been displayed before you added its URL, it will probably be
1804 held in the browser's cache for some time, so it will be displayed without
1805 the need for any request to the server, and <application>Privoxy</application>
1806 will not be in the picture. The best thing to do is try flushing the browser's
1807 caches. And then try again.
1811 If this doesn't help, you probably have an error in the rule you
1812 applied. Try pasting the full URL of the offending ad into <ulink
1813 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1814 and see if it really matches your new rule. Blocking ads is like blocking
1815 spam: a lot of tinkering is required to stay ahead of the game.
1820 <sect2 id="badsite" renderas="sect3">
1821 <title >One of my favorite sites does not work with <application>Privoxy</application>.
1822 What can I do?</title>
1825 First verify that it is indeed a <application>Privoxy</application> problem,
1826 by toggling off <application>Privoxy</application> through <ulink
1827 url="http://config.privoxy.org/toggle">http://config.privoxy.org/toggle</ulink>,
1828 and then shift-reloading the problem page (i.e. holding down the shift key
1829 while clicking reload. Alternatively, flush your browser's disk and memory
1834 If still a problem, go to <ulink
1835 url="http://config.privoxy.org/show-url-info">http://config.privoxy.org/show-url-info</ulink>
1836 and paste the full URL of the page in question into the prompt. See which actions
1837 are being applied to the URL, and which matches in which actions files are
1838 responsible for that. Now, armed with this information, go to <ulink
1839 url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>
1840 and select the appropriate actions files for editing.
1843 You can now either look for a section which disables the actions that
1844 you suspect to cause the problem and add a pattern for your site there,
1845 or make up a completely new section for your site. In any case, the recommended
1846 way is to disable only the prime suspect, reload the problem page, and only
1847 if the problem persists, disable more and more actions until you have
1848 identified the culprit. You may or may not want to turn the other actions
1849 on again. Remember to flush your browser's caches in between any such changes!
1852 Alternately, if you are comfortable with a text editor, you can accomplish
1853 the same thing by editing the appropriate actions file. Probably the easiest
1854 way to deal with such problems when editing by hand is to add your
1855 site to a <literal>{ fragile }</literal> section in <filename>user.action</filename>,
1856 which is an alias that turns off most <quote>dangerous</quote>
1857 actions, but is also likely to turn off more actions then needed, and thus lower
1858 your privacy and protection more than necessary,
1861 Troubleshooting actions is discussed in more detail in the <ulink
1862 url="../user-manual/appendix.html#ACTIONSANAT">user-manual appendix</ulink>.
1863 There is also an <ulink
1864 url="../user-manual/actions-file.html#ACT-EXAMPLES">actions tutorial</ulink>.
1870 <!-- ~~~~~ New section ~~~~~ -->
1871 <sect2 id="dun" renderas="sect3">
1872 <title>After installing <application>Privoxy</application>, I have to log in
1873 every time I start IE. What gives?</title>
1876 This is a quirk that effects the installation of
1877 <application>Privoxy</application>, in conjunction with Internet Explorer and
1878 Internet Connection Sharing on Windows 2000 and Windows XP. The symptoms may
1879 appear to be corrupted or invalid DUN settings, or passwords.
1883 When setting up an NT based Windows system with
1884 <application>Privoxy</application> you may find that things do not seem to be
1885 doing what you expect. When you set your system up you will probably have set
1886 up Internet Connection Sharing (ICS) with Dial up Networking (DUN) when
1887 logged in with administrator privileges. You will probably have made this DUN
1888 connection available to other accounts that you may have set-up on your
1889 system. E.g. Mum or Dad sets up the system and makes accounts suitably
1890 configured for the kids.
1894 When setting up <application>Privoxy</application> in this environment you
1895 will have to alter the proxy set-up of Internet Explorer (IE) for the
1896 specific DUN connection on which you wish to use
1897 <application>Privoxy</application>. When you do this the ICS DUN set-up
1898 becomes user specific. In this instance you will see no difference if you
1899 change the DUN connection under the account used to set-up the connection.
1900 However when you do this from another user you will notice that the DUN
1901 connection changes to make available to "Me only". You will also find that
1902 you have to store the password under each different user!
1906 The reason for this is that each user's set-up for IE is user specific. Each
1907 set-up DUN connection and each LAN connection in IE store the settings for
1908 each user individually. As such this enforces individual configurations
1909 rather than common ones. Hence the first time you use a DUN connection after
1910 re-booting your system it may not perform as you expect, and prompt you for
1911 the password. Just set and save the password again and all should be OK.
1915 [Thanks to Ray Griffith for this submission.]
1920 <!-- ~~~~~ New section ~~~~~ -->
1921 <sect2 id="ftp" renderas="sect3">
1922 <title>I cannot connect to any FTP sites. <application>Privoxy</application>
1923 seems to be blocking me.</title>
1925 <application>Privoxy</application> cannot act as a proxy for FTP traffic,
1926 so do not configure your browser to use <application>Privoxy</application>
1927 as an FTP proxy. The same is true for <emphasis>any protocol other than HTTP
1928 or HTTPS</emphasis>.
1931 Most browsers understand FTP as well as HTTP. If you connect to a site, with
1932 a URL like <literal>ftp://ftp.example.com</literal>, your browser is making
1933 an FTP connection, and not a HTTP connection. So while your browser may
1934 speak FTP, <application>Privoxy</application> does not, and cannot proxy
1938 To complicate matters, some systems may have a generic <quote>proxy</quote>
1939 setting, which will silently various protocols, including
1940 <emphasis>both</emphasis> HTTP and FTP proxying! So it is possible to
1941 accidentally enable FTP proxying in these cases. And of course, if this
1942 happens, <application>Privoxy</application> will indeed cause problems since
1943 it does not know FTP. Newer version will give a sane error message if a FTP
1944 connection is attempted.
1947 Will <application>Privoxy</application> ever proxy FTP traffic? Unlikely.
1948 There just is not much reason, and the work to make this happen is more than
1953 <!-- ~~~~~ New section ~~~~~ -->
1954 <sect2 id="osxie" renderas="sect3">
1955 <title>In Mac OSX, I can't configure Microsoft Internet Explorer to use
1956 <application>Privoxy</application> as the HTTP proxy.</title>
1958 Microsoft Internet Explorer (in versions like 5.1) respects system-wide
1959 network settings. In order to change the HTTP proxy, open System
1960 Preferences, and click on the Network icon. In the settings pane that
1961 comes up, click on the Proxies tab. Ensure the "Web Proxy (HTTP)" checkbox
1962 is checked and enter <literal>127.0.0.1</literal> in the entry field.
1963 Enter <literal>8118</literal> in the Port field. The next time you start
1964 IE, it should reflect these values.
1968 <!-- ~~~~~ New section ~~~~~ -->
1969 <sect2 renderas="sect3" id="osxuninstall">
1970 <title>In Mac OSX, I dragged the Privoxy folder to the trash in order to
1971 uninstall it. Now the finder tells me I don't have sufficient privileges to
1972 empty the trash.</title>
1974 Just dragging the <application>Privoxy</application> folder to the trash is
1975 not enough to delete it. <application>Privoxy</application> supplies an
1976 <application>uninstall.command</application> file that takes care of
1977 these details. Open the trash, drag the <application>uninstall.command</application>
1978 file out of the trash and double-click on it. You will be prompted for
1979 confirmation and the administration password.
1982 The trash may still appear full after this command; emptying the trash
1983 from the desktop should make it appear empty again.
1988 <!-- ~~~~~ New section ~~~~~ -->
1989 <sect2 renderas="sect3" id="osximages">
1990 <title>In Mac OSX Panther (10.3), images often fail to load and/or I
1991 experience random delays in page loading. I'm using
1992 <literal>localhost</literal> as my browser's proxy setting.</title>
1994 We believe this is due to an IPv6-related bug in OSX, but don't fully
1995 understand the issue yet. In any case, changing the proxy setting to
1996 <literal>127.0.0.1</literal> instead of <literal>localhost</literal>
1997 works around the problem.
2001 <!-- ~~~~~ New section ~~~~~ -->
2002 <sect2 renderas="sect3" id="blankpage">
2003 <title>I get a completely blank page at one site. <quote>View Source</quote>
2004 shows only: <markup><![CDATA[<html><body></body></html>]]></markup>. Without
2005 <application>Privoxy</application> the page loads fine.</title>
2007 Chances are that the site suffers from a bug in
2008 <ulink url="http://www.php.net/"><application>PHP</application></ulink>,
2009 which results in empty pages being sent if the client explicitly requests
2010 an uncompressed page, like <application>Privoxy</application> does.
2011 This bug has been fixed in PHP 4.2.3.
2014 To find out if this is in fact the source of the problem, try adding
2015 the site to a <literal>-prevent-compression</literal> section in
2016 <filename>user.action</filename>:
2019 # Make exceptions for ill-behaved sites:
2021 {-prevent-compression}
2022 .example.com</screen>
2024 If that works, you may also want to report the problem to the
2025 site's webmasters, telling them to use zlib.output_compression
2026 instead of ob_gzhandler in their PHP applications (workaround)
2027 or upgrade to PHP 4.2.3 or later (fix).
2031 <!-- ~~~~~ New section ~~~~~ -->
2032 <sect2 renderas="sect3" id="error503">
2033 <title>Why am I getting a 503 Error (WSAECONNREFUSED) on every page?</title>
2035 More than likely this is a problem with your TCP/IP networking. ZoneAlarm has
2036 been reported to cause this symptom -- even if not running. The solution is
2037 to either fight the ZA configuration, or uninstall ZoneAlarm, and then find
2038 something better behaved in its place. Other personal firewall type products
2039 may cause similar type problems if not configured correctly.
2043 <sect2 renderas="sect3" id="nohostname">
2044 <title>My logs show many <quote>Unable to get my own hostname</quote> lines.
2047 <application>Privoxy</application> tries to get the hostname of the system
2048 its running on from the IP address of the system interface it is bound to
2049 (from the <filename>config</filename> file
2050 <emphasis>listen-address</emphasis> setting). If the system cannot supply
2051 this information, <application>Privoxy</application> logs this condition.
2054 Typically, this would be considered a minor system configuration error. It is
2055 not a fatal error to <application>Privoxy</application> however, but may
2056 result in a much slower response from <application>Privoxy</application> on
2057 some platforms due to DNS timeouts.
2061 <sect2 renderas="sect3" id="inuse">
2062 <title>When I try to launch <application>Privoxy</application>, I get an
2063 error message <quote>port 8118 is already in use</quote> (or similar wording).
2066 Port 8118 is <application>Privoxy's</application> default TCP
2067 <quote>listening</quote> port. Typically this message would mean that there
2068 is already one instance of <application>Privoxy</application> running, and
2069 you are actually trying to start a second <application>Privoxy</application>
2070 on the same port, which will not work. (You can have multiple instances but
2071 they must be assigned different ports.) How and why this might happen varies
2072 from platform to platform, but you need to check your installation and
2073 start-up procedures.
2077 <sect2 renderas="sect3" id="demoronizer">
2079 Pages with UTF-8 fonts are garbled.
2082 This is caused by the <quote>demoronizer</quote> filter. You should either
2083 upgrade <application>Privoxy</application>, or at least upgrade to the most
2084 recent <filename>default.action</filename> file available from <ulink
2085 url="http://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>.
2086 Or you can simply disable the demoronizer filter.
2090 <sect2 renderas="sect3" id="demoronizer2">
2092 Why are binary files (such as images) corrupted when <application>Privoxy</application>
2096 This may also be caused by the <quote>demoronizer</quote> filter,
2097 in conjunction with a web server that is misreporting a file type. Binary
2098 files are exempted from <application>Privoxy's</application> filtering
2099 (unless the web server by mistake says the file is something else). Either
2100 upgrade <application>Privoxy</application>, or go to the most recent
2101 <filename>default.action</filename> file available from <ulink
2102 url="http://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>.
2106 <sect2 renderas="sect3" id="demoronizer3">
2108 What is the <quote>demoronizer</quote> and why is it there?
2111 The original demoronizer was a Perl script that cleaned up HTML pages which
2112 were created with certain Microsoft products. MS has used proprietary extensions
2113 to standardized font encodings (ISO 8859-1), which has caused problems for pages
2114 that are viewed with non-Microsoft products (and are expecting to see a
2115 standard set of fonts). The demoronizer corrected these errors so the pages
2116 displayed correctly. <application>Privoxy</application> borrowed from this
2117 script, introducing a filter based on the original demoronizer, which in turn could
2118 correct these errors on the fly.
2121 But this is only needed in some situations, and will cause serious problems in some
2125 If you are using Microsoft products, you do not need it. If you need to view
2126 pages with UTF-8 characters (such as Cyrillic or Chinese), then it will
2127 cause corruption of the fonts, and thus <emphasis>should not be on</emphasis>.
2130 On the other hand, if you use non-Microsoft products, and you occasionally
2131 notice wierd characters on pages, you might want to try it.
2135 <sect2 renderas="sect3" id="windowopen">
2137 Why do I keep seeing <quote>PrivoxyWindowOpen()</quote> in raw source code?
2140 <application>Privoxy</application> is attempting to disable malicious
2141 Javascript in this case, with the <literal>unsolicited-popups</literal>
2142 filter. <application>Privoxy</application> cannot tell very well
2143 <quote>good</quote> code snippets from <quote>bad</quote> code snippets.
2146 If you see this in HTML source, and the page displays without problems, then
2147 this is good, and likely some pop-up window was disabled. If you see this
2148 where it is causing a problem, such as a downloaded program source code file,
2149 then you should set an exception for this site or page such that the
2150 integrity of the page stays in tact by disabling all filtering.
2154 <sect2 renderas="sect3" id="dnserrors">
2156 I am getting too many DNS errors like <quote>404 No Such Domain</quote>. Why
2157 can't <application>Privoxy</application> do this better?
2160 There are potentially several factors here. First of all, the DNS resolution
2161 is done by the underlying operating system -- not
2162 <application>Privoxy</application> itself. <application>Privoxy</application>
2163 merely initiates the process and hands it off, and then later reports
2164 whatever the outcome was. And tries to give a coherent message if there seems
2165 to be a problem. In some cases, this might otherwise be mitigated by the
2166 browser itself which might try some work-arounds and alernate approaches (e.g
2167 adding <quote>www.</quote> to the URL). In other cases, if
2168 <application>Privoxy</application> is being chained with another proxy, this
2169 could complicate the issue, and cause undue
2170 delays and timeouts. In the case of a <quote>socks4a</quote> proxy, the socks
2171 server handles all the DNS. <application>Privoxy</application> would just be
2172 the <quote>messenger</quote> which is reporting whatever problem occurred
2173 downstream, and not the root cause of the error.
2176 In any case, v. 3.0.4 includes various improvements to help
2177 <application>Privoxy</application> better handle these cases.
2181 <sect2 renderas="sect3" id="allcpu">
2183 At one site <application>Privoxy</application> just hangs, and starts taking
2184 all CPU. Why is this?
2187 This is probably a manifestation of the <quote>100% cpu</quote> problem that
2188 occurs on pages containing many (thousands upon thousands) of blank lines. The blank lines
2189 are in the raw HTML source of the page, and the browser just ignores them. But the
2190 pattern matching in <application>Privoxy's</application> page filtering
2191 mechanism is trying to match against absurdly long strings and this becomes
2192 very CPU-intensive, taking a long, long time to complete. Until a better
2193 solution comes along, disable filtering on these pages, particularly the
2194 <literal>js-annoyances</literal> and <literal>unsolicited-popups</literal>
2203 <!-- ~~~~~ New section ~~~~~ -->
2204 <sect1 id="contact"><title>Contacting the developers, Bug Reporting and Feature Requests</title>
2205 <!-- Include contacting.sgml -->
2207 <!-- end contacting -->
2210 <!-- ~~~~~ New section ~~~~~ -->
2211 <sect1 id="copyright"><title>Privoxy Copyright, License and History</title>
2213 <!-- Include copyright.sgml -->
2219 Portions of this document are <quote>borrowed</quote> from the original
2220 <application>Junkbuster</application> (tm) FAQ, and modified as
2221 appropriate for <application>Privoxy</application>.
2224 <!-- ~~~~~ New section ~~~~~ -->
2225 <sect2><title>License</title>
2226 <!-- Include copyright.sgml: -->
2228 <!-- end copyright -->
2230 <!-- ~ End section ~ -->
2232 <!-- ~~~~~ New section ~~~~~ -->
2233 <sect2><title>History</title>
2234 <!-- Include history.sgml -->
2240 <!-- ~ End section ~ -->
2243 <!-- ~~~~~ New section ~~~~~ -->
2245 <sect1 id="seealso"><title>See also</title>
2247 <!-- Include seealso.sgml -->
2258 Tue 09/11/01 06:38:14 PM EST: Test SGML doc by Hal Burgiss.
2260 This program is free software; you can redistribute it
2261 and/or modify it under the terms of the GNU General
2262 Public License as published by the Free Software
2263 Foundation; either version 2 of the License, or (at
2264 your option) any later version.
2266 This program is distributed in the hope that it will
2267 be useful, but WITHOUT ANY WARRANTY; without even the
2268 implied warranty of MERCHANTABILITY or FITNESS FOR A
2269 PARTICULAR PURPOSE. See the GNU General Public
2270 License for more details.
2272 The GNU General Public License should be included with
2273 this file. If not, you can view it at
2274 http://www.gnu.org/copyleft/gpl.html
2275 or write to the Free Software Foundation, Inc., 59
2276 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2279 Revision 2.14 2006/09/05 13:25:12 david__schmidt
2280 Add Windows service invocation stuff (duplicated) in FAQ and in user manual under Windows startup. One probably ought to reference the other.
2282 Revision 2.13 2006/09/04 19:20:33 fabiankeil
2283 Adjusted anonymity related sections to match reality.
2284 Added a section about using Privoxy with Tor.
2286 Revision 2.12 2006/09/03 14:15:30 hal9
2287 Various updates, including 7 or 8 new FAQs, and updates/changes to various
2288 other ones to better reflect improvements, additions and changes for the
2289 upcoming release. This is close to final form for 3.0.4 IMHO.
2291 Revision 2.11 2006/07/18 14:48:50 david__schmidt
2292 Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch)
2293 with what was really the latest development (the v_3_0_branch branch)
2295 Revision 1.61.2.41 2004/04/05 13:44:05 oes
2296 Fixed allow-all-cookies alias name; closes SR #929746
2298 Revision 1.61.2.40 2004/01/30 17:00:33 oes
2299 Added OSX Panther problem
2301 Revision 1.61.2.39 2004/01/29 22:53:08 hal9
2302 Minor changes for exempting docs of text/plain. Change copyright date.
2304 Revision 1.61.2.38 2003/12/10 03:39:45 hal9
2305 Added FAQs for: demoronizer, related problems and why its included. Also,
2306 port 8118 already in use questions, and PrivoxyWindowOpen() questions. All in
2307 troubleshooting section.
2309 Revision 1.61.2.37 2003/10/17 11:01:50 oes
2310 Added Q&A for "not being used" page problem
2312 Revision 1.61.2.36 2003/06/26 23:49:20 hal9
2313 More on the filter/source code problem.
2315 Revision 1.61.2.35 2003/06/26 13:38:08 hal9
2316 Add FAQ on whether configuring Privoxy is necessary or not.
2318 Revision 1.61.2.34 2003/06/26 03:00:03 hal9
2319 Sorry, found another copyright date.
2321 Revision 1.61.2.33 2003/06/26 02:57:05 hal9
2322 Fix typo (finally!) and very minor modifications.
2324 Revision 1.61.2.32 2003/06/26 02:52:04 hal9
2327 Revision 1.61.2.31 2003/06/25 01:27:51 hal9
2328 Fix copyright, and a few nits.
2330 Revision 1.61.2.30 2003/06/25 01:13:52 hal9
2333 - FAQ on "Unable to get my own hostname"
2334 - Another one on filtering effects on text files.
2336 Revision 1.61.2.29 2003/06/15 21:32:58 hal9
2337 Add to the 4.17 (filtering effects on downloaded files).
2339 Revision 1.61.2.28 2003/03/18 19:37:21 oes
2340 s/Advanced|Radical/Adventuresome/g to avoid complaints re fun filter
2342 Revision 1.61.2.27 2002/12/01 06:31:58 hal9
2343 Add faq on win32 error 503 due to ZoneAlarm.
2345 Revision 1.61.2.26 2002/11/17 06:41:06 hal9
2346 Move default profiles table from FAQ to U-M, and other minor related changes.
2349 Revision 1.61.2.25 2002/10/29 03:21:50 hal9
2350 Add 3 Q/A's relating to HTML in email. Other minor touchups.
2352 Revision 1.61.2.24 2002/10/15 12:50:22 oes
2353 s/Advanced/Radical/ (stupid me)
2355 Revision 1.61.2.23 2002/10/15 12:38:56 oes
2356 Added Microsuck faq; more detail for PHP problem
2358 Revision 1.61.2.22 2002/10/12 01:13:13 hal9
2359 Updates for demoronizer, more commentary on Radical profile, and update on
2360 the srvany.exe/icon fix.
2362 Revision 1.61.2.21 2002/10/10 04:09:35 hal9
2363 s/Advanced/Radical/ and added very brief note.
2365 Revision 1.61.2.20 2002/09/26 01:22:45 hal9
2366 Small additions for LAN setup, content-cookies/SSL, and FTP non-support.
2368 Revision 1.61.2.19 2002/08/25 23:31:56 hal9
2369 Fix one grammatical error. Add brief FAQ relating to tranparent proxies (ie
2370 port 80 setting). Add FAQ on effects of Privoxy on downloaded files
2371 (especially filtering).
2373 Revision 1.61.2.18 2002/08/14 16:39:37 hal9
2374 Fix wrong tag on FAQ addition.
2376 Revision 1.61.2.17 2002/08/14 00:01:18 hal9
2379 Revision 1.61.2.16 2002/08/13 00:10:38 hal9
2380 Add faq to troubleshooting re: blank page syndrome, ie {-prevent-compression}.
2382 Revision 1.61.2.15 2002/08/10 11:34:22 oes
2383 Add disclaimer about probably being out-of-date
2385 Revision 1.61.2.14 2002/08/07 02:53:43 hal9
2386 Fix some minor markup errors, and move one OSX Q/A to troubleshooting section.
2388 Revision 1.61.2.13 2002/08/06 11:55:32 oes
2389 Added missing close tag
2391 Revision 1.61.2.12 2002/08/06 11:43:46 david__schmidt
2392 Updated OSX uninstall FAQ... we have an uninstall script now.
2394 Revision 1.61.2.11 2002/08/06 08:54:03 oes
2395 Style police: Fixed formatting details
2397 Revision 1.61.2.10 2002/08/02 14:00:25 david__schmidt
2398 Made the OSX removal commands far less dangerous
2400 Revision 1.61.2.9 2002/08/02 13:14:45 oes
2401 Added warning about sudo rm -r for Mac OSX deinstallation; moved this item to install section
2403 Revision 1.61.2.8 2002/08/02 02:01:42 david__schmidt
2404 Add FAQ item for MSIE on OSX HTTP proxy confusion
2406 Revision 1.61.2.7 2002/08/02 01:46:01 david__schmidt
2407 Added FAQ item for Mac OSX uninstall woes
2409 Revision 1.61.2.6 2002/07/30 20:04:56 hal9
2410 Fix typo: 'schould'.
2412 Revision 1.61.2.5 2002/07/26 15:22:58 oes
2413 - Updated to reflect changes in standard.action
2414 - Added info on where to get updated actions files
2416 Revision 1.61.2.4 2002/07/25 21:42:29 hal9
2417 Add brief notes on not proxying non-HTTP protocols.
2419 Revision 1.61.2.3 2002/06/09 16:36:33 hal9
2420 Clarifications on filtering and MIME. Hardcode 'latest release' in index.html.
2422 Revision 1.61.2.2 2002/06/06 02:51:34 hal9
2423 Fix typo in URL http:/config.privoxy.org
2425 Revision 1.61.2.1 2002/06/05 23:10:43 hal9
2426 Add new FAQ re: DUN/IE. Change release date from May to June :)
2428 Revision 1.61 2002/05/25 12:37:25 hal9
2429 Various minor changes and edits.
2431 Revision 1.60 2002/05/22 17:17:48 oes
2432 Proofread & added more links into u-m
2434 Revision 1.59 2002/05/15 04:03:30 hal9
2435 Fix ulink -> link markup.
2437 Revision 1.58 2002/05/10 01:48:20 hal9
2438 This is mostly proposed copyright/licensing additions and changes. Docs
2439 are still GPL, but licensing and copyright are more visible. Also, copyright
2440 changed in doc header comments (eliminate references to JB except FAQ).
2442 Revision 1.57 2002/05/05 20:26:02 hal9
2443 Sorting out license vs copyright in these docs.
2445 Revision 1.56 2002/05/04 08:44:44 swa
2448 Revision 1.55 2002/05/04 00:41:56 hal9
2449 -Remove TOC/first page kludge in favor of proper handling via dsl file.
2451 Revision 1.54 2002/05/03 05:06:44 hal9
2452 Add brief Q/A on transparent proxies.
2454 Revision 1.53 2002/05/03 01:34:52 hal9
2455 Fix section numbering for new sections (due to TOC kludge).
2457 Revision 1.52 2002/04/29 03:08:43 hal9
2458 -Added new Q/A on new actions file set up (pointer to u-m)
2459 -Fixed a few broken links and converted old actions as a result of
2462 Revision 1.51 2002/04/26 17:24:31 swa
2463 bookmarks cleaned, changed structure of user manual, screen and programlisting cleanups, and numerous other changes that I forgot
2465 Revision 1.50 2002/04/26 05:25:23 hal9
2466 Mass commit to catch a few scattered fixes.
2468 Revision 1.49 2002/04/12 10:10:18 swa
2471 Revision 1.48 2002/04/10 18:45:15 swa
2474 Revision 1.47 2002/04/10 04:05:32 hal9
2477 Revision 1.45 2002/04/08 22:59:26 hal9
2478 Version update. Spell chkconfig correctly :)
2480 Revision 1.44 2002/04/07 21:24:29 hal9
2481 Touch up on name change.
2483 Revision 1.43 2002/04/04 21:59:53 hal9
2484 Added NT/W2K service/icon situation.
2486 Revision 1.42 2002/04/04 18:46:47 swa
2487 consistent look. reuse of copyright, history et. al.
2489 Revision 1.41 2002/04/04 06:48:37 hal9
2490 Structural changes to allow for conditional inclusion/exclusion of content
2491 based on entity toggles, e.g. 'entity % p-not-stable "INCLUDE"'. And
2492 definition of internal entities, e.g. 'entity p-version "2.9.13"' that will
2493 eventually be set by Makefile.
2494 More boilerplate text for use across multiple docs.
2496 Revision 1.40 2002/04/03 04:22:03 hal9
2497 Fixed several typos.
2499 Revision 1.39 2002/04/03 03:53:03 hal9
2500 Revert some changes, and then make some news, to layout, and appearance.
2502 Revision 1.38 2002/04/02 03:49:10 hal9
2503 Major changes to doc structure and layout. Sections are not automatically
2504 numbered now. TOC is on page by itself.
2506 Revision 1.37 2002/04/01 16:24:07 hal9
2507 -Rework of supported Q/A.
2508 -Set up entities to include boilerplate text.
2510 Revision 1.36 2002/03/31 23:18:47 hal9
2511 More on dealing with BLOCKED.
2513 Revision 1.35 2002/03/30 04:14:19 hal9
2514 Fix privoxy.org/config links.
2516 Revision 1.34 2002/03/29 04:35:56 hal9
2519 Revision 1.33 2002/03/29 01:31:48 hal9
2520 Several new Q/A's and other touch ups.
2522 Revision 1.32 2002/03/27 00:57:03 hal9
2523 Touch ups for name change.
2525 Revision 1.31 2002/03/26 22:29:55 swa
2526 we have a new homepage!
2528 Revision 1.30 2002/03/25 16:39:22 hal9
2529 A few new sections. Made all links relative to user-manual.
2531 Revision 1.29 2002/03/25 05:23:57 hal9
2532 Moved section, and touch ups.
2534 Revision 1.28 2002/03/25 04:27:33 hal9
2535 New section related to name change.
2537 Revision 1.25 2002/03/24 16:08:08 swa
2538 we are too lazy to make a block-built
2539 privoxy logo. hence removed the option.
2541 Revision 1.24 2002/03/24 15:46:20 swa
2542 name change related issue.
2544 Revision 1.23 2002/03/24 12:33:01 swa
2547 Revision 1.22 2002/03/24 11:51:00 swa
2548 name change. changed filenames.
2550 Revision 1.21 2002/03/24 11:01:06 swa
2553 Revision 1.20 2002/03/23 15:13:11 swa
2554 renamed every reference to the old name with foobar.
2555 fixed "application foobar application" tag, fixed
2556 "the foobar" with "foobar". left junkbustser in cvs
2557 comments and remarks to history untouched.
2559 Revision 1.19 2002/03/21 17:01:54 hal9
2562 Revision 1.18 2002/03/18 16:40:31 hal9
2565 Revision 1.17 2002/03/18 03:53:53 hal9
2568 Revision 1.16 2002/03/17 21:32:56 hal9
2569 A few more additions.
2571 Revision 1.15 2002/03/17 07:25:59 hal9
2572 Correcting some of my typos, and some additions.
2574 Revision 1.14 2002/03/17 02:39:13 hal9
2575 A little more added ...
2577 Revision 1.13 2002/03/17 00:22:20 hal9
2578 Adding new stuff, and trying to incorporate stuff from old faq.
2580 Revision 1.12 2002/03/11 20:13:21 swa
2583 Revision 1.11 2002/03/11 18:42:27 swa
2586 Revision 1.10 2002/03/11 13:13:27 swa
2587 correct feedback channels
2589 Revision 1.9 2002/03/10 23:34:04 swa
2590 more info on not hiding ip address
2592 Revision 1.8 2002/03/09 15:55:48 swa
2593 added default config section
2595 Revision 1.7 2002/03/07 18:16:55 swa
2598 Revision 1.6 2002/03/07 13:16:31 oes
2599 Committing changes by Stefan
2601 Revision 1.5 2002/03/02 15:50:04 swa
2602 2.9.11 version. more input for docs.
2604 Revision 1.4 2002/02/24 14:34:24 jongfoster
2605 Formatting changes. Now changing the doctype to DocBook XML 4.1
2606 will work - no other changes are needed.
2608 Revision 1.3 2001/09/23 10:13:48 swa
2609 upload process established. run make webserver and
2610 the documentation is moved to the webserver. documents
2611 are now linked correctly.
2613 Revision 1.2 2001/09/13 15:20:17 swa
2614 merged standards into developer manual
2616 Revision 1.1 2001/09/12 15:36:41 swa
2617 source files for junkbuster documentation
2619 Revision 1.3 2001/09/10 17:43:59 swa
2620 first proposal of a structure.
2622 Revision 1.2 2001/06/13 14:28:31 swa
2623 docs should have an author.
2625 Revision 1.1 2001/06/13 14:20:37 swa
2626 first import of project's documentation for the webserver.