+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Actions Files</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="ACTIONS-FILE"
-></A
->8. Actions Files</H1
+>8. Actions Files</A
+></H1
><P
> The actions files are used to define what <SPAN
CLASS="emphasis"
> <DIV
CLASS="TABLE"
><A
-NAME="AEN2061"
+NAME="AEN2107"
></A
><P
><B
></P
><TABLE
BORDER="1"
+FRAME="border"
+RULES="all"
CLASS="CALSTABLE"
-><THEAD
+><COL
+WIDTH="1*"
+TITLE="C1"><COL
+WIDTH="1*"
+TITLE="C2"><COL
+WIDTH="1*"
+TITLE="C3"><COL
+WIDTH="1*"
+TITLE="C4"><THEAD
><TR
><TH
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Feature</TH
><TH
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Cautious</TH
><TH
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Medium</TH
><TH
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Advanced</TH
></TR
></THEAD
><TBODY
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Ad-blocking Aggressiveness</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>medium</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>high</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>high</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Ad-filtering by size</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Ad-filtering by link</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Pop-up killing</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>blocks only</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>blocks only</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>blocks only</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Privacy Features</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>low</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>medium</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>medium/high</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Cookie handling</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>none</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>session-only</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>kill</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Referer forging</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>GIF de-animation</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Fast redirects</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>HTML taming</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>JavaScript taming</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Web-bug killing</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
><TR
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>Image tag reordering</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>no</TD
><TD
-WIDTH="25%"
-ALIGN="LEFT"
-VALIGN="TOP"
>yes</TD
></TR
></TBODY
>http://config.privoxy.org/show-status</A
>.
The over-riding principle when applying actions, is that the last action that
- matches a given URL, wins. The broadest, most general rules go first
+ matches a given URL wins. The broadest, most general rules go first
(defined in <TT
CLASS="FILENAME"
>default.action</TT
CLASS="FILENAME"
>default.action</TT
>,
- with the advantage that is a separate file, which makes preserving your
+ with the advantage that it is a separate file, which makes preserving your
personal settings across <SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
><P
>
Actions can be used to block anything you want, including ads, banners, or
- just some obnoxious URL that you would rather not see. Cookies can be accepted
+ just some obnoxious URL whose content you would rather not see. Cookies can be accepted
or rejected, or accepted only during the current browser session (i.e. not
- written to disk), content can be modified, JavaScripts tamed, user-tracking
+ written to disk), content can be modified, some JavaScripts tamed, user-tracking
fooled, and much more. See below for a <A
HREF="actions-file.html#ACTIONS"
>complete list
><H2
CLASS="SECT2"
><A
-NAME="AEN2160"
-></A
->8.1. Finding the Right Mix</H2
+NAME="AEN2206"
+>8.1. Finding the Right Mix</A
+></H2
><P
> Note that some <A
HREF="actions-file.html#ACTIONS"
will have to make later. If, for example, you want to crunch all cookies per
default, you'll have to make exceptions from that rule for sites that you
regularly use and that require cookies for actually useful purposes, like maybe
- your bank, favorite shop, or newspaper. </P
+ your bank, favorite shop, or newspaper.</P
><P
> We have tried to provide you with reasonable rules to start from in the
distribution actions files. But there is no general rule of thumb on these
><H2
CLASS="SECT2"
><A
-NAME="AEN2167"
-></A
->8.2. How to Edit</H2
+NAME="AEN2213"
+>8.2. How to Edit</A
+></H2
><P
> The easiest way to edit the actions files is with a browser by
using our browser-based editor, which can be reached from <A
CLASS="SECT2"
><A
NAME="ACTIONS-APPLY"
-></A
->8.3. How Actions are Applied to Requests</H2
+>8.3. How Actions are Applied to Requests</A
+></H2
><P
> Actions files are divided into sections. There are special sections,
like the <SPAN
CLASS="SECT2"
><A
NAME="AF-PATTERNS"
-></A
->8.4. Patterns</H2
+>8.4. Patterns</A
+></H2
><P
>
As mentioned, <SPAN
flexibility. This allows one expression to be expanded and potentially match
against many similar patterns.</P
><P
-> Generally, a URL pattern has the form
+> Generally, an URL pattern has the form
<TT
CLASS="LITERAL"
><domain>/<path></TT
><DT
><TT
CLASS="LITERAL"
->www.example.com/index.html</TT
+>www.example.com/index.html$</TT
+></DT
+><DD
+><P
+> matches all the documents on <TT
+CLASS="LITERAL"
+>www.example.com</TT
+>
+ whose name starts with <TT
+CLASS="LITERAL"
+>/index.html</TT
+>.
+ </P
+></DD
+><DT
+><TT
+CLASS="LITERAL"
+>www.example.com/index.html$</TT
></DT
><DD
><P
><DT
><TT
CLASS="LITERAL"
->/index.html</TT
+>/index.html$</TT
></DT
><DD
><P
></DT
><DD
><P
-> matches nothing, since it would be interpreted as a domain name and
+> matches nothing, since it would be interpreted as a domain name and
there is no top-level domain called <TT
CLASS="LITERAL"
>.html</TT
><H3
CLASS="SECT3"
><A
-NAME="AEN2250"
-></A
->8.4.1. The Domain Pattern</H3
+NAME="AEN2303"
+>8.4.1. The Domain Pattern</A
+></H3
><P
> The matching of the domain part offers some flexible options: if the
domain starts or ends with a dot, it becomes unanchored at that end.
><H3
CLASS="SECT3"
><A
-NAME="AEN2321"
-></A
->8.4.2. The Path Pattern</H3
+NAME="AEN2374"
+>8.4.2. The Path Pattern</A
+></H3
><P
> <SPAN
CLASS="APPLICATION"
><DT
><TT
CLASS="LITERAL"
->.example.com/.*/index.html</TT
+>.example.com/.*/index.html$</TT
></DT
><DD
><P
><DT
><TT
CLASS="LITERAL"
->.example.com/(.*/)?index\.html</TT
+>.example.com/(.*/)?index\.html$</TT
></DT
><DD
><P
CLASS="SECT3"
><A
NAME="TAG-PATTERN"
-></A
->8.4.3. The Tag Pattern</H3
+>8.4.3. The Tag Pattern</A
+></H3
><P
> Tag patterns are used to change the applying actions based on the
request's tags. Tags can be created with either the
<A
-HREF="actions-file.html#CLIENT-HEADER-FILTER"
+HREF="actions-file.html#CLIENT-HEADER-TAGGER"
>client-header-tagger</A
>
or the <A
-HREF="actions-file.html#SERVER-HEADER-FILTER"
+HREF="actions-file.html#SERVER-HEADER-TAGGER"
>server-header-tagger</A
> action.</P
><P
>
can tell them apart from URL patterns. Everything after the colon
including white space, is interpreted as a regular expression with
- path patterns syntax, except that tag patterns aren't left-anchored
+ path pattern syntax, except that tag patterns aren't left-anchored
automatically (Privoxy doesn't silently add a <SPAN
CLASS="QUOTE"
>"^"</SPAN
match requests whose tags contain <SPAN
CLASS="QUOTE"
>"foo"</SPAN
-> somewhere.</P
+> somewhere.
+ <SPAN
+CLASS="QUOTE"
+>"TAG: foo"</SPAN
+> wouldn't work as it requires white space.</P
><P
> Sections can contain URL and tag patterns at the same time,
but tag patterns are checked after the URL patterns and thus
CLASS="SECT2"
><A
NAME="ACTIONS"
-></A
->8.5. Actions</H2
+>8.5. Actions</A
+></H2
><P
> All actions are disabled by default, until they are explicitly enabled
somewhere in an actions file. Actions are turned on if preceded with a
>
Example: <TT
CLASS="LITERAL"
->+hide-user-agent{ Mozilla 1.0 }</TT
+>+hide-user-agent{Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.8.1.4) Gecko/20070602 Firefox/2.0.0.4}</TT
>
</P
></LI
CLASS="APPLICATION"
>Privoxy</SPAN
> would just be a
- normal, non-blocking, non-anonymizing proxy. You must specifically enable the
+ normal, non-blocking, non-filtering proxy. You must specifically enable the
privacy and blocking features you need (although the provided default actions
files will give a good starting point).</P
><P
-> Later defined actions always over-ride earlier ones. So exceptions
- to any rules you make, should come in the latter part of the file (or
+> Later defined action sections always over-ride earlier ones of the same type.
+ So exceptions to any rules you make, should come in the latter part of the file (or
in a file that is processed later when using multiple actions files such
as <TT
CLASS="FILENAME"
CLASS="SECT3"
><A
NAME="ADD-HEADER"
-></A
->8.5.1. add-header</H4
+>8.5.1. add-header</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="BLOCK"
-></A
->8.5.2. block</H4
+>8.5.2. block</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="CLIENT-HEADER-FILTER"
-></A
->8.5.3. client-header-filter</H4
+>8.5.3. client-header-filter</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="CLIENT-HEADER-TAGGER"
-></A
->8.5.4. client-header-tagger</H4
+>8.5.4. client-header-tagger</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="CONTENT-TYPE-OVERWRITE"
-></A
->8.5.5. content-type-overwrite</H4
+>8.5.5. content-type-overwrite</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="CRUNCH-CLIENT-HEADER"
-></A
->8.5.6. crunch-client-header</H4
+>8.5.6. crunch-client-header</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="CRUNCH-IF-NONE-MATCH"
-></A
->8.5.7. crunch-if-none-match</H4
+>8.5.7. crunch-if-none-match</A
+></H4
><P
></P
><DIV
</P
><P
> It is also useful to make sure the header isn't used as a cookie
- replacement.
+ replacement (unlikely but possible).
</P
><P
> Blocking the <SPAN
CLASS="QUOTE"
>"If-Modified-Since:"</SPAN
> header
- isn't blocked as well.
+ isn't blocked or missing as well.
</P
><P
> It is recommended to use this action together with
><TD
><PRE
CLASS="SCREEN"
-># Let the browser revalidate cached documents without being tracked across sessions
-{ +hide-if-modified-since{-60} \
+># Let the browser revalidate cached documents but don't
+# allow the server to use the revalidation headers for user tracking.
+{+hide-if-modified-since{-60} \
+overwrite-last-modified{randomize} \
+crunch-if-none-match}
/ </PRE
CLASS="SECT3"
><A
NAME="CRUNCH-INCOMING-COOKIES"
-></A
->8.5.8. crunch-incoming-cookies</H4
+>8.5.8. crunch-incoming-cookies</A
+></H4
><P
></P
><DIV
>Typical use:</DT
><DD
><P
-> Prevent the web server from setting any cookies on your system
+> Prevent the web server from setting HTTP cookies on your system
</P
></DD
><DT
CLASS="EMPHASIS"
>incoming</I
></SPAN
-> cookies. For
+> HTTP cookies. For
<SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>outgoing</I
></SPAN
-> cookies, use
+> HTTP cookies, use
<TT
CLASS="LITERAL"
><A
CLASS="EMPHASIS"
>both</I
></SPAN
-> to disable cookies completely.
+> to disable HTTP cookies completely.
</P
><P
> It makes <SPAN
CLASS="SECT3"
><A
NAME="CRUNCH-SERVER-HEADER"
-></A
->8.5.9. crunch-server-header</H4
+>8.5.9. crunch-server-header</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="CRUNCH-OUTGOING-COOKIES"
-></A
->8.5.10. crunch-outgoing-cookies</H4
+>8.5.10. crunch-outgoing-cookies</A
+></H4
><P
></P
><DIV
>Typical use:</DT
><DD
><P
-> Prevent the web server from reading any cookies from your system
+> Prevent the web server from reading any HTTP cookies from your system
</P
></DD
><DT
CLASS="EMPHASIS"
>outgoing</I
></SPAN
-> cookies. For
+> HTTP cookies. For
<SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>incoming</I
></SPAN
-> cookies, use
+> HTTP cookies, use
<TT
CLASS="LITERAL"
><A
CLASS="EMPHASIS"
>both</I
></SPAN
-> to disable cookies completely.
+> to disable HTTP cookies completely.
</P
><P
> It makes <SPAN
CLASS="SECT3"
><A
NAME="DEANIMATE-GIFS"
-></A
->8.5.11. deanimate-gifs</H4
+>8.5.11. deanimate-gifs</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="DOWNGRADE-HTTP-VERSION"
-></A
->8.5.12. downgrade-http-version</H4
+>8.5.12. downgrade-http-version</A
+></H4
><P
></P
><DIV
>
didn't support important HTTP/1.1 features well. It is left here for the
unlikely case that you experience HTTP/1.1 related problems with some server
- out there. Not all (optional) HTTP/1.1 features are supported yet, so there
- is a chance you might need this action.
+ out there. Not all HTTP/1.1 features and requirements are supported yet,
+ so there is a chance you might need this action.
</P
></DD
><DT
CLASS="SECT3"
><A
NAME="FAST-REDIRECTS"
-></A
->8.5.13. fast-redirects</H4
+>8.5.13. fast-redirects</A
+></H4
><P
></P
><DIV
><PRE
CLASS="SCREEN"
> { +fast-redirects{simple-check} }
- .example.com
+ one.example.com
{ +fast-redirects{check-decoded-url} }
another.example.com/testing</PRE
CLASS="SECT3"
><A
NAME="FILTER"
-></A
->8.5.14. filter</H4
+>8.5.14. filter</A
+></H4
><P
></P
><DIV
><TD
><PRE
CLASS="SCREEN"
->+filter{ie-exploits} # Disable some known Internet Explorer bug exploits</PRE
+>+filter{ie-exploits} # Disable a known Internet Explorer bug exploits</PRE
></TD
></TR
></TABLE
CLASS="SECT3"
><A
NAME="FORCE-TEXT-MODE"
-></A
->8.5.15. force-text-mode</H4
+>8.5.15. force-text-mode</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="FORWARD-OVERRIDE"
-></A
->8.5.16. forward-override</H4
+>8.5.16. forward-override</A
+></H4
><P
></P
><DIV
>Effect:</DT
><DD
><P
-> Overrules the forward directives in the configuration files.
+> Overrules the forward directives in the configuration file.
</P
></DD
><DT
> <SPAN
CLASS="QUOTE"
>"forward-socks4a 127.0.0.1:9050 ."</SPAN
-> to use the socks4a proxy listening at 127.0.0.1 port 9050.
- Replace <SPAN
+> to use the socks4a proxy listening at
+ 127.0.0.1 port 9050. Replace <SPAN
CLASS="QUOTE"
>"forward-socks4a"</SPAN
> with <SPAN
CLASS="QUOTE"
>"forward-socks4"</SPAN
-> to use a socks4 connection (with local DNS
- resolution) instead.
+>
+ to use a socks4 connection (with local DNS resolution) instead.
</P
></LI
><LI
> with <SPAN
CLASS="QUOTE"
>"forward-socks4"</SPAN
-> to use a socks4 connection (with local DNS
- resolution) instead.
+> to use a socks4 connection
+ (with local DNS resolution) instead.
</P
></LI
></UL
-hide-if-modified-since \
-overwrite-last-modified \
}
-TAG:^User-Agent: fetch libfetch/2.0$
+TAG:^User-Agent: fetch libfetch/2\.0$
</PRE
></TD
></TR
CLASS="SECT3"
><A
NAME="HANDLE-AS-EMPTY-DOCUMENT"
-></A
->8.5.17. handle-as-empty-document</H4
+>8.5.17. handle-as-empty-document</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="HANDLE-AS-IMAGE"
-></A
->8.5.18. handle-as-image</H4
+>8.5.18. handle-as-image</A
+></H4
><P
></P
><DIV
# blocked as images:
#
{+block +handle-as-image}
-some.nasty-banner-server.com/junk.cgi?output=trash
+some.nasty-banner-server.com/junk.cgi\?output=trash
# Banner source! Who cares if they also have non-image content?
ad.doubleclick.net </PRE
CLASS="SECT3"
><A
NAME="HIDE-ACCEPT-LANGUAGE"
-></A
->8.5.19. hide-accept-language</H4
+>8.5.19. hide-accept-language</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="HIDE-CONTENT-DISPOSITION"
-></A
->8.5.20. hide-content-disposition</H4
+>8.5.20. hide-content-disposition</A
+></H4
><P
></P
><DIV
to another one, but in most cases it isn't worth the time to set
it up.
</P
+><P
+> This action will probably be removed in the future,
+ use server-header filters instead.
+ </P
></DD
><DT
>Example usage:</DT
CLASS="SECT3"
><A
NAME="HIDE-IF-MODIFIED-SINCE"
-></A
->8.5.21. hide-if-modified-since</H4
+>8.5.21. hide-if-modified-since</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="HIDE-FORWARDED-FOR-HEADERS"
-></A
->8.5.22. hide-forwarded-for-headers</H4
+>8.5.22. hide-forwarded-for-headers</A
+></H4
><P
></P
><DIV
>Typical use:</DT
><DD
><P
->Improve privacy by hiding the true source of the request</P
+>Improve privacy by not embedding the source of the request in the HTTP headers.</P
></DD
><DT
>Effect:</DT
>Notes:</DT
><DD
><P
-> It is fairly safe to leave this on.
- </P
-><P
-> This action is scheduled for improvement: It should be able to generate forged
- <SPAN
-CLASS="QUOTE"
->"X-Forwarded-for:"</SPAN
-> headers using random IP addresses from a specified network,
- to make successive requests from the same client look like requests from a pool of different
- users sharing the same proxy.
+> It is safe to leave this on.
</P
></DD
><DT
CLASS="SECT3"
><A
NAME="HIDE-FROM-HEADER"
-></A
->8.5.23. hide-from-header</H4
+>8.5.23. hide-from-header</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="HIDE-REFERRER"
-></A
->8.5.24. hide-referrer</H4
+>8.5.24. hide-referrer</A
+></H4
><A
NAME="HIDE-REFERER"
></A
CLASS="SECT3"
><A
NAME="HIDE-USER-AGENT"
-></A
->8.5.25. hide-user-agent</H4
+>8.5.25. hide-user-agent</A
+></H4
><P
></P
><DIV
(Must be just a silly MS goof, I'm sure :-).
</P
><P
-> This action is scheduled for improvement.
+> More information on known user-agent strings can be found at
+ <A
+HREF="http://www.user-agents.org/"
+TARGET="_top"
+>http://www.user-agents.org/</A
+>
+ and
+ <A
+HREF="http://en.wikipedia.org/wiki/User_agent"
+TARGET="_top"
+>http://en.wikipedia.org/wiki/User_agent</A
+>.
</P
></DD
><DT
CLASS="SECT3"
><A
NAME="INSPECT-JPEGS"
-></A
->8.5.26. inspect-jpegs</H4
+>8.5.26. inspect-jpegs</A
+></H4
><P
></P
><DIV
allow execution of code on the target system, giving an attacker access
to the system in question by merely planting an altered JPEG image, which
would have no obvious indications of what lurks inside. This action
- prevents unwanted intrusion.
+ prevents this exploit.
+ </P
+><P
+> Note that the described exploit is only one of many,
+ using this action does not mean that you no longer
+ have to patch the client.
</P
></DD
><DT
CLASS="SECT3"
><A
NAME="KILL-POPUPS"
-></A
>8.5.27. kill-popups<A
NAME="KILL-POPUP"
></A
+></A
></H4
><P
></P
CLASS="SECT3"
><A
NAME="LIMIT-CONNECT"
-></A
->8.5.28. limit-connect</H4
+>8.5.28. limit-connect</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="PREVENT-COMPRESSION"
-></A
->8.5.29. prevent-compression</H4
+>8.5.29. prevent-compression</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="OVERWRITE-LAST-MODIFIED"
-></A
->8.5.30. overwrite-last-modified</H4
+>8.5.30. overwrite-last-modified</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="REDIRECT"
-></A
->8.5.31. redirect</H4
+>8.5.31. redirect</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SEND-VANILLA-WAFER"
-></A
->8.5.32. send-vanilla-wafer</H4
+>8.5.32. send-vanilla-wafer</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SEND-WAFER"
-></A
->8.5.33. send-wafer</H4
+>8.5.33. send-wafer</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SERVER-HEADER-FILTER"
-></A
->8.5.34. server-header-filter</H4
+>8.5.34. server-header-filter</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SERVER-HEADER-TAGGER"
-></A
->8.5.35. server-header-tagger</H4
+>8.5.35. server-header-tagger</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SESSION-COOKIES-ONLY"
-></A
->8.5.36. session-cookies-only</H4
+>8.5.36. session-cookies-only</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SET-IMAGE-BLOCKER"
-></A
->8.5.37. set-image-blocker</H4
+>8.5.37. set-image-blocker</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="TREAT-FORBIDDEN-CONNECTS-LIKE-BLOCKS"
-></A
->8.5.38. treat-forbidden-connects-like-blocks</H4
+>8.5.38. treat-forbidden-connects-like-blocks</A
+></H4
><P
></P
><DIV
><H3
CLASS="SECT3"
><A
-NAME="AEN4122"
-></A
->8.5.39. Summary</H3
+NAME="AEN4178"
+>8.5.39. Summary</A
+></H3
><P
> Note that many of these actions have the potential to cause a page to
misbehave, possibly even not to display at all. There are many ways
CLASS="SECT2"
><A
NAME="ALIASES"
-></A
->8.6. Aliases</H2
+>8.6. Aliases</A
+></H2
><P
> Custom <SPAN
CLASS="QUOTE"
CLASS="SECT2"
><A
NAME="ACT-EXAMPLES"
-></A
->8.7. Actions Files Tutorial</H2
+>8.7. Actions Files Tutorial</A
+></H2
><P
> The above chapters have shown <A
HREF="actions-file.html"
><H3
CLASS="SECT3"
><A
-NAME="AEN4187"
-></A
->8.7.1. default.action</H3
+NAME="AEN4243"
+>8.7.1. default.action</A
+></H3
><P
>Every config file should start with a short comment stating its purpose:</P
><P
><H3
CLASS="SECT3"
><A
-NAME="AEN4374"
-></A
->8.7.2. user.action</H3
+NAME="AEN4430"
+>8.7.2. user.action</A
+></H3
><P
> So far we are painting with a broad brush by setting general policies,
which would be a reasonable starting point for many people. Now,
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Appendix</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="APPENDIX"
-></A
->14. Appendix</H1
+>14. Appendix</A
+></H1
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="REGEX"
-></A
->14.1. Regular Expressions</H2
+>14.1. Regular Expressions</A
+></H2
><P
> <SPAN
CLASS="APPLICATION"
><H2
CLASS="SECT2"
><A
-NAME="AEN5252"
-></A
->14.2. Privoxy's Internal Pages</H2
+NAME="AEN5309"
+>14.2. Privoxy's Internal Pages</A
+></H2
><P
> Since <SPAN
CLASS="APPLICATION"
Privoxy main page:
</P
><A
-NAME="AEN5266"
+NAME="AEN5323"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
editing of actions files:
</P
><A
-NAME="AEN5274"
+NAME="AEN5331"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
Show the source code version numbers:
</P
><A
-NAME="AEN5279"
+NAME="AEN5336"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
Show the browser's request headers:
</P
><A
-NAME="AEN5284"
+NAME="AEN5341"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
Show which actions apply to a URL and why:
</P
><A
-NAME="AEN5289"
+NAME="AEN5346"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
to run, but only as a pass-through proxy, with no actions taking place:
</P
><A
-NAME="AEN5295"
+NAME="AEN5352"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
> Short cuts. Turn off, then on:
</P
><A
-NAME="AEN5299"
+NAME="AEN5356"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
</P
></BLOCKQUOTE
><A
-NAME="AEN5302"
+NAME="AEN5359"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
CLASS="SECT3"
><A
NAME="BOOKMARKLETS"
-></A
->14.2.1. Bookmarklets</H3
+>14.2.1. Bookmarklets</A
+></H3
><P
> Below are some <SPAN
CLASS="QUOTE"
CLASS="SECT2"
><A
NAME="CHAIN"
-></A
->14.3. Chain of Events</H2
+>14.3. Chain of Events</A
+></H2
><P
> Let's take a quick look at how some of <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="ACTIONSANAT"
-></A
->14.4. Troubleshooting: Anatomy of an Action</H2
+>14.4. Troubleshooting: Anatomy of an Action</A
+></H2
><P
> The way <SPAN
CLASS="APPLICATION"
><TD
><PRE
CLASS="SCREEN"
-> Matches for http://google.com:
+> Matches for http://www.google.com:
In file: default.action <SPAN
CLASS="GUIBUTTON"
>[ Edit ]</SPAN
>
- {-add-header
- -block
- -client-header-filter{hide-tor-exit-notation}
- -content-type-overwrite
- -crunch-client-header
- -crunch-if-none-match
- -crunch-incoming-cookies
- -crunch-outgoing-cookies
- -crunch-server-header
- +deanimate-gifs {last}
- -downgrade-http-version
+ {+deanimate-gifs {last}
+fast-redirects {check-decoded-url}
- -filter {js-events}
- -filter {content-cookies}
- -filter {all-popups}
- -filter {banners-by-link}
- -filter {tiny-textforms}
- -filter {frameset-borders}
- -filter {demoronizer}
- -filter {shockwave-flash}
- -filter {quicktime-kioskmode}
- -filter {fun}
- -filter {crude-parental}
- -filter {site-specifics}
- -filter {js-annoyances}
- -filter {html-annoyances}
+filter {refresh-tags}
- -filter {unsolicited-popups}
+filter {img-reorder}
+filter {banners-by-size}
+filter {webbugs}
+filter {jumping-windows}
+filter {ie-exploits}
- -filter {google}
- -filter {yahoo}
- -filter {msn}
- -filter {blogspot}
- -filter {no-ping}
- -force-text-mode
- -handle-as-empty-document
- -handle-as-image
- -hide-accept-language
- -hide-content-disposition
+hide-forwarded-for-headers
+hide-from-header {block}
- -hide-if-modified-since
+hide-referrer {forge}
- -hide-user-agent
- -inspect-jpegs
- -kill-popups
- -limit-connect
- -overwrite-last-modified
- +prevent-compression
- -redirect
- -send-vanilla-wafer
- -send-wafer
- -server-header-filter{xml-to-html}
- -server-header-filter{html-to-xml}
+session-cookies-only
+set-image-blocker {pattern}
- -treat-forbidden-connects-like-blocks }
/
{ -session-cookies-only }
-crunch-server-header
+deanimate-gifs {last}
-downgrade-http-version
- +fast-redirects {check-decoded-url}
+ -fast-redirects
-filter {js-events}
-filter {content-cookies}
-filter {all-popups}
-kill-popups
-limit-connect
-overwrite-last-modified
- +prevent-compression
+ -prevent-compression
-redirect
-send-vanilla-wafer
-send-wafer
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>The Main Configuration File</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="CONFIG"
-></A
->7. The Main Configuration File</H1
+>7. The Main Configuration File</A
+></H1
><P
> Again, the main configuration file is named <TT
CLASS="FILENAME"
CLASS="SECT2"
><A
NAME="LOCAL-SET-UP"
-></A
->7.1. Local Set-up Documentation</H2
+>7.1. Local Set-up Documentation</A
+></H2
><P
> If you intend to operate <SPAN
CLASS="APPLICATION"
CLASS="SECT3"
><A
NAME="USER-MANUAL"
-></A
->7.1.1. user-manual</H4
+>7.1.1. user-manual</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="TRUST-INFO-URL"
-></A
->7.1.2. trust-info-url</H4
+>7.1.2. trust-info-url</A
+></H4
><P
></P
><DIV
>Default value:</DT
><DD
><P
->Two example URL are provided</P
+>Two example URLs are provided</P
></DD
><DT
>Effect if unset:</DT
CLASS="SECT3"
><A
NAME="ADMIN-ADDRESS"
-></A
->7.1.3. admin-address</H4
+>7.1.3. admin-address</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="PROXY-INFO-URL"
-></A
->7.1.4. proxy-info-url</H4
+>7.1.4. proxy-info-url</A
+></H4
><P
></P
><DIV
CLASS="SECT2"
><A
NAME="CONF-LOG-LOC"
-></A
->7.2. Configuration and Log File Locations</H2
+>7.2. Configuration and Log File Locations</A
+></H2
><P
> <SPAN
CLASS="APPLICATION"
CLASS="SECT3"
><A
NAME="CONFDIR"
-></A
->7.2.1. confdir</H4
+>7.2.1. confdir</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="TEMPLDIR"
-></A
->7.2.2. templdir</H4
+>7.2.2. templdir</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="LOGDIR"
-></A
->7.2.3. logdir</H4
+>7.2.3. logdir</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="ACTIONSFILE"
-></A
->7.2.4. actionsfile</H4
+>7.2.4. actionsfile</A
+></H4
><A
NAME="DEFAULT.ACTION"
></A
CLASS="SECT3"
><A
NAME="FILTERFILE"
-></A
->7.2.5. filterfile</H4
+>7.2.5. filterfile</A
+></H4
><A
NAME="DEFAULT.FILTER"
></A
CLASS="SECT3"
><A
NAME="LOGFILE"
-></A
->7.2.6. logfile</H4
+>7.2.6. logfile</A
+></H4
><P
></P
><DIV
>Default value:</DT
><DD
><P
->logfile (Unix) <SPAN
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>Unset (commented out)</I
+></SPAN
+>. When activated: logfile (Unix) <SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
CLASS="APPLICATION"
>Privoxy</SPAN
> (e.g., it's not blocking an ad you
- think it should block) but in most cases you probably will never look at it.
+ think it should block) but in most cases you probably will never look at
+ it. For this reason, it is disabled by default. For troubleshooting
+ purposes, you will have to explicitly enable it.
</P
><P
> Your logfile will grow indefinitely, and you will probably want to
(see <SPAN
CLASS="QUOTE"
>"man cron"</SPAN
->). For Red Hat, a <B
+>). For Red Hat based Linux distributions, a
+ <B
CLASS="COMMAND"
>logrotate</B
->
- script has been included.
+> script has been included.
</P
><P
> On SuSE Linux systems, you can place a line like <SPAN
CLASS="SECT3"
><A
NAME="JARFILE"
-></A
->7.2.7. jarfile</H4
+>7.2.7. jarfile</A
+></H4
><P
></P
><DIV
>Default value:</DT
><DD
><P
->Unset (commented out). When activated: jarfile (Unix) <SPAN
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>Unset (commented out)</I
+></SPAN
+>. When activated: jarfile (Unix) <SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
CLASS="SECT3"
><A
NAME="TRUSTFILE"
-></A
->7.2.8. trustfile</H4
+>7.2.8. trustfile</A
+></H4
><P
></P
><DIV
CLASS="SECT2"
><A
NAME="DEBUGGING"
-></A
->7.3. Debugging</H2
+>7.3. Debugging</A
+></H2
><P
> These options are mainly useful when tracing a problem.
Note that you might also want to invoke
CLASS="SECT3"
><A
NAME="DEBUG"
-></A
->7.3.1. debug</H4
+>7.3.1. debug</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SINGLE-THREADED"
-></A
->7.3.2. single-threaded</H4
+>7.3.2. single-threaded</A
+></H4
><P
></P
><DIV
CLASS="SECT2"
><A
NAME="ACCESS-CONTROL"
-></A
->7.4. Access Control and Security</H2
+>7.4. Access Control and Security</A
+></H2
><P
> This section of the config file controls the security-relevant aspects
of <SPAN
CLASS="SECT3"
><A
NAME="LISTEN-ADDRESS"
-></A
->7.4.1. listen-address</H4
+>7.4.1. listen-address</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="TOGGLE"
-></A
->7.4.2. toggle</H4
+>7.4.2. toggle</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="ENABLE-REMOTE-TOGGLE"
-></A
->7.4.3. enable-remote-toggle</H4
+>7.4.3. enable-remote-toggle</A
+></H4
><P
></P
><DIV
>Default value:</DT
><DD
><P
->1</P
+>0</P
></DD
><DT
>Effect if unset:</DT
any URL.
</P
><P
-> For the time being, access to the toggle feature can <SPAN
+> Access to the toggle feature can <SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>not recommended</I
></SPAN
>
- for multi-user environments with untrusted users.
+ for multi-user environments with untrusted users. Because of
+ the obvious security implications, this feature is off by default.
+ Note that malicious client side code (e.g JavaScript) is also potentially
+ capable of changing <SPAN
+CLASS="APPLICATION"
+>Privoxy's</SPAN
+> intended
+ behavior.
</P
><P
> Note that you must have compiled <SPAN
CLASS="SECT3"
><A
NAME="ENABLE-REMOTE-HTTP-TOGGLE"
-></A
->7.4.4. enable-remote-http-toggle</H4
+>7.4.4. enable-remote-http-toggle</A
+></H4
><P
></P
><DIV
>Default value:</DT
><DD
><P
->1</P
+>0</P
></DD
><DT
>Effect if unset:</DT
the ongoing request, even if it is enabled in one of the action files.
</P
><P
-> If you are using <SPAN
+> This feature is disabled by default. If you are using
+ <SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
-> in a
- multi-user environment or with untrustworthy clients and want to
- enforce filtering, you will have to disable this option,
- otherwise you can ignore it.
+> in a environment with trusted clients,
+ you may enable this feature at your discretion. Note that malicious client
+ side code (e.g JavaScript) is also potentially capable of changing
+ <SPAN
+CLASS="APPLICATION"
+>Privoxy's</SPAN
+> intended behavior.
</P
></DD
></DL
CLASS="SECT3"
><A
NAME="ENABLE-EDIT-ACTIONS"
-></A
->7.4.5. enable-edit-actions</H4
+>7.4.5. enable-edit-actions</A
+></H4
><P
></P
><DIV
>Default value:</DT
><DD
><P
->1</P
+>0</P
></DD
><DT
>Effect if unset:</DT
>Notes:</DT
><DD
><P
-> For the time being, access to the editor can <SPAN
+> Access to the editor can <SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
CLASS="LITERAL"
>listen-address</TT
> above) can
- modify its configuration for all users. So this option is <SPAN
+ modify its configuration for all users. This option is <SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>not
recommended</I
></SPAN
-> for multi-user environments with untrusted users.
+> for multi-user environments with untrusted users
+ and is therefore disabled by default. Note that malicious client side code
+ (e.g JavaScript) is also potentially capable of changing
+ <SPAN
+CLASS="APPLICATION"
+>Privoxy's</SPAN
+> intended behavior.
</P
><P
> Note that you must have compiled <SPAN
CLASS="SECT3"
><A
NAME="ENFORCE-BLOCKS"
-></A
->7.4.6. enforce-blocks</H4
+>7.4.6. enforce-blocks</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="ACLS"
-></A
->7.4.7. ACLs: permit-access and deny-access</H4
+>7.4.7. ACLs: permit-access and deny-access</A
+></H4
><A
NAME="PERMIT-ACCESS"
></A
CLASS="SECT3"
><A
NAME="BUFFER-LIMIT"
-></A
->7.4.8. buffer-limit</H4
+>7.4.8. buffer-limit</A
+></H4
><P
></P
><DIV
CLASS="SECT2"
><A
NAME="FORWARDING"
-></A
->7.5. Forwarding</H2
+>7.5. Forwarding</A
+></H2
><P
> This feature allows routing of HTTP requests through a chain of
multiple proxies.</P
CLASS="SECT3"
><A
NAME="FORWARD"
-></A
->7.5.1. forward</H4
+>7.5.1. forward</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="SOCKS"
-></A
->7.5.2. forward-socks4 and forward-socks4a</H4
+>7.5.2. forward-socks4 and forward-socks4a</A
+></H4
><A
NAME="FORWARD-SOCKS4"
></A
CLASS="SECT3"
><A
NAME="ADVANCED-FORWARDING-EXAMPLES"
-></A
->7.5.3. Advanced Forwarding Examples</H4
+>7.5.3. Advanced Forwarding Examples</A
+></H4
><P
> If you have links to multiple ISPs that provide various special content
only to their subscribers, you can configure multiple <SPAN
CLASS="SECT3"
><A
NAME="FORWARDED-CONNECT-RETRIES"
-></A
->7.5.4. forwarded-connect-retries</H4
+>7.5.4. forwarded-connect-retries</A
+></H4
><P
></P
><DIV
CLASS="SECT3"
><A
NAME="ACCEPT-INTERCEPTED-REQUESTS"
-></A
->7.5.5. accept-intercepted-requests</H4
+>7.5.5. accept-intercepted-requests</A
+></H4
><P
></P
><DIV
><H4
CLASS="SECT3"
><A
+NAME="ALLOW-CGI-REQUEST-CRUNCHING"
+>7.5.6. allow-cgi-request-crunching</A
+></H4
+><P
+></P
+><DIV
+CLASS="VARIABLELIST"
+><DL
+><DT
+>Specifies:</DT
+><DD
+><P
+> Whether requests to <SPAN
+CLASS="APPLICATION"
+>Privoxy's</SPAN
+> CGI pages can be blocked or redirected.
+ </P
+></DD
+><DT
+>Type of value:</DT
+><DD
+><P
+> <TT
+CLASS="REPLACEABLE"
+><I
+>0 or 1</I
+></TT
+>
+ </P
+></DD
+><DT
+>Default value:</DT
+><DD
+><P
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>0</I
+></SPAN
+></P
+></DD
+><DT
+>Effect if unset:</DT
+><DD
+><P
+> <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+> ignores block and redirect actions for its CGI pages.
+ </P
+></DD
+><DT
+>Notes:</DT
+><DD
+><P
+> By default <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+> ignores block or redirect actions
+ for its CGI pages. Intercepting these requests can be useful in multi-user
+ setups to implement fine-grained access control, but it can also render the complete
+ web interface useless and make debugging problems painful if done without care.
+ </P
+><P
+> Don't enable this option unless you're sure that you really need it.
+ </P
+></DD
+><DT
+>Examples:</DT
+><DD
+><P
+> allow-cgi-request-crunching 1
+ </P
+></DD
+></DL
+></DIV
+></DIV
+><DIV
+CLASS="SECT3"
+><H4
+CLASS="SECT3"
+><A
NAME="SPLIT-LARGE-FORMS"
-></A
->7.5.6. split-large-forms</H4
+>7.5.7. split-large-forms</A
+></H4
><P
></P
><DIV
CLASS="SECT2"
><A
NAME="WINDOWS-GUI"
-></A
->7.6. Windows GUI Options</H2
+>7.6. Windows GUI Options</A
+></H2
><P
> <SPAN
CLASS="APPLICATION"
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Privoxy Configuration</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="CONFIGURATION"
-></A
->6. Privoxy Configuration</H1
+>6. Privoxy Configuration</A
+></H1
><P
> All <SPAN
CLASS="APPLICATION"
><H2
CLASS="SECT2"
><A
-NAME="AEN755"
-></A
->6.1. Controlling Privoxy with Your Web Browser</H2
+NAME="AEN762"
+>6.1. Controlling Privoxy with Your Web Browser</A
+></H2
><P
> <SPAN
CLASS="APPLICATION"
> <H2
CLASS="BRIDGEHEAD"
><A
-NAME="AEN763"
+NAME="AEN770"
></A
> Privoxy Menu</H2
><P
CLASS="SECT2"
><A
NAME="CONFOVERVIEW"
-></A
->6.2. Configuration Files Overview</H2
+>6.2. Configuration Files Overview</A
+></H2
><P
> For Unix, *BSD and Linux, all configuration files are located in
<TT
<SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
-> executable. </P
+> executable. The name
+ and number of configuration files has changed from previous versions, and is
+ subject to change as development progresses.</P
><P
> The installed defaults provide a reasonable starting point, though
some settings may be aggressive by some standards. For the time being, the
></UL
></P
><P
-> The syntax of all configuration files has remained the same throughout the
- 3.x series. There have been enhancements, but no changes that would preclude
- the use of any configuration file from one version to the next. (There is
- one exception: <A
-HREF="actions-file.html#FAST-REDIRECTS"
->+fast-redirects</A
-> which
- has enhanced syntax and will require updating any local configs from earlier
- versions.)</P
+> The syntax of the configuration and filter files may change between different
+ Privoxy versions, unfortunately some enhancements cost backwards compatibility.
+ </P
><P
> All files use the <SPAN
CLASS="QUOTE"
>old</I
></SPAN
> listening address.</P
+><P
+> While under development, the configuration content is subject to change.
+ The below documentation may not be accurate by the time you read this.
+ Also, what constitutes a <SPAN
+CLASS="QUOTE"
+>"default"</SPAN
+> setting, may change, so
+ please check all your configuration files on important issues.</P
></DIV
></DIV
><DIV
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
Requests</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="CONTACT"
-></A
>11. Contacting the Developers, Bug Reporting and Feature
-Requests</H1
+Requests</A
+></H1
><P
> We value your feedback. In fact, we rely on it to improve
<SPAN
CLASS="SECT2"
><A
NAME="CONTACT-SUPPORT"
-></A
->11.1. Get Support</H2
+>11.1. Get Support</A
+></H2
><P
> For casual users, our
<A
>users
mailing list</A
>, where the developers also hang around.</P
+><P
+> Note that the Privoxy mailing lists are moderated. Posts from unsubscribed
+ addresses have to be accepted manually by a moderator. This may cause a
+ delay of several days and if you use a subject that doesn't clearly
+ mention Privoxy or one of its features, your message may be accidentally
+ discarded as spam.</P
+><P
+> If you aren't subscribed, you should therefore spend a few seconds
+ to come up with a proper subject. Additionally you should make it clear
+ that you want to get CC'd. Otherwise some responses will be directed to
+ the mailing list only, and you won't see them.</P
></DIV
><DIV
CLASS="SECT2"
CLASS="SECT2"
><A
NAME="REPORTING"
-></A
->11.2. Reporting Problems</H2
+>11.2. Reporting Problems</A
+></H2
><P
><SPAN
CLASS="QUOTE"
CLASS="SECT3"
><A
NAME="CONTACT-ADS"
-></A
->11.2.1. Reporting Ads or Other Configuration Problems</H3
+>11.2.1. Reporting Ads or Other Configuration Problems</A
+></H3
><P
> Please send feedback on ads that slipped through, innocent images that were
blocked, sites that don't work properly, and other configuration related problem of
CLASS="SECT3"
><A
NAME="CONTACT-BUGS"
-></A
->11.2.2. Reporting Bugs</H3
+>11.2.2. Reporting Bugs</A
+></H3
><P
-> Please report all bugs <SPAN
-CLASS="emphasis"
-><I
-CLASS="EMPHASIS"
->only</I
-></SPAN
-> through our
- bug tracker:
+> Please report all bugs through our bug tracker:
<A
HREF="http://sourceforge.net/tracker/?group_id=11118&atid=111118"
TARGET="_top"
>. If already submitted, please feel free to add any info to the
original report that might help to solve the issue.</P
><P
->
- Please try to verify that it is a <SPAN
+> Please try to verify that it is a <SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
> bug,
- and not a browser or site bug first. If unsure,
+ and not a browser or site bug or documented behaviour that just happens
+ to be different than what you expected. If unsure,
try <A
HREF="http://config.privoxy.org/toggle?set=disable"
TARGET="_top"
> <SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
->, and see if the problem persists.
- If you are using your own custom configuration, please try
- the stock configs to see if the problem is configuration related.</P
+>, and see if the problem persists.</P
+><P
+> If you are using your own custom configuration, please try
+ the stock configs to see if the problem is configuration related.
+ If you're having problems with a feature that is disabled by default,
+ please ask around on the mailing list if others can reproduce the problem.</P
><P
-> If not using the latest version, the bug may have been found
+> If you aren't using the latest Privoxy version, the bug may have been found
and fixed in the meantime. We would appreciate if you could take the time
to <A
HREF="http://www.privoxy.org/user-manual/installation.html"
>upgrade
to the latest version</A
> (or even the latest CVS snapshot) and verify
- your bug.</P
+ that your bug still exists.</P
><P
>Please be sure to provide the following information:</P
><P
> The exact <SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
-> version of the proxy software
+> version you are using
(if you got the source from CVS, please also provide the source code revisions
as shown in <A
HREF="http://config.privoxy.org/show-version"
sending the output of <SPAN
CLASS="QUOTE"
>"uname -a"</SPAN
-> should do.
+> should do,
+ in case of GNU/Linux, please also name the distribution.
</P
></LI
><LI
CLASS="APPLICATION"
>Privoxy</SPAN
> is one supplied
- by the developers of <SPAN
+ by the <SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
-> via SourceForge,
- or somewhere else.
+> developers via SourceForge,
+ or if you got your copy somewhere else.
</P
></LI
><LI
another proxy such as <SPAN
CLASS="APPLICATION"
>Tor</SPAN
->. If so, please try
- disabling the other proxy.
+>. If so, please
+ temporary disable the other proxy to see if the symptoms change.
</P
></LI
><LI
action taken).
</P
></LI
-><LI
-><P
-> <SPAN
-CLASS="emphasis"
-><I
-CLASS="EMPHASIS"
->Please provide your SF login, or email address</I
-></SPAN
->, in case we
- need to contact you.
- </P
-></LI
></UL
></P
><P
+> You don't have to tell us your actual name when filing a problem
+ report, but please use a nickname so we can differentiate between
+ your messages and the ones entered by other "anonymous" users that
+ may respond to your request if they have the same problem or already
+ found a solution.</P
+><P
+> Please also check the status of your request a few days after submitting
+ it, as we may request additional information. If you use a SF id,
+ you should automatically get a mail when someone responds to your request.</P
+><P
> The <A
HREF="http://www.privoxy.org/user-manual/appendix.html#ACTIONSANAT"
TARGET="_top"
CLASS="SECT2"
><A
NAME="CONTACT-FEATURE"
-></A
->11.3. Request New Features</H2
+>11.3. Request New Features</A
+></H2
><P
> You are welcome to submit ideas on new features or other proposals
for improvement through our feature request tracker at
CLASS="SECT2"
><A
NAME="CONTACT-OTHER"
-></A
->11.4. Other</H2
+>11.4. Other</A
+></H2
><P
>For any other issues, feel free to use the mailing lists. Technically interested users
and people who wish to contribute to the project are also welcome on the developers list!
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Privoxy Copyright, License and History</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="COPYRIGHT"
-></A
->12. Privoxy Copyright, License and History</H1
+>12. Privoxy Copyright, License and History</A
+></H1
><P
-> Copyright © 2001 - 2006 by Privoxy Developers <TT
+> Copyright © 2001 - 2007 by Privoxy Developers <CODE
CLASS="EMAIL"
><<A
HREF="mailto:ijbswa-developers@lists.sourceforge.net"
>ijbswa-developers@lists.sourceforge.net</A
->></TT
+>></CODE
></P
><P
> Some source code is based on code Copyright © 1997 by Anonymous Coders
><H2
CLASS="SECT2"
><A
-NAME="AEN4997"
-></A
->12.1. License</H2
+NAME="AEN5054"
+>12.1. License</A
+></H2
><P
> <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="HISTORY"
-></A
->12.2. History</H2
+>12.2. History</A
+></H2
><P
> A long time ago, there was the
<A
CLASS="SECT2"
><A
NAME="AUTHORS"
-></A
->12.3. Authors</H2
+>12.3. Authors</A
+></H2
><P
>Current Privoxy Team:</P
><P
> Ken Arromdee<br>
Devin Bayer<br>
Reiner Buehl<br>
+ Gergely Bor<br>
Andrew J. Caines<br>
Clifford Caoile<br>
Frédéric Crozat<br>
Mattes Dolak <br>
Peter E<br>
Florian Effenberger<br>
+ Markus Elfring<br>
Dean Gaudet<br>
+ Stephen Gildea<br>
+ Daniel Griscom<br>
+ Felix Gröbert<br>
Aaron Hamid<br>
Darel Henman<br>
Magnus Holmgren<br>
+ Peter Hyman<br>
Derek Jennings<br>
+ Petr Kadlec<br>
David Laight<br>
Don Libes <br>
Paul Lieverse<br>
+ Toby Lyward<br>
+ Wil Mahan<br>
Jindrich Makovicka <br>
David Mediavilla <br>
Raphael Moll<br>
Adam Piggott<br>
- Oliver Stoeneberg<br>
- Martin Thomas<br>
Roberto Ragusa<br>
Félix Rauch<br>
Maynard Riley<br>
+ Chung-chieh Shan<br>
Spinor S<br>
Bart Schelstraete<br>
+ Oliver Stoeneberg<br>
+ Peter Thoenen<br>
+ Martin Thomas<br>
Bobby G. Vinyard<br>
Jörg Weinmann <br>
Darren Wiebe<br>
CLASS="LITERALLAYOUT"
> Junkbusters Corp.<br>
Anonymous Coders<br>
- Ulrich Drepper<br>
- Philip Hazel</P
+ Ulrich Drepper (strptime fallback)<br>
+ Philip Hazel (PCRE)</P
></DIV
></DIV
><DIV
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Filter Files</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="FILTER-FILE"
-></A
->9. Filter Files</H1
+>9. Filter Files</A
+></H1
><P
> On-the-fly text substitutions need
to be defined in a <SPAN
><H2
CLASS="SECT2"
><A
-NAME="AEN4528"
-></A
->9.1. Filter File Tutorial</H2
+NAME="AEN4584"
+>9.1. Filter File Tutorial</A
+></H2
><P
> Now, let's complete our <SPAN
CLASS="QUOTE"
CLASS="SECT2"
><A
NAME="PREDEFINED-FILTERS"
-></A
->9.2. The Pre-defined Filters</H2
+>9.2. The Pre-defined Filters</A
+></H2
><P
>The distribution <TT
CLASS="FILENAME"
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Privoxy 3.0.7 User Manual</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="NEXT"
TITLE="Introduction"
HREF="introduction.html"><LINK
CLASS="TITLE"
><A
NAME="AEN2"
-></A
->Privoxy 3.0.7 User Manual</H1
+>Privoxy 3.0.7 User Manual</A
+></H1
><P
CLASS="PUBDATE"
> <SUB
><BR></P
><P
CLASS="PUBDATE"
->$Id: user-manual.sgml,v 2.32 2007/06/07 12:36:22 fabiankeil Exp $<BR></P
+>$Id: user-manual.sgml,v 2.38 2007/09/22 16:01:42 fabiankeil Exp $<BR></P
><DIV
><DIV
CLASS="ABSTRACT"
+><P
+></P
><A
NAME="AEN9"
></A
><P
-></P
-><P
> The <I
CLASS="CITETITLE"
>Privoxy User Manual</I
><DL
><DT
>6.1. <A
-HREF="configuration.html#AEN755"
+HREF="configuration.html#AEN762"
>Controlling Privoxy with Your Web Browser</A
></DT
><DT
></DT
><DT
>7.5.6. <A
+HREF="config.html#ALLOW-CGI-REQUEST-CRUNCHING"
+>allow-cgi-request-crunching</A
+></DT
+><DT
+>7.5.7. <A
HREF="config.html#SPLIT-LARGE-FORMS"
>split-large-forms</A
></DT
><DL
><DT
>8.1. <A
-HREF="actions-file.html#AEN2160"
+HREF="actions-file.html#AEN2206"
>Finding the Right Mix</A
></DT
><DT
>8.2. <A
-HREF="actions-file.html#AEN2167"
+HREF="actions-file.html#AEN2213"
>How to Edit</A
></DT
><DT
><DL
><DT
>8.4.1. <A
-HREF="actions-file.html#AEN2250"
+HREF="actions-file.html#AEN2303"
>The Domain Pattern</A
></DT
><DT
>8.4.2. <A
-HREF="actions-file.html#AEN2321"
+HREF="actions-file.html#AEN2374"
>The Path Pattern</A
></DT
><DT
></DT
><DT
>8.5.39. <A
-HREF="actions-file.html#AEN4122"
+HREF="actions-file.html#AEN4178"
>Summary</A
></DT
></DL
><DL
><DT
>8.7.1. <A
-HREF="actions-file.html#AEN4187"
+HREF="actions-file.html#AEN4243"
>default.action</A
></DT
><DT
>8.7.2. <A
-HREF="actions-file.html#AEN4374"
+HREF="actions-file.html#AEN4430"
>user.action</A
></DT
></DL
><DL
><DT
>9.1. <A
-HREF="filter-file.html#AEN4528"
+HREF="filter-file.html#AEN4584"
>Filter File Tutorial</A
></DT
><DT
><DL
><DT
>12.1. <A
-HREF="copyright.html#AEN4997"
+HREF="copyright.html#AEN5054"
>License</A
></DT
><DT
></DT
><DT
>14.2. <A
-HREF="appendix.html#AEN5252"
+HREF="appendix.html#AEN5309"
>Privoxy's Internal Pages</A
></DT
><DD
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Installation</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="INSTALLATION"
-></A
->2. Installation</H1
+>2. Installation</A
+></H1
><P
> <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="INSTALLATION-PACKAGES"
-></A
->2.1. Binary Packages</H2
+>2.1. Binary Packages</A
+></H2
><P
>How to install the binary packages depends on your operating system:</P
><DIV
CLASS="SECT3"
><A
NAME="INSTALLATION-PACK-RPM"
-></A
->2.1.1. Red Hat and Fedora RPMs</H3
+>2.1.1. Red Hat and Fedora RPMs</A
+></H3
><P
> RPMs can be installed with <TT
CLASS="LITERAL"
CLASS="SECT3"
><A
NAME="INSTALLATION-DEB"
-></A
->2.1.2. Debian</H3
+>2.1.2. Debian</A
+></H3
><P
> DEBs can be installed with <TT
CLASS="LITERAL"
CLASS="SECT3"
><A
NAME="INSTALLATION-PACK-WIN"
-></A
->2.1.3. Windows</H3
+>2.1.3. Windows</A
+></H3
><P
> Just double-click the installer, which will guide you through
the installation process. You will find the configuration files
CLASS="SECT3"
><A
NAME="INSTALLATION-PACK-BINTGZ"
-></A
->2.1.4. Solaris, NetBSD, HP-UX</H3
+>2.1.4. Solaris, NetBSD, HP-UX</A
+></H3
><P
> Create a new directory, <TT
CLASS="LITERAL"
CLASS="SECT3"
><A
NAME="INSTALLATION-OS2"
-></A
->2.1.5. OS/2</H3
+>2.1.5. OS/2</A
+></H3
><P
> First, make sure that no previous installations of
<SPAN
CLASS="SECT3"
><A
NAME="INSTALLATION-MAC"
-></A
->2.1.6. Mac OSX</H3
+>2.1.6. Mac OSX</A
+></H3
><P
> Unzip the downloaded file (you can either double-click on the file
from the finder, or from the desktop if you downloaded it there).
CLASS="SECT3"
><A
NAME="INSTALLATION-AMIGA"
-></A
->2.1.7. AmigaOS</H3
+>2.1.7. AmigaOS</A
+></H3
><P
> Copy and then unpack the <TT
CLASS="FILENAME"
CLASS="SECT3"
><A
NAME="INSTALLATION-TBZ"
-></A
->2.1.8. FreeBSD</H3
+>2.1.8. FreeBSD</A
+></H3
><P
> Privoxy is part of FreeBSD's Ports Collection, you can build and install
it with <TT
CLASS="SECT3"
><A
NAME="INSTALLATTION-GENTOO"
-></A
->2.1.9. Gentoo</H3
+>2.1.9. Gentoo</A
+></H3
><P
> Gentoo source packages (Ebuilds) for <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="INSTALLATION-SOURCE"
-></A
->2.2. Building from Source</H2
+>2.2. Building from Source</A
+></H2
><P
> The most convenient way to obtain the <SPAN
CLASS="APPLICATION"
><TD
><PRE
CLASS="SCREEN"
-> tar xzvf privoxy-3.0.7-src* [.tgz or .tar.gz]
- cd privoxy-3.0.7</PRE
+> tar xzvf privoxy-3.0.7-beta-src* [.tgz or .tar.gz]
+ cd privoxy-3.0.7-beta</PRE
></TD
></TR
></TABLE
CLASS="SECT2"
><A
NAME="INSTALLATION-KEEPUPDATED"
-></A
->2.3. Keeping your Installation Up-to-Date</H2
+>2.3. Keeping your Installation Up-to-Date</A
+></H2
><P
> As user feedback comes in and development continues, we will make updated versions
of both the main <A
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Introduction</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="INTRODUCTION"
-></A
->1. Introduction</H1
+>1. Introduction</A
+></H1
><P
-> This documentation is included with the current stable version of
+> This documentation is included with the current UNRELEASED version of
<SPAN
CLASS="APPLICATION"
>Privoxy</SPAN
->, v.3.0.7.</P
+>, v.3.0.7,
+ and is mostly complete at this point. The most up to date reference for the
+ time being is still the comments in the source files and in the individual
+ configuration files. Development of a new version is currently nearing
+ completion, and includes significant changes and enhancements over
+ earlier versions. .</P
+><P
+> Since this is a UNRELEASED version, not all new features are well tested. This
+ documentation may be slightly out of sync as a result (especially with
+ CVS sources). And there <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>may be</I
+></SPAN
+> bugs, though hopefully
+ not many! </P
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="FEATURES"
-></A
->1.1. Features</H2
+>1.1. Features</A
+></H2
><P
> In addition to the core
features of ad blocking and
CLASS="APPLICATION"
>Privoxy</SPAN
> provides many supplemental
- features,
+ features, some of them currently under development,
that give the end-user more control, more privacy and more freedom:</P
><P
> <P
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Quickstart to Using Privoxy</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="QUICKSTART"
-></A
->4. Quickstart to Using Privoxy</H1
+>4. Quickstart to Using Privoxy</A
+></H1
><P
> <P
></P
CLASS="SECT2"
><A
NAME="QUICKSTART-AD-BLOCKING"
-></A
->4.1. Quickstart to Ad Blocking</H2
+>4.1. Quickstart to Ad Blocking</A
+></H2
><P
> Ad blocking is but one of <SPAN
CLASS="APPLICATION"
> <DIV
CLASS="FIGURE"
><A
-NAME="AEN513"
+NAME="AEN515"
></A
><P
><B
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>See Also</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="SEEALSO"
-></A
->13. See Also</H1
+>13. See Also</A
+></H1
><P
> Other references and sites of interest to <SPAN
CLASS="APPLICATION"
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Starting Privoxy</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="STARTUP"
-></A
->5. Starting Privoxy</H1
+>5. Starting Privoxy</A
+></H1
><P
> Before launching <SPAN
CLASS="APPLICATION"
> <DIV
CLASS="FIGURE"
><A
-NAME="AEN568"
+NAME="AEN570"
></A
><P
><B
> <DIV
CLASS="FIGURE"
><A
-NAME="AEN612"
+NAME="AEN614"
></A
><P
><B
CLASS="SECT2"
><A
NAME="START-REDHAT"
-></A
->5.1. Red Hat and Fedora</H2
+>5.1. Red Hat and Fedora</A
+></H2
><P
> A default Red Hat installation may not start <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="START-DEBIAN"
-></A
->5.2. Debian</H2
+>5.2. Debian</A
+></H2
><P
> We use a script. Note that Debian typically starts <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="START-WINDOWS"
-></A
->5.3. Windows</H2
+>5.3. Windows</A
+></H2
><P
>Click on the <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="START-UNICES"
-></A
->5.4. Solaris, NetBSD, FreeBSD, HP-UX and others</H2
+>5.4. Solaris, NetBSD, FreeBSD, HP-UX and others</A
+></H2
><P
>Example Unix startup command:</P
><P
CLASS="SECT2"
><A
NAME="START-OS2"
-></A
->5.5. OS/2</H2
+>5.5. OS/2</A
+></H2
><P
> During installation, <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="START-MACOSX"
-></A
->5.6. Mac OSX</H2
+>5.6. Mac OSX</A
+></H2
><P
> During installation, <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="START-AMIGAOS"
-></A
->5.7. AmigaOS</H2
+>5.7. AmigaOS</A
+></H2
><P
> Start <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="START-GENTOO"
-></A
->5.8. Gentoo</H2
+>5.8. Gentoo</A
+></H2
><P
> A script is again used. It will use the file <TT
CLASS="FILENAME"
CLASS="SECT2"
><A
NAME="CMDOPTIONS"
-></A
->5.9. Command Line Options</H2
+>5.9. Command Line Options</A
+></H2
><P
> <SPAN
CLASS="APPLICATION"
>--pidfile FILE</I
></SPAN
>
-
</P
><P
> On startup, write the process ID to <SPAN
>--user USER[.GROUP]</I
></SPAN
>
-
</P
><P
> After (optionally) writing the PID file, assume the user ID of
>--chroot</I
></SPAN
>
-
</P
><P
> Before changing to the user ID given in the <SPAN
></LI
><LI
><P
+> <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>--pre-chroot-nslookup hostname</I
+></SPAN
+>
+ </P
+><P
+> Specifies a hostname to look up before doing a chroot. On some systems, initializing the
+ resolver library involves reading config files from /etc and/or loading additional shared
+ libraries from /lib. On these systems, doing a hostname lookup before the chroot reduces
+ the number of files that must be copied into the chroot tree.
+ </P
+><P
+> For fastest startup speed, a good value is a hostname that is not in /etc/hosts but that
+ your local name server (listed in /etc/resolv.conf) can resolve without recursion
+ (that is, without having to ask any other name servers). The hostname need not exist,
+ but if it doesn't, an error message (which can be ignored) will be output.
+ </P
+></LI
+><LI
+><P
> <SPAN
CLASS="emphasis"
><I
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Privoxy's Template Files</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="TEMPLATES"
-></A
->10. Privoxy's Template Files</H1
+>10. Privoxy's Template Files</A
+></H1
><P
> All <SPAN
CLASS="APPLICATION"
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>What's New in this Release</TITLE
><META
NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
-"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Privoxy 3.0.7 User Manual"
HREF="index.html"><LINK
CLASS="SECT1"
><A
NAME="WHATSNEW"
-></A
->3. What's New in this Release</H1
+>3. What's New in this Release</A
+></H1
><P
> There are many improvements and new features since <SPAN
CLASS="APPLICATION"
CLASS="SECT2"
><A
NAME="UPGRADERSNOTE"
-></A
->3.1. Note to Upgraders</H2
+>3.1. Note to Upgraders</A
+></H2
><P
> A quick list of things to be aware of before upgrading from earlier
versions of <SPAN