Correcting some of my typos, and some additions.
[privoxy.git] / doc / source / user-manual.sgml
index 1db65a5..b007317 100644 (file)
@@ -6,7 +6,7 @@
                 This file belongs into
                 ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
                 
- $Id: user-manual.sgml,v 1.43 2002/03/08 00:47:32 hal9 Exp $
+ $Id: user-manual.sgml,v 1.47 2002/03/11 13:13:27 swa Exp $
 
  Written by and Copyright (C) 2001 the SourceForge
  IJBSWA team.  http://ijbswa.sourceforge.net
@@ -28,7 +28,7 @@ Hal Burgiss <hal@foobox.net>
 <artheader>
 <title>Junkbuster User Manual</title>
 
-<pubdate>$Id: user-manual.sgml,v 1.43 2002/03/08 00:47:32 hal9 Exp $</pubdate>
+<pubdate>$Id: user-manual.sgml,v 1.47 2002/03/11 13:13:27 swa Exp $</pubdate>
 
 <authorgroup>
  <author>
@@ -40,18 +40,23 @@ Hal Burgiss <hal@foobox.net>
 
 <abstract>
  <para>
-  The user manual gives users information on how to install, configure
-  and use <application>Internet Junkbuster</application>.
-  <application>Internet Junkbuster</application> is an application that
-  provides privacy and security to users of the World Wide Web.
+  The user manual gives users information on how to install, configure and use
+  <application>Internet Junkbuster</application>. <application>Internet
+  Junkbuster</application> is a web proxy with advanced filtering capabilities
+  for protecting privacy, filtering web page content, managing cookies,
+  controlling access, and removing ads, banners, pop-ups and other obnoxious
+  Internet Junk. Junkbuster has a very flexible configuration and can be
+  customized to suit individual needs and tastes. <application>Internet
+  Junkbuster</application> has application for both stand-alone systems and
+  multi-user networks.
  </para>
  <para>
 You can find the latest version of the user manual at  <ulink url="http://ijbswa.sourceforge.net/user-manual/">http://ijbswa.sourceforge.net/user-manual/</ulink>.
  </para>
 
- <para>
-  Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>.
- </para>
+<!--   <para> -->
+<!--    Feel free to send a note to the developers at <email>ijbswa-developers@lists.sourceforge.net</email>. -->
+<!--   </para> -->
 </abstract>
 
 </artheader>
@@ -184,7 +189,7 @@ You can find the latest version of the user manual at  <ulink url="http://ijbswa
  <listitem>
   <para>
    Builds from source on most UNIX-like systems. Packages available for: Linux
-   (RedHat, SuSE, or Debian), Windows, Sun Solaris, Mac OSX, OS/2.
+   (RedHat, SuSE, or Debian), Windows, Sun Solaris, Mac OSX, OS/2, HP-UX 11 and AmigaOS.
  
   </para>
  </listitem> 
@@ -555,8 +560,9 @@ Please choose from the following options:
 
   <listitem>
    <para>
-    The <filename>re_filterfile</filename> file can be used to rewrite the raw
-    page content, including text as well as embedded HTML and JavaScript.
+    The <filename>re_filterfile</filename> file can be used to re-write the raw
+    page content, including viewable text as well as embedded HTML and JavaScript,
+    and whatever else lurks on any given web page.
    </para>
   </listitem> 
 
@@ -706,10 +712,9 @@ Please choose from the following options:
  apply to requests for each site. Default: Cookies to and from all
  destinations are kept only during the current browser session (i.e. they 
  are not saved to disk). Pop-ups are disabled for all sites. All sites are
- filtered if <quote>re_filterfile</quote> specified according to the 
- contents of <quote>re_filterfile</quote>. No sites are blocked. The 
- JunkBuster logo is displayed for filtered ads and other images . The syntax
- of this file is explained in detail <link
+ filtered through selected sections of <quote>re_filterfile</quote>. No sites
+ are blocked. The JunkBuster logo is displayed for filtered ads and other
+ images . The syntax of this file is explained in detail <link
  linkend="actionsfile">below</link>. 
 </para>
 
@@ -724,12 +729,13 @@ Please choose from the following options:
 </para>
 
 <para>
