FAQ: Add three ids to get stable link targets
[privoxy.git] / doc / source / faq.sgml
index 5cf9ae5..38f3cb5 100644 (file)
@@ -8,10 +8,10 @@
 <!entity history SYSTEM "history.sgml">
 <!entity copyright SYSTEM "copyright.sgml">
 <!entity license SYSTEM "license.sgml">
-<!entity p-version "3.0.27">
-<!entity p-status "UNRELEASED">
-<!entity % p-not-stable "INCLUDE">
-<!entity % p-stable "IGNORE">
+<!entity p-version "3.0.29">
+<!entity p-status "stable">
+<!entity % p-not-stable "IGNORE">
+<!entity % p-stable "INCLUDE">
 <!entity % p-text "IGNORE">        <!-- define we are not a text only doc -->
 <!entity % p-doc "INCLUDE">        <!-- and we are a formal doc           -->
 <!entity % p-supp-userman "INCLUDE"> <!-- Include all from supported.sgml -->
 <!entity  my-app "<application>Privoxy</application>">
 ]>
 <!--
- File        :  $Source: /cvsroot/ijbswa/current/doc/source/faq.sgml,v $
+ File        :  doc/source/faq.sgml
 
  Purpose     :  FAQ
-                This file belongs into
-                ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
 
- $Id: faq.sgml,v 2.135 2017/03/27 10:22:27 fabiankeil Exp $
-
- Copyright (C) 2001-2014 Privoxy Developers https://www.privoxy.org/
+ Copyright (C) 2001-2020 Privoxy Developers https://www.privoxy.org/
  See LICENSE.
 
  Based partially on the Internet Junkbuster FAQ originally written by and
  <subscript>
 <!-- Completely the wrong markup, but very little is allowed  -->
 <!-- in this part of an article. FIXME -->
- <link linkend="copyright">Copyright</link> &my-copy; 2001-2016 by
+ <link linkend="copyright">Copyright</link> &my-copy; 2001-2020 by
  <ulink url="https://www.privoxy.org/">Privoxy Developers</ulink>
  </subscript>
 </pubdate>
 
-<pubdate>$Id: faq.sgml,v 2.135 2017/03/27 10:22:27 fabiankeil Exp $</pubdate>
-
 <!--
 
 Note: this should generate a separate page, and a live link to it.
@@ -121,10 +115,6 @@ Hal.
  <ulink url="https://www.privoxy.org/">Privoxy</ulink>.
  It is not a substitute for the
  <ulink url="../user-manual/index.html"><citetitle>Privoxy User Manual</citetitle></ulink>.
-<!--
- This works, at least in some situtations:
- Test: <ulink url="privoxy-user-manual.pdf"><citetitle>User Manual</citetitle></ulink>.
--->
  </para>
 
 <!-- Include privoxy.sgml boilerplate: -->
@@ -491,7 +481,7 @@ warranty? Registration?</title>
    While it is partly out of date, it's still worth reading.
 </para>
 <para>
-   Our <ulink url="http://ijbswa.cvs.sourceforge.net/viewvc/ijbswa/current/TODO?view=markup">TODO list</ulink>
+   Our <ulink url="https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob_plain;f=TODO;hb=HEAD">TODO list</ulink>
    may be of interest to you as well.
    Please let us know if you want to work on one of the items listed.
 </para>
@@ -500,7 +490,7 @@ warranty? Registration?</title>
 <sect3 renderas="sect4" id="donate"><title>Would you like to donate?</title>
 <para>
  Donations are welcome. Our
- <ulink url="http://ijbswa.cvs.sourceforge.net/viewvc/ijbswa/current/TODO?view=markup">TODO list</ulink>
+ <ulink url="https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob_plain;f=TODO;hb=HEAD">TODO list</ulink>
  is rather long and being able to pay one (or more) developers to work on Privoxy
  would make a huge difference, even if it was only for a couple of weeks. Donations may
  also be used for Privoxy-related travel expenses (for example to attend conferences),
