All HTML docs for 3.0.6 release.
[privoxy.git] / doc / webserver / user-manual / filter-file.html
index 4cdd83a..678c286 100644 (file)
@@ -7,17 +7,19 @@ NAME="GENERATOR"
 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
 "><LINK
 REL="HOME"
 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
 "><LINK
 REL="HOME"
-TITLE="Privoxy 3.0.4 User Manual"
+TITLE="Privoxy 3.0.6 User Manual"
 HREF="index.html"><LINK
 REL="PREVIOUS"
 TITLE="Actions Files"
 HREF="actions-file.html"><LINK
 REL="NEXT"
 HREF="index.html"><LINK
 REL="PREVIOUS"
 TITLE="Actions Files"
 HREF="actions-file.html"><LINK
 REL="NEXT"
-TITLE="Templates"
+TITLE="Privoxy's Template Files"
 HREF="templates.html"><LINK
 REL="STYLESHEET"
 TYPE="text/css"
 HREF="templates.html"><LINK
 REL="STYLESHEET"
 TYPE="text/css"
-HREF="../p_doc.css"></HEAD
+HREF="../p_doc.css">
+<LINK REL="STYLESHEET" TYPE="text/css" HREF="p_doc.css">
+</head
 ><BODY
 CLASS="SECT1"
 BGCOLOR="#EEEEEE"
 ><BODY
 CLASS="SECT1"
 BGCOLOR="#EEEEEE"
@@ -37,7 +39,7 @@ CELLSPACING="0"
 ><TH
 COLSPAN="3"
 ALIGN="center"
 ><TH
 COLSPAN="3"
 ALIGN="center"
->Privoxy 3.0.4 User Manual</TH
+>Privoxy 3.0.6 User Manual</TH
 ></TR
 ><TR
 ><TD
 ></TR
 ><TR
 ><TD
@@ -92,7 +94,7 @@ CLASS="QUOTE"
  can then be invoked as an <SPAN
 CLASS="QUOTE"
 >"action"</SPAN
  can then be invoked as an <SPAN
 CLASS="QUOTE"
 >"action"</SPAN
->. Mulitple filter files can be
+>. Multiple filter files can be
  defined through the <TT
 CLASS="LITERAL"
 > <A
  defined through the <TT
 CLASS="LITERAL"
 > <A
@@ -140,7 +142,7 @@ CLASS="QUOTE"
  your own"</SPAN
 > filters, you should first be familiar with HTML syntax, 
  and, of course, regular expressions. By default, filters are only applied 
  your own"</SPAN
 > filters, you should first be familiar with HTML syntax, 
  and, of course, regular expressions. By default, filters are only applied 
- to the document content, but can be extended to the headers with 
+ to the raw document content, but can be extended to the HTTP headers with 
  the supplemental actions: 
  <A
 HREF="actions-file.html#FILTER-CLIENT-HEADERS"
  the supplemental actions: 
  <A
 HREF="actions-file.html#FILTER-CLIENT-HEADERS"
@@ -272,19 +274,28 @@ CLASS="LITERAL"
 > is supported,
  which turns the default to ungreedy matching.</P
 ><P
 > is supported,
  which turns the default to ungreedy matching.</P
 ><P
-> If you are new to regular expressions, you might want to take a look at
+> If you are new to 
+  <A
+HREF="http://en.wikipedia.org/wiki/Regular_expressions"
+TARGET="_top"
+><SPAN
+CLASS="QUOTE"
+>"Regular
+  Expressions"</SPAN
+></A
+>, you might want to take a look at
  the <A
 HREF="appendix.html#REGEX"
 >Appendix on regular expressions</A
 >, and
  see the <A
  the <A
 HREF="appendix.html#REGEX"
 >Appendix on regular expressions</A
 >, and
  see the <A
-HREF="http://perldoc.com/perl5.6.1/pod/perl.html"
+HREF="http://perldoc.perl.org/perlre.html"
 TARGET="_top"
 >Perl
  manual</A
 > for
  <A
 TARGET="_top"
 >Perl
  manual</A
 > for
  <A