- The <quote>re_filterfile</quote> file contains content modification rules.
- These rules permit powerful changes on the content of Web pages, e.g., you
- could disable your favorite JavaScript annoyances, rewrite the actual
- content, or just have some fun replacing <quote>Microsoft</quote> with
- <quote>MicroSuck</quote> wherever it appears on a Web page. Default: No
- content modification, or whatever the developers are playing with :-/
+ The <quote>re_filterfile</quote> file contains content modification rules 
+ that use <quote>regular expressions</quote>. These rules permit powerful
+ changes on the content of Web pages, e.g., you could disable your favorite
+ JavaScript annoyances, re-write the actual displayed text, or just have some
+ fun replacing <quote>Microsoft</quote> with <quote>MicroSuck</quote> wherever
+ it appears on a Web page. Default: whatever the developers are playing with
+ :-/
 </para>
 
 <para>
@@ -2215,17 +2221,80 @@ Removed references to Win32. HB 09/23/01
 
  <listitem>
   <para>  
-   Filter the website through the re_filterfile:
-  </para>
+   Apply the filters in the <literal>section_header</literal> 
+   section of the <filename>re_filterfile</filename> file to the site(s).
+   <filename>Re_filterfile</filename> sections are grouped according to like
+   functionality. 
+  </para> 
+   
   <para>
    <literal>
     <msgtext> 
      <literallayout>
- <emphasis>+filter{filename}</emphasis>
+ <emphasis>+filter{section_header}</emphasis>
      </literallayout>
     </msgtext> 
    </literal>
   </para>
+
+  <para>   
+   Filter sections that are pre-defined in the supplied
+   <filename>re_filterfile</filename> include:
+  </para>
+
+ <blockquote>
+  <simplelist>
+   <member>
+     <emphasis>html-annoyances</emphasis>:  Get rid of particularly annoying HTML abuse.
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>js-annoyances</emphasis>:    Get rid of particularly annoying JavaScript abuse
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>no-poups</emphasis>:         Kill all popups in JS and HTML
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>frameset-borders</emphasis>: Give frames a border
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>webbugs</emphasis>:          Squish WebBugs (1x1 invisible GIFs used for user tracking)
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>no-refresh</emphasis>:       Automatic refresh sucks on auto-dialup lines
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>fun</emphasis>:              Text replacements  for subversive browsing fun!
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>nimda</emphasis>:            Remove (virus) Nimda code.
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+     <emphasis>banners-by-size</emphasis>:  Kill banners by size
+   </member>
+  </simplelist>
+  <simplelist>
+   <member>
+    <emphasis>crude-parental</emphasis>:   Kill all web pages that contain the words "sex" or "warez"
+   </member>
+  </simplelist>
+ </blockquote>
+
  </listitem>
 
  <listitem>
@@ -2382,6 +2451,7 @@ Removed references to Win32. HB 09/23/01
      <literallayout>
   <emphasis>+image-blocker{logo}</emphasis>
   <emphasis>+image-blocker{blank}</emphasis>