@@ -518,31 +508,6 @@ warranty? Registration?</title>
  <ulink url="https://www.spi-inc.org/donations">SPI's general donation page</ulink>.
 </para>
 
-<para>
- You can also donate to Privoxy using a bank account or a "Paypal" address:
-</para>
-<literallayout>
- Name on account: <ulink url="https://www.zwiebelfreunde.de/">Zwiebelfreunde e.V.</ulink>
- IBAN: DE95430609671126825604
- BIC: GENODEM1GLS
- Bank: GLS Bank
-</literallayout>
-<literallayout>
- "Paypal" address: privoxy@zwiebelfreunde.de
-</literallayout>
-<para>
- Donations made through Zwiebelfreunde e.V. are tax-deductible in Germany
- and other countries that recognize German charitable clubs. Feel free to
- use the Subject field to provide a name to be credited and a list of TODO
- list items you are interested in the most. For example: Max Mustermann: #16, #1, #14.
-</para>
-
-<para>
- Note that donations made through Zwiebelfreunde e.V. currently can't be checked
- automatically so you may not get credited right away. The credits currently
- reflect donations received before 2016-01-14.
-</para>
-
 <para>
  If you have any questions regarding donations please mail to either the
  public user mailing list or, if it's a private matter, to
@@ -557,10 +522,10 @@ warranty? Registration?</title>
 </para>
 <variablelist>
  <varlistentry>
-  <term>Gold (10000 EUR/year)</term>
+  <term>Gold (12000 USD/year)</term>
   <listitem>
    <para>
-    Logo shown at the bottom of the
+    Logo or text link shown at the bottom of the
     <ulink url="https://www.privoxy.org/">Privoxy homepage</ulink>.
     Logo, link and self description on the
     <ulink url="https://www.privoxy.org/sponsors/">sponsor page</ulink>.
@@ -568,10 +533,10 @@ warranty? Registration?</title>
   </listitem>
  </varlistentry>
  <varlistentry>
-  <term>Silver (1000 EUR/year)</term>
+  <term>Silver (1200 USD/year)</term>
   <listitem>
    <para>
-    Logo shown randomly at the bottom of the
+    Logo or text link shown at the bottom of the
     <ulink url="https://www.privoxy.org/">Privoxy homepage</ulink>.
     Logo, link and self description on the
     <ulink url="https://www.privoxy.org/sponsors/">sponsor page</ulink>.
@@ -579,7 +544,7 @@ warranty? Registration?</title>
   </listitem>
  </varlistentry>
  <varlistentry>
-  <term>Bronze (500 EUR/year)</term>
+  <term>Bronze (600 USD/year)</term>
   <listitem>
    <para>
     Logo and link on the <ulink url="https://www.privoxy.org/sponsors/">sponsor page</ulink>.
@@ -592,13 +557,18 @@ warranty? Registration?</title>
  our server, no requests are made to the sponsor website unless
  the links are being used.
 </para>