-HREF="http://perldoc.com/perl5.6.1/pod/perlop.html#s-PATTERN-REPLACEMENT-egimosx"
+HREF="http://perldoc.perl.org/perlop.html"
 TARGET="_top"
 >the 
  <TT
 TARGET="_top"
 >the 
  <TT
@@ -292,7 +303,7 @@ CLASS="LITERAL"
 >s///</TT
 > operator's syntax</A
 > and <A
 >s///</TT
 > operator's syntax</A
 > and <A
-HREF="http://perldoc.com/perl5.6.1/pod/perlre.html"
+HREF="http://perldoc.perl.org/perlre.html"
 TARGET="_top"
 >Perl-style regular
  expressions</A
 TARGET="_top"
 >Perl-style regular
  expressions</A
@@ -303,7 +314,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4024"
+NAME="AEN4346"
 ></A
 >9.1. Filter File Tutorial</H2
 ><P
 ></A
 >9.1. Filter File Tutorial</H2
 ><P
@@ -666,7 +677,7 @@ CLASS="EMPHASIS"
 CLASS="LITERAL"
 >\1</TT
 > is
 CLASS="LITERAL"
 >\1</TT
 > is
- a backreference to the first parenthesis just like <TT
+ a back-reference to the first parenthesis just like <TT
 CLASS="LITERAL"
 >$1</TT
 > above,
 CLASS="LITERAL"
 >$1</TT
 > above,
@@ -677,7 +688,7 @@ CLASS="EMPHASIS"
 >pattern</I
 ></SPAN
 >, a backslash indicates
 >pattern</I
 ></SPAN
 >, a backslash indicates
- a backreference, whereas in the <SPAN
+ a back-reference, whereas in the <SPAN
 CLASS="emphasis"
 ><I
 CLASS="EMPHASIS"
 CLASS="emphasis"
 ><I
 CLASS="EMPHASIS"
@@ -889,12 +900,16 @@ CLASS="QUOTE"
 ><LI
 ><P
 >      removes code that causes new windows to be opened with undesired properties, such as being
 ><LI
 ><P
 >      removes code that causes new windows to be opened with undesired properties, such as being
-      full-screen, non-resizable, without location, status or menu bar etc.
+      full-screen, non-resizeable, without location, status or menu bar etc.
      </P
 ></LI
 ></UL
 >
    </P
      </P
 ></LI
 ></UL
 >
    </P
+><P
+>    Use with caution. This is an aggressive filter, and can break sites that 
+    rely heavily on JavaScript.
+   </P
 ></DD
 ><DT
 ><SPAN
 ></DD
 ><DT
 ><SPAN
@@ -908,7 +923,7 @@ CLASS="EMPHASIS"
 ><P
 >    This is a very radical measure. It removes virtually all JavaScript event bindings, which
     means that scripts can not react to user actions such as mouse movements or clicks, window
 ><P
 >    This is a very radical measure. It removes virtually all JavaScript event bindings, which
     means that scripts can not react to user actions such as mouse movements or clicks, window
-    resizing etc, anymore. 
+    resizing etc, anymore. Use with caution!
    </P
 ><P
 >    We <SPAN
    </P
 ><P
 >    We <SPAN
@@ -943,7 +958,7 @@ CLASS="LITERAL"
 >MARQUEE</TT
 > tags 
     are neutralized (yeah baby!), and browser windows will be created as
 >MARQUEE</TT
 > tags 
     are neutralized (yeah baby!), and browser windows will be created as
-    resizable (as of course they should be!), and will have location,
+    resizeable (as of course they should be!), and will have location,
     scroll and menu bars -- even if specified otherwise.
    </P
 ></DD
     scroll and menu bars -- even if specified otherwise.
    </P
 ></DD
@@ -957,7 +972,7 @@ CLASS="EMPHASIS"
 ></DT
 ><DD
 ><P
 ></DT
 ><DD
 ><P