+  <emphasis>+image-blocker{pattern}</emphasis>
   <emphasis>+image-blocker{http://i.j.b/send-banner}</emphasis>
      </literallayout>
     </msgtext> 
@@ -2616,17 +2686,21 @@ Removed references to Win32. HB 09/23/01
 </para>
 
 <para>
- Turn on page filtering, with one exception for sourceforge:
-</para>
+ Turn on page filtering according to rules in the defined sections 
+ of <filename>refilterfile</filename>, and make one exception for 
+ sourceforge:
+ </para>
 
 <para>
  <literal>
   <msgtext> 
    <literallayout>
- # Run everything through the default filter file (<filename>re_filterfile</filename>):
- {+filter}
- # But please don't re_filter code from sourceforge!
+ # Run everything through the filter file, using only the
+ # specified sections:
+ +filter{html-annoyances} +filter{js-annoyances} +filter{no-popups}\
+ +filter{webbugs} +filter{nimda} +filter{banners-by-size}
+              
+ # Then disable filtering of code from sourceforge!
  {-filter}
  .cvs.sourceforge.net
    </literallayout>
@@ -2784,16 +2858,24 @@ Removed references to Win32. HB 09/23/01
 <sect2 id="filterfile">
 <title>The Filter File</title>
 <para>
- The filter file defines what filtering of web pages
- <application>Junkbuster</application> does. The default filter file is 
- <filename>re_filterfile</filename>, located in the config directory. In this 
- file, <emphasis>any document content</emphasis>, whether viewable text or
- embedded non-visible content, can be changed. 
+ Any web page can be dynamically modified with the filter file. This
+ modification can be removal, or re-writing, of any web page content,
+ including tags and non-visible content. The default filter file is
+ <filename>re_filterfile</filename>, located in the config directory. 
+</para>
+
+<para>
+ The included example file is divided into sections. Each section begins 
+ with the <literal>FILTER</literal> keyword, followed by the identifier 
+ for that section, e.g. <quote>FILTER: webbugs</quote>. Each section performs
+ a similar type of filtering, such as <quote>html-annoyances</quote>.
+
 </para>
 
 <para>
  This file uses regular expressions to alter or remove any string in the
- target page. Some examples from the included default <filename>re_filterfile</filename>:
+ target page. The expressions can only operate on one line at a time. Some
+ examples from the included default <filename>re_filterfile</filename>:
 </para>
 
 <para>
@@ -2805,9 +2887,24 @@ Removed references to Win32. HB 09/23/01
  <literal>
   <msgtext> 
    <literallayout>
- # The status bar is for displaying link targets, not pointless buzzwords.
- # Again, check it out on http://www.airport-cgn.de/.
- s/status='.*?';*//ig
+ FILTER: html-annoyances
+
+ # New browser windows should be resizeable and have a location and status
+ # bar. Make it so.
+ #
+ s/resizable="?(no|0)"?/resizable=1/ig s/noresize/yesresize/ig
+ s/location="?(no|0)"?/location=1/ig s/status="?(no|0)"?/status=1/ig
+ s/scrolling="?(no|0|Auto)"?/scrolling=1/ig
+ s/menubar="?(no|0)"?/menubar=1/ig 
+
+ # The &lt;BLINK&gt; tag was a crime!
+ #
+ s*&lt;blink&gt;|&lt;/blink&gt;**ig
+
+ # Is this evil? 
+ #
+ #s/framespacing="?(no|0)"?//ig
+ #s/margin(height|width)=[0-9]*//gi
    </literallayout>
   </msgtext> 
  </literal>
@@ -2815,32 +2912,37 @@ Removed references to Win32. HB 09/23/01
 
 <para>
  Just for kicks, replace any occurrence of <quote>Microsoft</quote> with
- <quote>MicroSuck</quote>: 
+ <quote>MicroSuck</quote>, and have a little fun with topical buzzwords
 </para>
 
 <para>
  <literal>
   <msgtext> 
    <literallayout>
+ FILTER: fun
+
  s/microsoft(?!.com)/MicroSuck/ig
+
+ # Buzzword Bingo:
+ #
+ s/industry-leading|cutting-edge|award-winning/&lt;font color=red&gt;&lt;b&gt;BINGO!&lt;/b&gt;&lt;/font&gt;/ig
    </literallayout>
   </msgtext> 
  </literal>
 </para>
 
 <para>
- Kill those auto-refresh tags:
+ Kill those pesky little web-bugs:
 </para>
 
 <para>
  <literal>
   <msgtext> 
    <literallayout>
- # Kill refresh tags. I like to refresh myself. Manually.
- # check it out on http://www.airport-cgn.de/ and go to the arrivals page.
- #
- s/&lt;meta[^&gt;]*http-equiv[^&gt;]*refresh.*URL=([^&gt;]*?)"?&gt;/&lt;link rev="x-refresh" href=$1&gt;/i
- s/&lt;meta[^&gt;]*http-equiv="?page-enter"?[^&gt;]*content=[^&gt;]*&gt;/&lt;!--no page enter for me--&gt;/i
+ # webbugs: Squish WebBugs (1x1 invisible GIFs used for user tracking)
+ FILTER: webbugs
+
+ s/&lt;img\s+[^&gt;]*?(width|height)\s*=\s*['"]?1\D[^&gt;]*?(width|height)\s*=\s*['"]?1(\D[^&gt;]*?)?>/&lt;!-- Squished WebBug --&gt;/sig
    </literallayout>
   </msgtext> 
  </literal>
@@ -3440,6 +3542,141 @@ For any other issues, feel free to use the <ulink url="http://sourceforge.net/ma
 
 </sect2>
 
+<!--  ~  End section  ~  -->
+
+
+<!--   ~~~~~       New section      ~~~~~     -->
+<sect2>
+<title>JunkBuster's Internal Pages</title>
+
+<para>
+ Since <application>JunkBuster</application> proxies each requested 
+ web page, it is easy for <application>JunkBuster</application> to 
+ trap certain URLs. In this way, we can talk directly to
+ <application>JunkBuster</application>, and see how it is 
+ configured, see how our rules are being applied, change these 
+ rules and other configuration options, and even turn
+ <application>JunkBuster's</application> filtering off, all with 
+ a web browser.
+
+</para>
+
+<para>
+ The URLs listed below are the special ones that allow direct access 
+ to <application>JunkBuster</application>. Of course,
+ <application>JunkBuster</application> must be running to access these. If 
+ not, you will get a friendly error message.
+
+</para>
+
+<para>
+ <itemizedlist>
+
+ <listitem>
+  <para>  
+   Junkbuster main page: 
+  </para>
+  <blockquote>
+   <para> 
+     <ulink url="http://ijbswa.sourceforge.net/config/">http://ijbswa.sourceforge.net/config/</ulink>
+   </para>
+  </blockquote>
+  <para>
+   Alternately, this may be reached at <ulink url="http://i.j.b/">http://i.j.b/</ulink>, 
+   but this variation may not work as reliably as the above in some
+   configurations.
+  </para>
+ </listitem>
+
+ <listitem>
+  <para>  
+    Show information about the current configuration: 
+  </para>
+   <blockquote>
+   <para> 
+    <ulink url="http://ijbswa.sourceforge.net/config/show-status">http://ijbswa.sourceforge.net/config/show-status</ulink>
+   </para>
+  </blockquote>
+ </listitem>
+ <listitem>
+  <para>  
+    Show the source code version numbers:
+  </para>
+  <blockquote>
+   <para> 
+    <ulink url="http://ijbswa.sourceforge.net/config/show-version">http://ijbswa.sourceforge.net/config/show-version</ulink>
+   </para>
+  </blockquote>
+ </listitem>
+ <listitem>
+  <para>  
+   Show the client's request headers:
+  </para>
+  <blockquote>
+   <para> 
+    <ulink url="http://ijbswa.sourceforge.net/config/show-request">http://ijbswa.sourceforge.net/config/show-request</ulink>
+   </para>
+  </blockquote>
+ </listitem>
+ <listitem>
+  <para>  
+   Show which actions apply to a URL and why:
+  </para>
+   <blockquote>
+   <para> 
+    <ulink url="http://ijbswa.sourceforge.net/config/show-url-info">http://ijbswa.sourceforge.net/config/show-url-info</ulink>
+   </para>
+  </blockquote>
+ </listitem>
+ <listitem>
+  <para>  
+   Toggle JunkBuster on or off:
+  </para>
+   <blockquote>
+   <para> 
+    <ulink url="http://ijbswa.sourceforge.net/config/toggle">http://ijbswa.sourceforge.net/config/toggle</ulink>
+   </para>
+  </blockquote>
+  <para>
+   Short cuts. Turn off, then on: 
+  </para>
+   <blockquote>
+   <para> 
+     <ulink url="http://ijbswa.sourceforge.net/config/toggle?set=disable">http://ijbswa.sourceforge.net/config/toggle?set=disable</ulink>
+   </para>
+  </blockquote>
+   <blockquote>
+   <para> 
+     <ulink url="http://ijbswa.sourceforge.net/config/toggle?set=enable">http://ijbswa.sourceforge.net/config/toggle?set=enable</ulink>
+   </para>
+  </blockquote>
+ </listitem>
+
+ <listitem>
+  <para>  
+   Edit the actions list file:
+  </para>
+   <blockquote>
+   <para> 
+    <ulink url="http://ijbswa.sourceforge.net/config/edit-actions">http://ijbswa.sourceforge.net/config/edit-actions</ulink>
+   </para>
+  </blockquote>
+ </listitem>
+ </itemizedlist>
+</para>
+
+<para>
+ These may be bookmarked for quick reference.
+
+</para>
+
+</sect2>
+
 </sect1>
 
  <!--
@@ -3463,6 +3700,18 @@ For any other issues, feel free to use the <ulink url="http://sourceforge.net/ma
  Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
  $Log: user-manual.sgml,v $
+ Revision 1.47  2002/03/11 13:13:27  swa
+ correct feedback channels
+
+ Revision 1.46  2002/03/10 00:51:08  hal9
+ Added section on JB internal pages in Appendix.
+
+ Revision 1.45  2002/03/09 17:43:53  swa
+ more distros
+
+ Revision 1.44  2002/03/09 17:08:48  hal9
+ New section on Jon's actions file editor, and move some stuff around.
+
  Revision 1.43  2002/03/08 00:47:32  hal9
  Added imageblock{pattern}.