1797 lines
38 KiB
HTML
1797 lines
38 KiB
HTML
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
|
||
|
<HTML
|
||
|
><HEAD
|
||
|
><TITLE
|
||
|
>Configuration</TITLE
|
||
|
><META
|
||
|
NAME="GENERATOR"
|
||
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
|
||
|
REL="HOME"
|
||
|
TITLE="Privoxy Frequently Asked Questions"
|
||
|
HREF="index.html"><LINK
|
||
|
REL="PREVIOUS"
|
||
|
TITLE="Installation"
|
||
|
HREF="installation.html"><LINK
|
||
|
REL="NEXT"
|
||
|
TITLE="Miscellaneous"
|
||
|
HREF="misc.html"><LINK
|
||
|
REL="STYLESHEET"
|
||
|
TYPE="text/css"
|
||
|
HREF="../p_doc.css"><META
|
||
|
HTTP-EQUIV="Content-Type"
|
||
|
CONTENT="text/html;
|
||
|
charset=ISO-8859-1"></HEAD
|
||
|
><BODY
|
||
|
CLASS="SECT1"
|
||
|
BGCOLOR="#EEEEEE"
|
||
|
TEXT="#000000"
|
||
|
LINK="#0000FF"
|
||
|
VLINK="#840084"
|
||
|
ALINK="#0000FF"
|
||
|
><DIV
|
||
|
CLASS="NAVHEADER"
|
||
|
><TABLE
|
||
|
SUMMARY="Header navigation table"
|
||
|
WIDTH="100%"
|
||
|
BORDER="0"
|
||
|
CELLPADDING="0"
|
||
|
CELLSPACING="0"
|
||
|
><TR
|
||
|
><TH
|
||
|
COLSPAN="3"
|
||
|
ALIGN="center"
|
||
|
>Privoxy Frequently Asked Questions</TH
|
||
|
></TR
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="10%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="bottom"
|
||
|
><A
|
||
|
HREF="installation.html"
|
||
|
ACCESSKEY="P"
|
||
|
>Prev</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="80%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="bottom"
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="10%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="bottom"
|
||
|
><A
|
||
|
HREF="misc.html"
|
||
|
ACCESSKEY="N"
|
||
|
>Next</A
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
><HR
|
||
|
ALIGN="LEFT"
|
||
|
WIDTH="100%"></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT1"
|
||
|
><H1
|
||
|
CLASS="SECT1"
|
||
|
><A
|
||
|
NAME="CONFIGURATION"
|
||
|
>3. Configuration</A
|
||
|
></H1
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN354"
|
||
|
>3.1. What exactly is an <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"actions"</SPAN
|
||
|
> file?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> utilizes the concept of <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>" <A
|
||
|
HREF="../user-manual/actions-file.html#ACTIONS"
|
||
|
TARGET="_top"
|
||
|
>actions</A
|
||
|
>"</SPAN
|
||
|
>
|
||
|
that are used to manipulate and control web page data.
|
||
|
<A
|
||
|
HREF="../user-manual/actions-file.html"
|
||
|
TARGET="_top"
|
||
|
>Actions files</A
|
||
|
>
|
||
|
are where these <A
|
||
|
HREF="../user-manual/actions-file.html#ACTIONS"
|
||
|
TARGET="_top"
|
||
|
>actions</A
|
||
|
>
|
||
|
that <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> could take while processing a certain
|
||
|
request, are configured. Typically, you would define a set of default actions
|
||
|
that apply globally to all URLs, then add exceptions to these defaults where needed.
|
||
|
There is a wide array of actions available that give the user a high degree
|
||
|
of control and flexibility on how to process each and every web page.</P
|
||
|
><P
|
||
|
> Actions can be defined on a <A
|
||
|
HREF="../user-manual/actions-file.html#AF-PATTERNS"
|
||
|
TARGET="_top"
|
||
|
>URL pattern</A
|
||
|
> basis, i.e.
|
||
|
for single URLs, whole web sites, groups or parts thereof etc. Actions can also be
|
||
|
grouped together and then applied to requests matching one or more patterns.
|
||
|
There are many possible actions that might apply to any given site. As an example,
|
||
|
if you are blocking <A
|
||
|
HREF="http://en.wikipedia.org/wiki/Browser_cookie"
|
||
|
TARGET="_top"
|
||
|
>cookies</A
|
||
|
>
|
||
|
as one of your default actions, but need to accept cookies from a given site,
|
||
|
you would need to define an exception for this site in one of your actions
|
||
|
files, preferably in <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="ACTIONSS"
|
||
|
>3.2. The <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"actions"</SPAN
|
||
|
> concept confuses me. Please list
|
||
|
some of these <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"actions"</SPAN
|
||
|
>.</A
|
||
|
></H3
|
||
|
><P
|
||
|
> For a comprehensive discussion of the actions concept, please refer
|
||
|
to the <A
|
||
|
HREF="../user-manual/actions-file.html"
|
||
|
TARGET="_top"
|
||
|
>actions file
|
||
|
chapter</A
|
||
|
> in the <A
|
||
|
HREF="../user-manual/index.html"
|
||
|
TARGET="_top"
|
||
|
>User
|
||
|
Manual</A
|
||
|
>. It includes a <A
|
||
|
HREF="../user-manual/actions-file.html#ACTIONS"
|
||
|
TARGET="_top"
|
||
|
>list of all actions</A
|
||
|
>
|
||
|
and an <A
|
||
|
HREF="../user-manual/actions-file.html#ACT-EXAMPLES"
|
||
|
TARGET="_top"
|
||
|
>actions
|
||
|
file tutorial</A
|
||
|
> to get you started.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN377"
|
||
|
>3.3. How are actions files configured? What is the easiest
|
||
|
way to do this?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Actions files are just text files in a special syntax and can be edited
|
||
|
with a text editor. But probably the easiest way is to access
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>'s user interface with your web browser
|
||
|
at <A
|
||
|
HREF="http://config.privoxy.org/"
|
||
|
TARGET="_top"
|
||
|
>http://config.privoxy.org/</A
|
||
|
>
|
||
|
(Shortcut: <A
|
||
|
HREF="http://p.p/"
|
||
|
TARGET="_top"
|
||
|
>http://p.p/</A
|
||
|
>) and then select
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"<A
|
||
|
HREF="http://config.privoxy.org/show-status"
|
||
|
TARGET="_top"
|
||
|
>View &
|
||
|
change the current configuration</A
|
||
|
>"</SPAN
|
||
|
> from the menu. Note
|
||
|
that this feature must be explicitly enabled in the main config file
|
||
|
(see <A
|
||
|
HREF="../user-manual/config.html#ENABLE-EDIT-ACTIONS"
|
||
|
TARGET="_top"
|
||
|
>enable-edit-actions</A
|
||
|
>).</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN386"
|
||
|
>3.4. There are several different <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"actions"</SPAN
|
||
|
> files. What are
|
||
|
the differences?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Three actions files
|
||
|
are being included by the developers, to be used for
|
||
|
different purposes: These are
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.action</TT
|
||
|
>, the <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"main"</SPAN
|
||
|
> actions file
|
||
|
which is actively maintained by the <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>
|
||
|
developers and typically sets the default policies, <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
>,
|
||
|
where users are encouraged to make their private customizations.
|
||
|
Please see <A
|
||
|
HREF="../user-manual/actions-file.html"
|
||
|
TARGET="_top"
|
||
|
>the actions chapter</A
|
||
|
>
|
||
|
in the <A
|
||
|
HREF="../user-manual/index.html"
|
||
|
TARGET="_top"
|
||
|
>User Manual</A
|
||
|
> for a more
|
||
|
detailed explanation.</P
|
||
|
><P
|
||
|
> Earlier versions included three different versions of the
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.action</TT
|
||
|
> file. The new scheme allows for
|
||
|
greater flexibility of local configuration, and for browser based
|
||
|
selection of pre-defined <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"aggressiveness"</SPAN
|
||
|
> levels.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="GETUPDATES"
|
||
|
>3.5. Where can I get updated Actions Files?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Based on your feedback and the continuing development, updates of
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.action</TT
|
||
|
> will be
|
||
|
made available from time to time on the <A
|
||
|
HREF="http://sourceforge.net/project/showfiles.php?group_id=11118"
|
||
|
TARGET="_top"
|
||
|
>files section</A
|
||
|
> of
|
||
|
our <A
|
||
|
HREF="http://sf.net/projects/ijbswa/"
|
||
|
TARGET="_top"
|
||
|
>project page</A
|
||
|
>.
|
||
|
</P
|
||
|
><P
|
||
|
> If you wish to receive an email notification whenever we release updates of
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> or the actions file, <A
|
||
|
HREF="http://lists.sourceforge.net/lists/listinfo/ijbswa-announce/"
|
||
|
TARGET="_top"
|
||
|
>subscribe
|
||
|
to our announce mailing list</A
|
||
|
>, ijbswa-announce@lists.sourceforge.net.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="NEWCONFIG"
|
||
|
>3.6. Can I use my old config files?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> The syntax and purpose of configuration files has remained roughly the
|
||
|
same throughout the 3.x series, but backwards compatibility is not guaranteed.
|
||
|
Also each release contains updated, <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"improved"</SPAN
|
||
|
> versions and it is
|
||
|
therefore strongly recommended to install the newer configuration files
|
||
|
and merge back your modifications.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="DIFFICULT"
|
||
|
>3.7. Why is the configuration so complicated?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Complicated"</SPAN
|
||
|
> is in the eye of the beholder. Those that are
|
||
|
familiar with some of the underlying concepts, such as regular expression
|
||
|
syntax, take to it like a fish takes to water. Also, software that tries
|
||
|
hard to be <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"user friendly"</SPAN
|
||
|
>, often lacks sophistication and
|
||
|
flexibility. There is always that trade-off there between power vs.
|
||
|
easy-of-use. Furthermore, anyone is welcome to contribute ideas and
|
||
|
implementations to enhance <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="YAHOO"
|
||
|
>3.8. How can I make my Yahoo/Hotmail/Gmail account work?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> The default configuration shouldn't impact the usability of any of these services.
|
||
|
It may, however, make all <A
|
||
|
HREF="http://en.wikipedia.org/wiki/Browser_cookie"
|
||
|
TARGET="_top"
|
||
|
>cookies</A
|
||
|
>
|
||
|
temporary, so that your browser will forget your
|
||
|
login credentials in between browser sessions. If you would like not to have to log
|
||
|
in manually each time you access those websites, simply turn off all cookie handling
|
||
|
for them in the <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
> file. An example for yahoo might
|
||
|
look like:
|
||
|
</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
># Allow all cookies for Yahoo login:
|
||
|
#
|
||
|
{ -<A
|
||
|
HREF="../user-manual/actions-file.html#CRUNCH-INCOMING-COOKIES"
|
||
|
TARGET="_top"
|
||
|
>crunch-incoming-cookies</A
|
||
|
> -<A
|
||
|
HREF="../user-manual/actions-file.html#CRUNCH-OUTGOING-COOKIES"
|
||
|
TARGET="_top"
|
||
|
>crunch-outgoing-cookies</A
|
||
|
> -<A
|
||
|
HREF="../user-manual/actions-file.html#SESSION-COOKIES-ONLY"
|
||
|
TARGET="_top"
|
||
|
>session-cookies-only</A
|
||
|
> }
|
||
|
.login.yahoo.com</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> These kinds of sites are often quite complex and heavy with
|
||
|
<A
|
||
|
HREF="http://en.wikipedia.org/wiki/Javascript"
|
||
|
TARGET="_top"
|
||
|
>Javascript</A
|
||
|
> and
|
||
|
thus <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"fragile"</SPAN
|
||
|
>. So if <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>still</I
|
||
|
></SPAN
|
||
|
> a problem,
|
||
|
we have an <A
|
||
|
HREF="../user-manual/actions-file.html#ALIASES"
|
||
|
TARGET="_top"
|
||
|
>alias</A
|
||
|
> just for such
|
||
|
sticky situations:
|
||
|
</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
># Gmail is a _fragile_ site:
|
||
|
#
|
||
|
{ <TT
|
||
|
CLASS="LITERAL"
|
||
|
>fragile</TT
|
||
|
> }
|
||
|
# Gmail is ...
|
||
|
mail.google.com</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> Be sure to flush your browser's caches whenever making these kinds of
|
||
|
changes, just to make sure the changes <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"take"</SPAN
|
||
|
>.
|
||
|
</P
|
||
|
><P
|
||
|
> Make sure the domain, host and path are appropriate as well. Your browser can
|
||
|
tell you where you are specifically and you should use that information for
|
||
|
your configuration settings. Note that above it is not referenced as
|
||
|
<TT
|
||
|
CLASS="LITERAL"
|
||
|
>gmail.com</TT
|
||
|
>, which is a valid domain name.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="CONFIGFILES"
|
||
|
>3.9. What's the difference between the
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Cautious"</SPAN
|
||
|
>, <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Medium"</SPAN
|
||
|
> and <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Advanced"</SPAN
|
||
|
> defaults?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Configuring <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> is not entirely trivial. To
|
||
|
help you get started, we provide you with three different default action
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"profiles"</SPAN
|
||
|
> in the web based actions file editor at <A
|
||
|
HREF="http://config.privoxy.org/show-status"
|
||
|
TARGET="_top"
|
||
|
>http://config.privoxy.org/show-status</A
|
||
|
>.
|
||
|
See the <A
|
||
|
HREF="../user-manual/actions-file.html"
|
||
|
TARGET="_top"
|
||
|
><I
|
||
|
CLASS="CITETITLE"
|
||
|
>User
|
||
|
Manual</I
|
||
|
></A
|
||
|
> for a list of actions, and how the default
|
||
|
profiles are set.
|
||
|
</P
|
||
|
><P
|
||
|
> Where the defaults are likely to break some sites, exceptions for
|
||
|
known popular <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"problem"</SPAN
|
||
|
> sites are included, but in
|
||
|
general, the more aggressive your default settings are, the more exceptions
|
||
|
you will have to make later. New users are best to start off in
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Cautious"</SPAN
|
||
|
> setting. This is safest and will have the fewest
|
||
|
problems. See the <A
|
||
|
HREF="../user-manual/index.html"
|
||
|
TARGET="_top"
|
||
|
><I
|
||
|
CLASS="CITETITLE"
|
||
|
>User Manual</I
|
||
|
></A
|
||
|
>
|
||
|
for a more detailed discussion.</P
|
||
|
><P
|
||
|
> It should be noted that the <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Advanced"</SPAN
|
||
|
> profile (formerly known
|
||
|
as the <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Adventuresome"</SPAN
|
||
|
> profile) is more
|
||
|
aggressive, and will make use of some of
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy's</SPAN
|
||
|
> advanced features. Use at your own risk!</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="BROWSECONFIG"
|
||
|
>3.10. Why can I change the configuration
|
||
|
with a browser? Does that not raise security issues?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> It may seem strange that regular users can edit the config files with their
|
||
|
browsers, although the whole <TT
|
||
|
CLASS="FILENAME"
|
||
|
>/etc/privoxy</TT
|
||
|
> hierarchy
|
||
|
belongs to the user <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"privoxy"</SPAN
|
||
|
>, with only 644 permissions.
|
||
|
</P
|
||
|
><P
|
||
|
> When you use the browser-based editor, <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>
|
||
|
itself is writing to the config files. Because
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> is running as the user <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"privoxy"</SPAN
|
||
|
>,
|
||
|
it can update its own config files.
|
||
|
</P
|
||
|
><P
|
||
|
> If you run <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> for multiple untrusted users (e.g. in
|
||
|
a LAN) or aren't entirely in control of your own browser, you will probably want
|
||
|
to make sure that the the web-based editor and remote toggle features are
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"off"</SPAN
|
||
|
> by setting <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"<TT
|
||
|
CLASS="LITERAL"
|
||
|
><A
|
||
|
HREF="../user-manual/config.html#ENABLE-EDIT-ACTIONS"
|
||
|
TARGET="_top"
|
||
|
>enable-edit-actions</A
|
||
|
>
|
||
|
0</TT
|
||
|
>"</SPAN
|
||
|
> and <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"<TT
|
||
|
CLASS="LITERAL"
|
||
|
><A
|
||
|
HREF="../user-manual/config.html#ENABLE-REMOTE-TOGGLE"
|
||
|
TARGET="_top"
|
||
|
>enable-remote-toggle</A
|
||
|
>
|
||
|
0</TT
|
||
|
>"</SPAN
|
||
|
> in the <A
|
||
|
HREF="../user-manual/config.html"
|
||
|
TARGET="_top"
|
||
|
>main configuration file</A
|
||
|
>.
|
||
|
</P
|
||
|
><P
|
||
|
> As of <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> 3.0.7 these options are disabled by default.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN481"
|
||
|
>3.11. What is the <TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.filter</TT
|
||
|
> file? What is a <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"filter"</SPAN
|
||
|
>?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> The <A
|
||
|
HREF="../user-manual/filter-file.html"
|
||
|
TARGET="_top"
|
||
|
><TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.filter</TT
|
||
|
></A
|
||
|
>
|
||
|
file is where <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>filters</I
|
||
|
></SPAN
|
||
|
> as supplied by the developers are defined.
|
||
|
Filters are a special subset of actions that can be used to modify or
|
||
|
remove web page content or headers on the fly. Content filters can
|
||
|
be applied to <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>anything</I
|
||
|
></SPAN
|
||
|
> in the page source,
|
||
|
header filters can be applied to either server or client headers.
|
||
|
Regular expressions are used to accomplish this.</P
|
||
|
><P
|
||
|
> There are a number of pre-defined filters to deal with common annoyances. The
|
||
|
filters are only defined here, to invoke them, you need to use the
|
||
|
<A
|
||
|
HREF="../user-manual/actions-file.html#FILTER"
|
||
|
TARGET="_top"
|
||
|
><TT
|
||
|
CLASS="LITERAL"
|
||
|
>filter</TT
|
||
|
>
|
||
|
action</A
|
||
|
> in one of the actions files. Content filtering is automatically
|
||
|
disabled for inappropriate MIME types, but if you now better than Privoxy
|
||
|
what should or should not be filtered you can filter any content you like.</P
|
||
|
><P
|
||
|
> Filters should
|
||
|
<SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>not</I
|
||
|
></SPAN
|
||
|
> be confused with <A
|
||
|
HREF="../user-manual/actions-file.html#BLOCK"
|
||
|
TARGET="_top"
|
||
|
><TT
|
||
|
CLASS="LITERAL"
|
||
|
>blocks</TT
|
||
|
></A
|
||
|
>, which
|
||
|
is a completely different action, and is more typically used to block ads and
|
||
|
unwanted sites.</P
|
||
|
><P
|
||
|
> If you are familiar with regular expressions, and HTML, you can look at
|
||
|
the provided <TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.filter</TT
|
||
|
> with a text editor and define
|
||
|
your own filters. This is potentially a very powerful feature, but
|
||
|
requires some expertise in both regular expressions and HTML/HTTP.
|
||
|
You should
|
||
|
place any modifications to the default filters, or any new ones you create
|
||
|
in a separate file, such as <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.filter</TT
|
||
|
>, so they won't
|
||
|
be overwritten during upgrades.
|
||
|
The ability to define multiple filter files
|
||
|
in <TT
|
||
|
CLASS="FILENAME"
|
||
|
>config</TT
|
||
|
> is a new feature as of v. 3.0.5.</P
|
||
|
><P
|
||
|
> There is no GUI editor option for this part of the configuration,
|
||
|
but you can disable/enable the various pre-defined filters of the included
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.filter</TT
|
||
|
> file with the <A
|
||
|
HREF="http://config.privoxy.org/show-status"
|
||
|
TARGET="_top"
|
||
|
>web-based actions file editor</A
|
||
|
>.
|
||
|
Note that the custom actions editor must be explicitly enabled in
|
||
|
the main config file (see <A
|
||
|
HREF="../user-manual/config.html#ENABLE-EDIT-ACTIONS"
|
||
|
TARGET="_top"
|
||
|
>enable-edit-actions</A
|
||
|
>).</P
|
||
|
><P
|
||
|
> If you intend to develop your own filters, you might want to have a look at
|
||
|
<A
|
||
|
HREF="http://www.fabiankeil.de/sourcecode/pft/"
|
||
|
TARGET="_top"
|
||
|
>Privoxy-Filter-Test</A
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="LANCONFIG"
|
||
|
>3.12. How can I set up Privoxy to act as a proxy for my
|
||
|
LAN?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> By default, <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> only responds to requests
|
||
|
from <TT
|
||
|
CLASS="LITERAL"
|
||
|
>127.0.0.1</TT
|
||
|
> (localhost). To have it act as a server for
|
||
|
a network, this needs to be changed in the <A
|
||
|
HREF="../user-manual/config.html"
|
||
|
TARGET="_top"
|
||
|
>main configuration file</A
|
||
|
>. Look for
|
||
|
the <TT
|
||
|
CLASS="LITERAL"
|
||
|
><A
|
||
|
HREF="../user-manual/config.html#LISTEN-ADDRESS"
|
||
|
TARGET="_top"
|
||
|
>listen-address</A
|
||
|
></TT
|
||
|
>
|
||
|
option, which may be commented out with a <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"#"</SPAN
|
||
|
> symbol. Make sure
|
||
|
it is uncommented, and assign it the address of the LAN gateway interface,
|
||
|
and port number to use. Assuming your LAN address is 192.168.1.1 and you
|
||
|
wish to run <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> on port 8118, this line
|
||
|
should look like:</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> listen-address 192.168.1.1:8118</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></P
|
||
|
><P
|
||
|
> Save the file, and restart <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>. Configure
|
||
|
all browsers on the network then to use this address and port number.</P
|
||
|
><P
|
||
|
> Alternately, you can have <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> listen on
|
||
|
all available interfaces:</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> listen-address :8118</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></P
|
||
|
><P
|
||
|
> And then use <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy's</SPAN
|
||
|
>
|
||
|
<A
|
||
|
HREF="../user-manual/config.html#PERMIT-ACCESS"
|
||
|
TARGET="_top"
|
||
|
>permit-access</A
|
||
|
>
|
||
|
feature to limit connections. A firewall in this situation is recommended
|
||
|
as well.</P
|
||
|
><P
|
||
|
> The above steps should be the same for any TCP network, regardless of
|
||
|
operating system.</P
|
||
|
><P
|
||
|
> If you run <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> on a LAN with untrusted users,
|
||
|
we recommend that you double-check the <A
|
||
|
HREF="../user-manual/config.html#ACCESS-CONTROL"
|
||
|
TARGET="_top"
|
||
|
>access control and security</A
|
||
|
>
|
||
|
options!</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN532"
|
||
|
>3.13. Instead of ads, now I get a checkerboard pattern. I don't want to see anything.</A
|
||
|
></H3
|
||
|
><P
|
||
|
> The replacement for blocked images can be controlled with the <A
|
||
|
HREF="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"
|
||
|
TARGET="_top"
|
||
|
><TT
|
||
|
CLASS="LITERAL"
|
||
|
>set-image-blocker</TT
|
||
|
>
|
||
|
action</A
|
||
|
>. You have the choice of a checkerboard pattern, a transparent 1x1 GIF
|
||
|
image (aka <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"blank"</SPAN
|
||
|
>), or a redirect to a custom image of your choice.
|
||
|
Note that this choice only has effect for images which are blocked as images, i.e.
|
||
|
whose URLs match both a <TT
|
||
|
CLASS="LITERAL"
|
||
|
><A
|
||
|
HREF="../user-manual/actions-file.html#HANDLE-AS-IMAGE"
|
||
|
TARGET="_top"
|
||
|
>handle-as-image</A
|
||
|
></TT
|
||
|
>
|
||
|
<SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>and</I
|
||
|
></SPAN
|
||
|
> <TT
|
||
|
CLASS="LITERAL"
|
||
|
><A
|
||
|
HREF="../user-manual/actions-file.html#BLOCK"
|
||
|
TARGET="_top"
|
||
|
>block</A
|
||
|
></TT
|
||
|
> action.</P
|
||
|
><P
|
||
|
> If you want to see nothing, then change the <A
|
||
|
HREF="../user-manual/actions-file.html#SET-IMAGE-BLOCKER"
|
||
|
TARGET="_top"
|
||
|
><TT
|
||
|
CLASS="LITERAL"
|
||
|
>set-image-blocker</TT
|
||
|
>
|
||
|
action</A
|
||
|
> to <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"blank"</SPAN
|
||
|
>. This can be done by editing the
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
> file, or through the <A
|
||
|
HREF="http://config.privoxy.org/show-status"
|
||
|
TARGET="_top"
|
||
|
>web-based actions file editor</A
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN549"
|
||
|
>3.14. Why would anybody want to see a checkerboard pattern?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Remember that <A
|
||
|
HREF="general.html#WHATSANAD"
|
||
|
>telling which image is an ad and which
|
||
|
isn't</A
|
||
|
>, is an educated guess. While we hope that the standard configuration
|
||
|
is rather smart, it will make occasional mistakes. The checkerboard image is visually
|
||
|
decent, and it shows you where images have been blocked, which can be very
|
||
|
helpful in case some navigation aid or otherwise innocent image was
|
||
|
erroneously blocked. It is recommended for new users so they can
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"see"</SPAN
|
||
|
> what is happening. Some people might also enjoy seeing how
|
||
|
many banners they <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>don't</I
|
||
|
></SPAN
|
||
|
> have to see.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="AEN555"
|
||
|
>3.15. I see some images being replaced with text
|
||
|
instead of the checkerboard image. Why and how do I get rid of this?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> This happens when the banners are not embedded in the HTML code of the
|
||
|
page itself, but in separate HTML (sub)documents that are loaded into (i)frames
|
||
|
or (i)layers, and these external HTML documents are blocked. Being non-images
|
||
|
they get replaced by a substitute HTML page rather than a substitute image,
|
||
|
which wouldn't work out technically, since the browser expects and accepts
|
||
|
only HTML when it has requested an HTML document. </P
|
||
|
><P
|
||
|
> The substitute page adapts to the available space and shows itself as a
|
||
|
miniature two-liner if loaded into small frames, or full-blown with a
|
||
|
large red "BLOCKED" banner if space allows.</P
|
||
|
><P
|
||
|
> If you prefer the banners to be blocked by images, you must see to it that
|
||
|
the HTML documents in which they are embedded are not blocked. Clicking
|
||
|
the <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"See why"</SPAN
|
||
|
> link offered in the substitute page will show
|
||
|
you which rule blocked the page. After changing the rule and un-blocking
|
||
|
the HTML documents, the browser will try to load the actual banner images
|
||
|
and the usual image blocking will (hopefully!) kick in.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="SRVANY"
|
||
|
>3.16. Can Privoxy run as a service
|
||
|
on Win2K/NT/XP?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Yes. Version 3.0.5 introduces full <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Windows</SPAN
|
||
|
> service
|
||
|
functionality. See <A
|
||
|
HREF="../user-manual/installation.html#installation-pack-win"
|
||
|
TARGET="_top"
|
||
|
> the <I
|
||
|
CLASS="CITETITLE"
|
||
|
>User Manual</I
|
||
|
></A
|
||
|
> for details on how to install and configure
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> as a service.</P
|
||
|
><P
|
||
|
> Earlier 3.x versions could run as a system service using <B
|
||
|
CLASS="COMMAND"
|
||
|
>srvany.exe</B
|
||
|
>.
|
||
|
See the discussion at <A
|
||
|
HREF="http://sourceforge.net/tracker/?func=detail&atid=361118&aid=485617&group_id=11118"
|
||
|
TARGET="_top"
|
||
|
>http://sourceforge.net/tracker/?func=detail&atid=361118&aid=485617&group_id=11118</A
|
||
|
>,
|
||
|
for details, and a sample configuration.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="OTHERPROXY"
|
||
|
>3.17. How can I make Privoxy work with other
|
||
|
proxies like Squid or Tor?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> This can be done and is often useful to combine the benefits of
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> with those of a another proxy.
|
||
|
See the <A
|
||
|
HREF="../user-manual/config.html#FORWARDING"
|
||
|
TARGET="_top"
|
||
|
>forwarding chapter</A
|
||
|
>
|
||
|
in the <A
|
||
|
HREF="../user-manual/index.html"
|
||
|
TARGET="_top"
|
||
|
>User Manual</A
|
||
|
> which
|
||
|
describes how to do this, and the <A
|
||
|
HREF="misc.html#TOR"
|
||
|
> How do I use Privoxy together with
|
||
|
Tor</A
|
||
|
> section below.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="PORT-80"
|
||
|
>3.18. Can I just set Privoxy to use port 80
|
||
|
and thus avoid individual browser configuration?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> No, its more complicated than that. This only works with special kinds
|
||
|
of proxies known as <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"intercepting"</SPAN
|
||
|
> proxies (see below).</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="TRANSPARENT"
|
||
|
>3.19. Can Privoxy run as a <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"transparent"</SPAN
|
||
|
> proxy?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> The whole idea of Privoxy is to modify client requests
|
||
|
and server responses in all sorts of ways and therefore
|
||
|
it's not a transparent proxy as described in
|
||
|
<A
|
||
|
HREF="http://tools.ietf.org/html/rfc2616"
|
||
|
TARGET="_top"
|
||
|
>RFC 2616</A
|
||
|
>.</P
|
||
|
><P
|
||
|
> However, some people say <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"transparent proxy"</SPAN
|
||
|
> when they
|
||
|
mean <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"intercepting proxy"</SPAN
|
||
|
>. If you are one of them,
|
||
|
please read the <A
|
||
|
HREF="#intercepting"
|
||
|
TARGET="_top"
|
||
|
>next entry</A
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="INTERCEPTING"
|
||
|
>3.20. Can Privoxy run as a <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"intercepting"</SPAN
|
||
|
> proxy?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> can't intercept traffic itself,
|
||
|
but it can handle requests that where intercepted and redirected
|
||
|
with a packet filter (like <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>PF</SPAN
|
||
|
> or
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>iptables</SPAN
|
||
|
>), as long as the <TT
|
||
|
CLASS="LITERAL"
|
||
|
>Host</TT
|
||
|
>
|
||
|
header is present.
|
||
|
</P
|
||
|
><P
|
||
|
> As the <TT
|
||
|
CLASS="LITERAL"
|
||
|
>Host</TT
|
||
|
> header is required by HTTP/1.1 and as most
|
||
|
web sites rely on it anyway, this limitation shouldn't be a problem.</P
|
||
|
><P
|
||
|
> Please refer to your packet filter's documentation to learn how to
|
||
|
intercept and redirect traffic into <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>.
|
||
|
Afterward you just have to configure <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> to
|
||
|
<A
|
||
|
HREF="../user-manual/config.html#ACCEPT-INTERCEPTED-REQUESTS"
|
||
|
TARGET="_top"
|
||
|
>accept
|
||
|
intercepted requests</A
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="OUTLOOK"
|
||
|
>3.21. How can I configure Privoxy for use with Outlook?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Versions of <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Outlook</SPAN
|
||
|
> prior to Office 2007, use
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Internet Explorer</SPAN
|
||
|
> components to both render HTML,
|
||
|
and fetch any HTTP requests that may be embedded in an HTML email. So however
|
||
|
you have <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> configured to work with IE, this
|
||
|
configuration should automatically be shared, at least with older version of
|
||
|
Internet Explorer.</P
|
||
|
><P
|
||
|
> Starting with Office 2007, Microsoft is instead using the MS-Word rendering
|
||
|
engine with Outlook. It is unknown whether this can be configured to use a
|
||
|
proxy.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="OUTLOOK-MORE"
|
||
|
>3.22. How can I have separate rules just for HTML mail?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> The short answer is, you can't. <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> has no way
|
||
|
of knowing which particular application makes a request, so there is no way to
|
||
|
distinguish between web pages and HTML mail.
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> just blindly proxies all requests. In the
|
||
|
case of <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Outlook Express</SPAN
|
||
|
> (see above), OE uses
|
||
|
IE anyway, and there is no way for <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> to ever
|
||
|
be able to distinguish between them (nor could any other proxy type application for
|
||
|
that matter).</P
|
||
|
><P
|
||
|
> For a good discussion of some of the issues involved (including privacy and
|
||
|
security issues), see
|
||
|
<A
|
||
|
HREF="http://sourceforge.net/tracker/?func=detail&atid=211118&aid=629518&group_id=11118"
|
||
|
TARGET="_top"
|
||
|
>http://sourceforge.net/tracker/?func=detail&atid=211118&aid=629518&group_id=11118</A
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="SNEAKY-COOKIES"
|
||
|
>3.23. I sometimes notice cookies sneaking through. How?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> <A
|
||
|
HREF="http://en.wikipedia.org/wiki/Browser_cookie"
|
||
|
TARGET="_top"
|
||
|
>Cookies</A
|
||
|
> can be
|
||
|
set in several ways. The classic method is via the
|
||
|
<TT
|
||
|
CLASS="LITERAL"
|
||
|
>Set-Cookie</TT
|
||
|
> HTTP header. This is straightforward, and an
|
||
|
easy one to manipulate, such as the <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> concept of
|
||
|
<A
|
||
|
HREF="../user-manual/actions-file.html#SESSION-COOKIES-ONLY"
|
||
|
TARGET="_top"
|
||
|
>session-cookies-only</A
|
||
|
>.
|
||
|
There is also the possibility of using
|
||
|
<A
|
||
|
HREF="http://en.wikipedia.org/wiki/Javascript"
|
||
|
TARGET="_top"
|
||
|
>Javascript</A
|
||
|
> to
|
||
|
set cookies (<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> calls these <TT
|
||
|
CLASS="LITERAL"
|
||
|
>content-cookies</TT
|
||
|
>). This
|
||
|
is trickier because the syntax can vary widely, and thus requires a certain
|
||
|
amount of guesswork. It is not realistic to catch all of these short of
|
||
|
disabling Javascript, which would break many sites. And lastly, if the
|
||
|
cookies are embedded in a HTTPS/SSL secure session via Javascript, they are beyond
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy's</SPAN
|
||
|
> reach.</P
|
||
|
><P
|
||
|
> All in all, <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> can help manage cookies in general, can help minimize
|
||
|
the loss of privacy posed by cookies, but can't realistically stop all
|
||
|
cookies.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="EVIL-COOKIES"
|
||
|
>3.24. Are all cookies bad? Why?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> No, in fact there are many beneficial uses of
|
||
|
<A
|
||
|
HREF="http://en.wikipedia.org/wiki/Browser_cookie"
|
||
|
TARGET="_top"
|
||
|
>cookies</A
|
||
|
>. Cookies are just a
|
||
|
method that browsers can use to store data between pages, or between browser
|
||
|
sessions. Sometimes there is a good reason for this, and the user's life is a
|
||
|
bit easier as a result. But there is a long history of some websites taking
|
||
|
advantage of this layer of trust, and using the data they glean from you and
|
||
|
your browsing habits for their own purposes, and maybe to your potential
|
||
|
detriment. Such sites are using you and storing their data on your system.
|
||
|
That is why the privacy conscious watch from whom those cookies come, and why
|
||
|
they really <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>need</I
|
||
|
></SPAN
|
||
|
> to be there.</P
|
||
|
><P
|
||
|
> See the
|
||
|
<A
|
||
|
HREF="http://en.wikipedia.org/wiki/Browser_cookie"
|
||
|
TARGET="_top"
|
||
|
>Wikipedia cookie
|
||
|
definition</A
|
||
|
> for more.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="ALLOW-COOKIES"
|
||
|
>3.25. How can I allow permanent cookies for my trusted sites?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> There are several actions that relate to cookies. The default behavior is to
|
||
|
allow only <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"session cookies"</SPAN
|
||
|
>, which means the cookies only last
|
||
|
for the current browser session. This eliminates most kinds of abuse related
|
||
|
to cookies. But there may be cases where you want cookies to last.</P
|
||
|
><P
|
||
|
> To disable all cookie actions, so that cookies are allowed unrestricted,
|
||
|
both in and out, for <TT
|
||
|
CLASS="LITERAL"
|
||
|
>example.com</TT
|
||
|
>: </P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
|
||
|
.example.com</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></P
|
||
|
><P
|
||
|
> Place the above in <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
>. Note that some of these may
|
||
|
be off by default anyway, so this might be redundant, but there is no harm
|
||
|
being explicit in what you want to happen. <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
>
|
||
|
includes an alias for this situation, called
|
||
|
<TT
|
||
|
CLASS="LITERAL"
|
||
|
>allow-all-cookies</TT
|
||
|
>.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="MULTIPLES"
|
||
|
>3.26. Can I have separate configurations for different users?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Each instance of <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> has its own
|
||
|
configuration, including such attributes as the TCP port that it listens on.
|
||
|
What you can do is run multiple instances of <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>, each with
|
||
|
a unique
|
||
|
<A
|
||
|
HREF="../user-manual/config.html#LISTEN-ADDRESS"
|
||
|
TARGET="_top"
|
||
|
>listen-address</A
|
||
|
>
|
||
|
configuration setting, and configuration path, and then
|
||
|
each of these can have their own configurations. Think of it as per-port
|
||
|
configuration.</P
|
||
|
><P
|
||
|
>
|
||
|
Simple enough for a few users, but for large installations, consider having
|
||
|
groups of users that might share like configurations.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="WHITELISTS"
|
||
|
>3.27. Can I set-up Privoxy as a whitelist of
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"good"</SPAN
|
||
|
> sites?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Sure. There are a couple of things you can do for simple white-listing.
|
||
|
Here's one real easy one:</P
|
||
|
><TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> ############################################################
|
||
|
# Blacklist
|
||
|
############################################################
|
||
|
{ <A
|
||
|
HREF="../user-manual/actions-file.html#BLOCK"
|
||
|
TARGET="_top"
|
||
|
>+block</A
|
||
|
> }
|
||
|
/ # Block *all* URLs
|
||
|
|
||
|
############################################################
|
||
|
# Whitelist
|
||
|
############################################################
|
||
|
{ <A
|
||
|
HREF="../user-manual/actions-file.html#BLOCK"
|
||
|
TARGET="_top"
|
||
|
>-block</A
|
||
|
> }
|
||
|
kids.example.com
|
||
|
toys.example.com
|
||
|
games.example.com</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
><P
|
||
|
> This allows access to only those three sites by first blocking all URLs, and
|
||
|
then subsequently allowing three specific exceptions.</P
|
||
|
><P
|
||
|
> Another approach is <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy's</SPAN
|
||
|
>
|
||
|
<TT
|
||
|
CLASS="LITERAL"
|
||
|
>trustfile</TT
|
||
|
> concept, which incorporates the notion of
|
||
|
<SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"trusted referrers"</SPAN
|
||
|
>. See the <A
|
||
|
HREF="../user-manual/config.html#TRUSTFILE"
|
||
|
TARGET="_top"
|
||
|
>Trust documentation</A
|
||
|
>
|
||
|
for details.</P
|
||
|
><P
|
||
|
> These are fairly simple approaches and are not completely foolproof. There
|
||
|
are various other configuration options that should be disabled (described
|
||
|
elsewhere here and in <A
|
||
|
HREF="../user-manual/"
|
||
|
TARGET="_top"
|
||
|
>the User Manual</A
|
||
|
>)
|
||
|
so that users can't modify their own configuration and easily circumvent the
|
||
|
whitelist.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="NO-ADBLOCK"
|
||
|
>3.28. How can I turn off ad-blocking?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> Ad blocking is achieved through a complex application of various <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
>
|
||
|
<A
|
||
|
HREF="../user-manual/actions-file.html"
|
||
|
TARGET="_top"
|
||
|
>actions</A
|
||
|
>. These
|
||
|
actions are deployed against simple images, banners, flash animations,
|
||
|
text pages, JavaScript, pop-ups and pop-unders, etc., so its not as simple as
|
||
|
just turning one or two actions off. The various actions that make up
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> ad blocking are hard-coded into the default configuration files. It
|
||
|
has been assumed that everyone using <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> is interested in this
|
||
|
particular feature.
|
||
|
</P
|
||
|
><P
|
||
|
> If you want to do without this, there are several approaches you can take:
|
||
|
You can manually undo the many block rules in
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.action</TT
|
||
|
>. Or even easier, just create your own
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>default.action</TT
|
||
|
> file from scratch without the many ad
|
||
|
blocking rules, and corresponding exceptions. Or lastly, if you are not
|
||
|
concerned about the additional blocks that are done for privacy reasons, you
|
||
|
can very easily over-ride <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>all</I
|
||
|
></SPAN
|
||
|
> blocking with the
|
||
|
following very simple rule in your <TT
|
||
|
CLASS="FILENAME"
|
||
|
>user.action</TT
|
||
|
>:
|
||
|
</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> # Unblock everybody, everywhere
|
||
|
{ <A
|
||
|
HREF="../user-manual/actions-file.html#BLOCK"
|
||
|
TARGET="_top"
|
||
|
>-block</A
|
||
|
> }
|
||
|
/ # UN-Block *all* URLs</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></P
|
||
|
><P
|
||
|
>
|
||
|
Or even a more comprehensive reversing of various ad related actions:</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> # Unblock everybody, everywhere, and turn off appropriate filtering, etc
|
||
|
{ <A
|
||
|
HREF="../user-manual/actions-file.html#BLOCK"
|
||
|
TARGET="_top"
|
||
|
>-block</A
|
||
|
> \
|
||
|
<A
|
||
|
HREF="../user-manual/actions-file.html#FILTER-BANNERS-BY-SIZE"
|
||
|
TARGET="_top"
|
||
|
>-filter{banners-by-size}</A
|
||
|
> \
|
||
|
<A
|
||
|
HREF="../user-manual/actions-file.html#FILTER-BANNERS-BY-LINK"
|
||
|
TARGET="_top"
|
||
|
>-filter{banners-by-link}</A
|
||
|
> \
|
||
|
<TT
|
||
|
CLASS="LITERAL"
|
||
|
>allow-popups</TT
|
||
|
> \
|
||
|
}
|
||
|
/ # UN-Block *all* URLs and allow ads</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></P
|
||
|
><P
|
||
|
> This last <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"action"</SPAN
|
||
|
> in this compound statement,
|
||
|
<TT
|
||
|
CLASS="LITERAL"
|
||
|
>allow-popups</TT
|
||
|
>, is an <A
|
||
|
HREF="../user-manual/actions-file.html#ALIASES"
|
||
|
TARGET="_top"
|
||
|
>alias</A
|
||
|
> that disables
|
||
|
various pop-up blocking features.</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="TEMPLATES"
|
||
|
>3.29. How can I have custom template pages, like the
|
||
|
<SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>BLOCKED</I
|
||
|
></SPAN
|
||
|
> page?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"templates"</SPAN
|
||
|
> are specialized text files utilized by
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> for various purposes and can easily be modified using any text
|
||
|
editor. All the template pages are installed in a sub-directory appropriately
|
||
|
named: <TT
|
||
|
CLASS="FILENAME"
|
||
|
>templates</TT
|
||
|
>. Knowing something about HTML syntax
|
||
|
will of course be helpful.</P
|
||
|
><P
|
||
|
> Be forewarned that the default templates are subject to being overwritten
|
||
|
during upgrades. You can, however, create completely new templates,
|
||
|
place them in another directory and specify the alternate path in the main
|
||
|
<TT
|
||
|
CLASS="FILENAME"
|
||
|
>config</TT
|
||
|
>. For details, have a look at the <A
|
||
|
HREF="../user-manual/config.html#templdir"
|
||
|
TARGET="_top"
|
||
|
>templdir</A
|
||
|
> option. </P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="SECT2"
|
||
|
><H3
|
||
|
CLASS="SECT2"
|
||
|
><A
|
||
|
NAME="BLOCKALL"
|
||
|
>3.30. How can I remove the <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"Go There Anyway"</SPAN
|
||
|
> link from
|
||
|
the <SPAN
|
||
|
CLASS="emphasis"
|
||
|
><I
|
||
|
CLASS="EMPHASIS"
|
||
|
>BLOCKED</I
|
||
|
></SPAN
|
||
|
> page?</A
|
||
|
></H3
|
||
|
><P
|
||
|
> There is more than one way to do it (although Perl is not involved).</P
|
||
|
><P
|
||
|
> Editing the BLOCKED template page (see above) may dissuade some users, but
|
||
|
this method is easily circumvented. Where you need this level of control, you
|
||
|
might want to build <SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> from source, and disable various features that are
|
||
|
available as compile-time options. You should
|
||
|
<B
|
||
|
CLASS="COMMAND"
|
||
|
>configure</B
|
||
|
> the sources as follows:</P
|
||
|
><P
|
||
|
> <TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><PRE
|
||
|
CLASS="SCREEN"
|
||
|
> ./configure --disable-toggle --disable-editor --disable-force</PRE
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></P
|
||
|
><P
|
||
|
> This will create an executable with hard-coded security features so that
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy</SPAN
|
||
|
> does not allow easy bypassing of blocked sites, or changing the
|
||
|
current configuration via any connected user's web browser.</P
|
||
|
><P
|
||
|
> Finally, all of these features can also be toggled on/off via options in
|
||
|
<SPAN
|
||
|
CLASS="APPLICATION"
|
||
|
>Privoxy's</SPAN
|
||
|
> main <A
|
||
|
HREF="../user-manual/config.html#ACCESS-CONTROL"
|
||
|
TARGET="_top"
|
||
|
>config</A
|
||
|
> file which
|
||
|
means you don't have to recompile anything.</P
|
||
|
></DIV
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="NAVFOOTER"
|
||
|
><HR
|
||
|
ALIGN="LEFT"
|
||
|
WIDTH="100%"><TABLE
|
||
|
SUMMARY="Footer navigation table"
|
||
|
WIDTH="100%"
|
||
|
BORDER="0"
|
||
|
CELLPADDING="0"
|
||
|
CELLSPACING="0"
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="installation.html"
|
||
|
ACCESSKEY="P"
|
||
|
>Prev</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="34%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="index.html"
|
||
|
ACCESSKEY="H"
|
||
|
>Home</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="misc.html"
|
||
|
ACCESSKEY="N"
|
||
|
>Next</A
|
||
|
></TD
|
||
|
></TR
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="top"
|
||
|
>Installation</TD
|
||
|
><TD
|
||
|
WIDTH="34%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="top"
|
||
|
> </TD
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="top"
|
||
|
>Miscellaneous</TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></DIV
|
||
|
></BODY
|
||
|
></HTML
|
||
|
>
|