->    Most cookies are set in the HTTP dialogue, where they can be intercepted
+>    Most cookies are set in the HTTP dialog, where they can be intercepted
     by the
     <TT
 CLASS="LITERAL"
     by the
     <TT
 CLASS="LITERAL"
@@ -977,8 +992,10 @@ HREF="actions-file.html#CRUNCH-OUTGOING-COOKIES"
     to sneak cookies to the browser on the content level.
    </P
 ><P
     to sneak cookies to the browser on the content level.
    </P
 ><P
->    This filter disables HTML and JavaScript code that reads or sets cookies. Use
-    it wherever you would also use the cookie crunch actions.
+>    This filter disables most HTML and JavaScript code that reads or sets
+    cookies. It cannot detect all clever uses of these types of code, so it 
+    should not be relied on as an absolute fix. Use it wherever you would also
+    use the cookie crunch actions. 
    </P
 ></DD
 ><DT
    </P
 ></DD
 ><DT
@@ -1017,8 +1034,17 @@ CLASS="QUOTE"
    </P
 ><P
 >    Technical note: The filter works by redefining the window.open JavaScript
    </P
 ><P
 >    Technical note: The filter works by redefining the window.open JavaScript
-    function to a dummy function during the loading and rendering phase of each
-    HTML page access, and restoring the function afterwards.
+    function to a dummy function, <TT
+CLASS="LITERAL"
+>PrivoxyWindowOpen()</TT
+>,
+    during the loading and rendering phase of each HTML page access, and
+    restoring the function afterward.
+   </P
+><P
+>    This is recommended only for browsers that cannot perform this function
+    reliably themselves. And be aware that some sites require such windows 
+    in order to function normally. Use with caution.
    </P
 ></DD
 ><DT
    </P
 ></DD
 ><DT
@@ -1038,9 +1064,9 @@ CLASS="EMPHASIS"
 >all</I
 ></SPAN
 > pop-up windows from opening.
 >all</I
 ></SPAN
 > pop-up windows from opening.
-    Note this should be used with more discretion than the above, since it is
-    more likely to break some sites that require pop-ups for normal usage. Use 
-    with caution.
+    Note this should be used with even more discretion than the above, since
+    it is more likely to break some sites that require pop-ups for normal
+    usage. Use with caution.
    </P
 ></DD
 ><DT
    </P
 ></DD
 ><DT
@@ -1082,6 +1108,16 @@ CLASS="EMPHASIS"
 >    Occasionally this filter will cause false positives on images that are not ads,
     but just happen to be of one of the standard banner sizes.
    </P
 >    Occasionally this filter will cause false positives on images that are not ads,
     but just happen to be of one of the standard banner sizes.
    </P
+><P
+>    Recommended only for those who require extreme ad blocking. The default 
+    block rules should catch 95+% of all ads <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>without</I
+></SPAN
+> this filter enabled.
+   </P
 ></DD
 ><DT
 ><SPAN
 ></DD
 ><DT
 ><SPAN
@@ -1113,7 +1149,7 @@ CLASS="EMPHASIS"
     As an HTML page is loaded by the browser, an embedded image tag causes the
     browser to contact a third-party site, disclosing the tracking information
     through the requested URL and/or cookies for that third-party domain, without
     As an HTML page is loaded by the browser, an embedded image tag causes the
     browser to contact a third-party site, disclosing the tracking information
     through the requested URL and/or cookies for that third-party domain, without
-    the use ever becoming aware of the interaction with the third-party site.
+    the user ever becoming aware of the interaction with the third-party site.
     HTML-ized spam also uses a similar technique to verify email addresses.
    </P
 ><P
     HTML-ized spam also uses a similar technique to verify email addresses.
    </P
 ><P