+<para>
+ Link targets are without path (<quote>https://www.example.org/</quote>
+ not <quote>https://www.example.org/seo/keyword/spam/</quote>).
+</para>
 <para>
  The details may change over time but changes will only affect new sponsors
  (or existing sponsors that explicitly agreed to the changes).
 </para>
 <para>
  If you want to become a sponsor, please contact
- <ulink url="mailto:fk@fabiankeil.de">Fabian Keil</ulink>.
+ <ulink url="mailto:fk@fabiankeil.de">Fabian Keil</ulink>
+ and include the link target in the mail.
  New sponsors are only accepted if no developer objects.
 </para>
 
@@ -689,7 +659,6 @@ special I have to do now?</title>
  details</ulink>. You should also flush your browser's memory and disk
  cache to get rid of any cached junk items, and remove any stored
  <ulink url="http://en.wikipedia.org/wiki/Browser_cookie">cookies</ulink>.
-
 </para>
 
 </sect2>
@@ -866,7 +835,7 @@ way to do this?</title>
 </sect2>
 
 
-<sect2 renderas="sect3">
+<sect2 renderas="sect3" id="actionfile-differences">
 <title>There are several different <quote>actions</quote> files. What are
 the differences?</title>
 <para>
@@ -879,10 +848,9 @@ the differences?</title>
 <sect2 renderas="sect3" id="getupdates"><title>Where can I get updated Actions Files?</title>
  <para>
   Based on your feedback and the continuing development, updates of
-  <filename>default.action</filename> will be
-  made available from time to time on the <ulink
-  url="https://sourceforge.net/project/showfiles.php?group_id=11118">files section</ulink> of
-  our <ulink url="https://sourceforge.net/projects/ijbswa/">project page</ulink>.
+  <filename>default.action</filename> are available from
+  <ulink
+  url="https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob_plain;f=default.action.master;hb=HEAD">git</ulink>.
  </para>
 
  <para>
@@ -938,12 +906,10 @@ the differences?</title>
   for them in the <filename>user.action</filename> file. An example for yahoo might
   look like:
  </para>
- <para>
   <screen># Allow all cookies for Yahoo login:
 #
 { -<ulink url="../user-manual/actions-file.html#CRUNCH-INCOMING-COOKIES">crunch-incoming-cookies</ulink> -<ulink url="../user-manual/actions-file.html#CRUNCH-OUTGOING-COOKIES">crunch-outgoing-cookies</ulink> -<ulink url="../user-manual/actions-file.html#SESSION-COOKIES-ONLY">session-cookies-only</ulink> }
 .login.yahoo.com</screen>
- </para>
  <para>
   These kinds of sites are often quite complex and heavy with
   <ulink url="http://en.wikipedia.org/wiki/Javascript">Javascript</ulink> and
@@ -952,13 +918,11 @@ the differences?</title>
   url="../user-manual/actions-file.html#ALIASES">alias</ulink> just for such
   sticky situations:
  </para>
- <para>
   <screen># Gmail is a _fragile_ site:
 #
 { <literal>fragile</literal> }
  # Gmail is ...
  mail.google.com</screen>
- </para>
  <para>
   Be sure to flush your browser's caches whenever making these kinds of
   changes, just to make sure the changes <quote>take</quote>.
@@ -1109,10 +1073,8 @@ with a browser? Does that not raise security issues?</title>
  should look like:
 </para>
 
-<para>
  <screen>
   listen-address  192.168.1.1:8118</screen>
-</para>
 
 <para>
  Save the file, and restart <application>Privoxy</application>. Configure
@@ -1124,10 +1086,8 @@ with a browser? Does that not raise security issues?</title>
  all available interfaces:
 </para>
 
-<para>
  <screen>
   listen-address    :8118</screen>
-</para>
 
 <para>
  And then use <application>Privoxy's</application>
@@ -1221,18 +1181,12 @@ instead of the checkerboard image. Why and how do I get rid of this?</title>
 <title>Can Privoxy run as a service
 on Win2K/NT/XP?</title>
 <para>
-<![%p-newstuff;[
- Yes. Version 3.0.5 introduces full <application>Windows</application> service
functionality. See <ulink url="../user-manual/installation.html#installation-pack-win">
+ Yes. Full <application>Windows</application> service
+ functionality was introduced in <application>Privoxy</application> 3.0.5.
See <ulink url="../user-manual/installation.html#INSTALLATION-PACK-WIN">
  the <citetitle>User Manual</citetitle></ulink> for details on how to install and configure
  <application>Privoxy</application> as a service.
 </para>
-<para>
- Earlier ]]>3.x versions could run as a system service using <command>srvany.exe</command>.
- See the discussion at <ulink
- url="https://sourceforge.net/tracker/?func=detail&#38;atid=361118&#38;aid=485617&#38;group_id=11118">https://sourceforge.net/tracker/?func=detail&#38;atid=361118&#38;aid=485617&#38;group_id=11118</ulink>,
- for details, and a sample configuration.
-</para>
 </sect2>
 
 
@@ -1336,7 +1290,8 @@ and thus avoid individual browser configuration?</title>
 <para>
  For a good discussion of some of the issues involved (including privacy and
  security issues), see
- <ulink url="https://sourceforge.net/tracker/?func=detail&#38;atid=211118&#38;aid=629518&#38;group_id=11118">https://sourceforge.net/tracker/?func=detail&#38;atid=211118&#38;aid=629518&#38;group_id=11118</ulink>.
+ <ulink url="https://sourceforge.net/p/ijbswa/support-requests/107/"
+  >https://sourceforge.net/p/ijbswa/support-requests/107/</ulink>.
 </para>
 </sect2>
 
@@ -1356,7 +1311,8 @@ and thus avoid individual browser configuration?</title>
  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
- <application>Privoxy's</application> reach.
+ <application>Privoxy's</application> reach unless you enable
+ <ulink url="../user-manual/actions-file.html#HTTPS-INSPECTION">https-inspection</ulink>.
 </para>
 <para>
  All in all, &my-app; can help manage cookies in general, can help minimize
@@ -1400,11 +1356,9 @@ and thus avoid individual browser configuration?</title>
   To disable all cookie actions, so that cookies are allowed unrestricted,
   both in and out, for <literal>example.com</literal>:
 </para>
-<para>
  <screen>
  { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
   .example.com</screen>
-</para>
 <para>
  Place the above in <filename>user.action</filename>. Note that some of these may
  be off by default anyway, so this might be redundant, but there is no harm
@@ -1495,16 +1449,13 @@ and thus avoid individual browser configuration?</title>
  can very easily over-ride <emphasis>all</emphasis> blocking with the
  following very simple rule in your <filename>user.action</filename>:
  </para>
- <para>
  <screen>
  # Unblock everybody, everywhere
  { <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> }
  / # UN-Block *all* URLs</screen>
-</para>
 <para>
  Or even a more comprehensive reversing of various ad related actions:
 </para>
-<para>
  <screen>
  # Unblock everybody, everywhere, and turn off appropriate filtering, etc
  { <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> \
@@ -1513,7 +1464,6 @@ and thus avoid individual browser configuration?</title>
   <literal>allow-popups</literal> \
  }
  / # UN-Block *all* URLs and allow ads</screen>
-</para>
 <para>
  This last <quote>action</quote> in this compound statement,
  <literal>allow-popups</literal>, is an <ulink
@@ -1537,7 +1487,7 @@ and thus avoid individual browser configuration?</title>
  during upgrades. You can, however, create completely new templates,
  place them in another directory and specify the alternate path in the main
  <filename>config</filename>. For details, have a look at the <ulink
- url="../user-manual/config.html#templdir">templdir</ulink> option.
+ url="../user-manual/config.html#TEMPLDIR">templdir</ulink> option.
 </para>
 </sect2>
 
@@ -1554,10 +1504,8 @@ the <emphasis>BLOCKED</emphasis> page?</title>
  available as compile-time options. You should
  <command>configure</command> the sources as follows:
 </para>
-<para>
  <screen>
  ./configure  --disable-toggle  --disable-editor  --disable-force</screen>
-</para>
 <para>
  This will create an executable with hard-coded security features so that
  &my-app; does not allow easy bypassing of blocked sites, or changing the
@@ -1858,11 +1806,9 @@ us help you. Your efforts are not wasted, and we do appreciate them.
  <ulink url="../user-manual/config.html#FORWARDING">forwarding section</ulink>
  and uncomment the line:
 </para>
-<para>
  <screen>
 #        forward-socks5t             /     127.0.0.1:9050 .
- </screen>
-</para>
+</screen>
 <para>
  Note that if you got Tor through one of the bundles, you may
  have to change the port from 9050 to 9150 (or even another one).
@@ -1875,13 +1821,11 @@ us help you. Your efforts are not wasted, and we do appreciate them.
  uncomment the following forward rules, to make sure your local network is still
  reachable through Privoxy:
 </para>
-<para>
  <screen>
 #        forward         192.168.*.*/     .
 #        forward            10.*.*.*/     .
 #        forward           127.*.*.*/     .
- </screen>
-</para>
+</screen>
 <para>
  Unencrypted connections to systems in these address ranges will
  be as (un)secure as the local network is, but the alternative is
@@ -1895,11 +1839,9 @@ us help you. Your efforts are not wasted, and we do appreciate them.
  network by using their names, you will need additional exceptions
  that look like this:
 </para>
-<para>
  <screen>
 #        forward           localhost/     .
- </screen>
-</para>
+</screen>
 <para>
  Save the modified configuration file and open
  <ulink url="http://config.privoxy.org/show-status">http://config.privoxy.org/show-status</ulink>
@@ -2025,9 +1967,17 @@ ads used to be. Why?</title>
 <sect2 renderas="sect3" id="ssl">
 <title>How can Privoxy filter Secure (HTTPS) URLs?</title>
 <para>
- Since secure HTTP connections are encrypted SSL sessions between your browser
- and the secure site, and are meant to be reliably <emphasis>secure</emphasis>,
- there is little that <application>Privoxy</application> can do but hand the raw
+ If you enable
+ <ulink url="../user-manual/actions-file.html#HTTPS-INSPECTION">https-inspection</ulink>
+ <application>Privoxy</application> will impersonate the destination
+ server and can thus filter encrypted requests and responses as well.
+</para>
+<para>
+ Without
+ <ulink url="../user-manual/actions-file.html#HTTPS-INSPECTION">https-inspection</ulink>
+ secure HTTP connections are encrypted SSL sessions between your
+ browser and the secure site, and there is little
+ that <application>Privoxy</application> can do but hand the raw
  gibberish data though from one end to the other unprocessed.
 </para>
 <para>
@@ -2054,6 +2004,21 @@ ads used to be. Why?</title>
 
 </sect2>
 
+<sect2 renderas="sect3" id="http2">
+<title>Does Privoxy support HTTP/2?</title>
+<para>
+  Privoxy currently doesn't parse HTTP/2 but applications
+  can tunnel HTTP/2 through Privoxy if Privoxy is configured
+  to allow CONNECT requests (default) which are also used
+  for HTTPS.
+</para>
+<para>
+  Adding HTTP/2 support is on the
+  <ulink url="https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob_plain;f=TODO;hb=HEAD">TODO</ulink>
+  list but currently nobody is known to work on it.
+</para>
+</sect2>
+
 <sect2 renderas="sect3" id="secure">
 <title>Privoxy runs as a <quote>server</quote>. How
 secure is it? Do I need to take any special precautions?</title>
@@ -2230,14 +2195,12 @@ altered it! Yikes, what is wrong!</title>
  your hosts list is neglected by <application>Privoxy's </application>
  configuration, consider adding your list to your <filename>user.action</filename> file:
 </para>
-<para>
  <screen>
   { +block }
    www.ad.example1.com
    ad.example2.com
    ads.galore.example.com
    etc.example.com</screen>
-</para>
 </sect2>
 
 <sect2 renderas="sect3" id="seealso">
@@ -2333,7 +2296,6 @@ and related issues?</title>
 <para>
  There are several possibilities:
 </para>
-<para>
 <itemizedlist>
 <listitem><para>
 <application>Privoxy</application> is not running. Solution: verify
@@ -2353,7 +2315,6 @@ and related issues?</title>
   try disabling or removing the firewall as a simple test.
  </para></listitem>
 </itemizedlist>
-</para>
 
 </sect2>
 
@@ -2406,7 +2367,6 @@ still getting through. How?</title>
  our job a little easier. &my-app; has <quote>crunched</quote> (meaning caught
  and BLOCKED) quite a few items in this example, but perhaps missed a few as well.
 </para>
-<para>
 <screen>
 <![CDATA[
 Request: www.example.com/
@@ -2444,7 +2404,6 @@ Request: www.adtrak.net/adlog.php?bannerid=1309&clientid=439&zoneid=58&source=Ua
 Request: 66.70.21.80/scripts/click.php?hid=a71b9f6504b0c5681fa5&si=Ua
 ]]>
 </screen>
-</para>
 <para>
  Despite 12 out of 32 requests being blocked, the page looked, and seemed to
  behave perfectly <quote>normal</quote> (minus some ads, of course).
@@ -2734,7 +2693,7 @@ Why?</title>
 <para>
  Upgrading <application>Privoxy</application>, or going to the most recent
  <filename>default.action</filename> file available from <ulink
- url="https://sourceforge.net/project/showfiles.php?group_id=11118">SourceForge</ulink>
+ url="https://www.privoxy.org/gitweb/?p=privoxy.git;a=blob_plain;f=default.action.master;hb=HEAD">git</ulink>
  might be worth a try, too.
 </para>
 </sect2>
@@ -2904,14 +2863,12 @@ browsing has slowed to a crawl. What gives? </title>
  To do that, enable logging to figure out which requests get blocked by
  &my-app; and add the hosts (no path patterns) to a section like this:
 </para>
-<para>
 <screen>
 <![CDATA[
 {+redirect{http://127.0.0.1:0/} -block -limit-connect}
 .ivwbox.de:443/
 ]]>
 </screen>
-</para>
 <para>
  Additionally you have to configure your browser to contact
  <quote>127.0.0.1:0</quote> directly (instead of through &my-app;).
@@ -3022,7 +2979,7 @@ browsing has slowed to a crawl. What gives? </title>
  this is not considered a Privoxy bug.
 </para>
 <para>
- To prevent the crashes you can rewrite your filter to use less ressources,
+ To prevent the crashes you can rewrite your filter to use less resources,
  increase the relevant memory limit or recompile pcre to use less stack space.
  For details please see the
  <ulink url="http://pcre.org/original/doc/html/pcrestack.html">pcrestack man page</ulink>
@@ -3030,6 +2987,47 @@ browsing has slowed to a crawl. What gives? </title>
 </para>
 </sect2>
 
+<sect2 renderas="sect3" id="file-permissions">
+<title>What to do if editing the config file of privoxy is access denied?</title>
+<para>
+ Your userid probably isn't allowed to edit the file.
+ <!--  show how to check permissions? -->
+ On Windows you can use the windows equivalent of sudo:
+</para>
+ <screen>runas /user:administrator "notepad \privoxy\config.txt"</screen>
+
+<para>
+ or fix the file permissions:
+</para>
+<screen>C:\Privoxy>icacls config.txt
+config.txt BUILTIN\Administrators:(I)(F)
+           NT AUTHORITY\SYSTEM:(I)(F)
+           BUILTIN\Users:(I)(RX)
+           NT AUTHORITY\Authenticated Users:(I)(M)
+
+Successfully processed 1 files; Failed processing 0 files
+
+C:\Privoxy>icacls config.txt /grant Lee:F
+processed file: config.txt
+Successfully processed 1 files; Failed processing 0 files
+
+C:\Privoxy>icacls config.txt
+config.txt I3668\Lee:(F)
+           BUILTIN\Administrators:(I)(F)
+           NT AUTHORITY\SYSTEM:(I)(F)
+           BUILTIN\Users:(I)(RX)
+           NT AUTHORITY\Authenticated Users:(I)(M)
+
+Successfully processed 1 files; Failed processing 0 files
+
+C:\Privoxy></screen>
+
+<para>
+ or try to point-n-click your way through adjusting the file
+ permissions in windows explorer.
+</para>
+</sect2>
+
 </sect1>
 
   <!--   ~~~~~       New section      ~~~~~     -->
@@ -3054,7 +3052,7 @@ browsing has slowed to a crawl. What gives? </title>
   </para>
 
  <!--   ~~~~~       New section      ~~~~~     -->
- <sect2><title>License</title>
+ <sect2 id="privoxy-license"><title>License</title>
  <!-- Include copyright.sgml: -->
   &license;
  <!-- end copyright -->
@@ -3062,7 +3060,7 @@ browsing has slowed to a crawl. What gives? </title>
  <!--  ~  End section  ~  -->
 
  <!--   ~~~~~       New section      ~~~~~     -->
- <sect2><title>History</title>
+ <sect2 id="history"><title>History</title>
  <!-- Include history.sgml -->
   &history;
  <!-- end -->