@@ -1154,7 +1190,7 @@ CLASS="EMPHASIS"
 ><P
 >    Many consider windows that move, or resize themselves to be abusive. This filter
     neutralizes the related JavaScript code. Note that some sites might not display
 ><P
 >    Many consider windows that move, or resize themselves to be abusive. This filter
     neutralizes the related JavaScript code. Note that some sites might not display
-    or behave as intended when using this filter.
+    or behave as intended when using this filter. Use with caution.
    </P
 ></DD
 ><DT
    </P
 ></DD
 ><DT
@@ -1196,7 +1232,7 @@ CLASS="EMPHASIS"
 >    This filter translates the MS-only characters into Latin-1 equivalents. 
     It is not necessary when using MS products, and will cause corruption of  
     all documents that use 8-bit character sets other than Latin-1. It's mostly
 >    This filter translates the MS-only characters into Latin-1 equivalents. 
     It is not necessary when using MS products, and will cause corruption of  
     all documents that use 8-bit character sets other than Latin-1. It's mostly
-    worthwhile for Europeans on non-MS platforms, if wierd garbage characters
+    worthwhile for Europeans on non-MS platforms, if weird garbage characters
     sometimes appear on some pages, or user agents that don't correct for this on 
     the fly.
  
     sometimes appear on some pages, or user agents that don't correct for this on 
     the fly.
  
@@ -1273,7 +1309,7 @@ CLASS="EMPHASIS"
 ></DT
 ><DD
 ><P
 ></DT
 ><DD
 ><P
->    A collection of text replacements to disable malicious HTML and JavaScript
+>    An experimental collection of text replacements to disable malicious HTML and JavaScript
     code that exploits known security holes in Internet Explorer.
    </P
 ><P
     code that exploits known security holes in Internet Explorer.
    </P
 ><P
@@ -1304,6 +1340,130 @@ CLASS="FILENAME"
     anything regarding this filter.
    </P
 ></DD
     anything regarding this filter.
    </P
 ></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>google</I
+></SPAN
+></DT
+><DD
+><P
+>    A CSS based block for Google text ads. Also removes a width limitation
+    and the toolbar advertisement.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>yahoo</I
+></SPAN
+></DT
+><DD
+><P
+>    Another CSS based block, this time for Yahoo text ads. And removes 
+    a width limitation as well.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>msn</I
+></SPAN
+></DT
+><DD
+><P
+>    Another CSS based block, this time for MSN text ads. And removes 
+    tracking URLs, as well as a width limitation.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>blogspot</I
+></SPAN
+></DT
+><DD
+><P
+>    Cleans up some Blogspot blogs. Read the fine print before using this one!
+   </P
+><P
+>    This filter also intentionally removes some navigation stuff and sets the
+    page width to 100%. As a result, some rounded <SPAN
+CLASS="QUOTE"
+>"corners"</SPAN
+> would
+    appear to early or not at all and as fixing this would require a browser
+    that understands background-size (CSS3), they are removed instead.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>xml-to-html</I
+></SPAN
+></DT
+><DD
+><P
+>    Header filter to change the Content-Type from xml to html.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>html-to-xml</I
+></SPAN
+></DT
+><DD
+><P
+>    Header filter to change the Content-Type from html to xml.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>no-ping</I
+></SPAN
+></DT
+><DD
+><P
+>    Removes the non-standard <TT
+CLASS="LITERAL"
+>ping</TT
+> attribute from
+    anchor and area HTML tags.
+   </P
+></DD
+><DT
+><SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>hide-tor-exit-notation</I
+></SPAN
+></DT
+><DD
+><P
+>    Header filter to remove the <B
+CLASS="COMMAND"
+>Tor</B
+> exit node notation
+    found in Host and Referer headers.
+   </P
+></DD
 ></DL
 ></DIV
 ></DIV
 ></DL
 ></DIV
 ></DIV
@@ -1362,7 +1522,7 @@ VALIGN="top"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->Templates</TD
+>Privoxy's Template Files</TD
 ></TR
 ></TABLE
 ></DIV
 ></TR
 ></TABLE
 ></DIV