<!entity history SYSTEM "history.sgml">
<!entity copyright SYSTEM "copyright.sgml">
<!entity license SYSTEM "license.sgml">
-<!entity p-version "3.0.29">
+<!entity p-version "3.0.33">
<!entity p-status "stable">
<!entity % p-not-stable "IGNORE">
<!entity % p-stable "INCLUDE">
Purpose : FAQ
- Copyright (C) 2001-2020 Privoxy Developers https://www.privoxy.org/
+ Copyright (C) 2001-2021 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-2020 by
+ <link linkend="copyright">Copyright</link> &my-copy; 2001-2021 by
<ulink url="https://www.privoxy.org/">Privoxy Developers</ulink>
</subscript>
</pubdate>
<para>
The logo sizes depend on the sponsor level. Logos are served from
our server, no requests are made to the sponsor website unless
- the links are being used.
+ the links are being used. Note that Privoxy comes with a
+ <ulink url="https://www.privoxy.org/user-manual/actions-file.html#HIDE-REFERRER">hide-referrer</ulink>
+ action so Privoxy users following links to sponsor websites
+ may not necessarily send requests with a Referer header set.
</para>
<para>
Link targets are without path (<quote>https://www.example.org/</quote>
If you want to become a sponsor, please contact
<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.
+ New sponsors are only accepted if no
+ <ulink url="../user-manual/copyright.html#AUTHORS">Privoxy team</ulink>
+ member objects.
</para>
</sect2>
url="../user-manual/actions-file.html#ALIASES">alias</ulink> just for such
sticky situations:
</para>
- <screen># Gmail is a _fragile_ site:
+ <screen>
+# Gmail is a _fragile_ site:
#
{ <literal>fragile</literal> }
- # Gmail is ...
- mail.google.com</screen>
+# Gmail is ...
+mail.google.com
+</screen>
<para>
Be sure to flush your browser's caches whenever making these kinds of
changes, just to make sure the changes <quote>take</quote>.
</para>
<screen>
- listen-address 192.168.1.1:8118</screen>
+listen-address 192.168.1.1:8118</screen>
<para>
Save the file, and restart <application>Privoxy</application>. Configure
</para>
<screen>
- listen-address :8118</screen>
+listen-address :8118</screen>
<para>
And then use <application>Privoxy's</application>
The whole idea of Privoxy is to modify client requests
and server responses in all sorts of ways and therefore
it's not a transparent proxy as described in
- <ulink url="http://tools.ietf.org/html/rfc2616">RFC 2616</ulink>.
+ <ulink url="https://tools.ietf.org/html/rfc2616">RFC 2616</ulink>.
</para>
<para>
However, some people say <quote>transparent proxy</quote> when they
both in and out, for <literal>example.com</literal>:
</para>
<screen>
- { -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
- .example.com</screen>
+{ -crunch-incoming-cookies -crunch-outgoing-cookies -session-cookies-only -filter{content-cookies} }
+.example.com
+</screen>
<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
Here's one real easy one:
</para>
<screen>
- ############################################################
- # Blacklist
- ############################################################
- { <ulink url="../user-manual/actions-file.html#BLOCK">+block</ulink> }
- / # Block *all* URLs
-
- ############################################################
- # Whitelist
- ############################################################
- { <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> }
- kids.example.com
- toys.example.com
- games.example.com</screen>
+############################################################
+# Blacklist
+############################################################
+{ <ulink url="../user-manual/actions-file.html#BLOCK">+block</ulink> }
+/ # Block *all* URLs
+
+############################################################
+# Whitelist
+############################################################
+{ <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> }
+kids.example.com
+toys.example.com
+games.example.com
+</screen>
<para>
This allows access to only those three sites by first blocking all URLs, and
then subsequently allowing three specific exceptions.
following very simple rule in your <filename>user.action</filename>:
</para>
<screen>
- # Unblock everybody, everywhere
- { <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> }
- / # UN-Block *all* URLs</screen>
+# Unblock everybody, everywhere
+{ <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> }
+/ # UN-Block *all* URLs
+</screen>
<para>
Or even a more comprehensive reversing of various ad related actions:
</para>
<screen>
- # Unblock everybody, everywhere, and turn off appropriate filtering, etc
- { <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> \
+# Unblock everybody, everywhere, and turn off appropriate filtering, etc
+{ <ulink url="../user-manual/actions-file.html#BLOCK">-block</ulink> \
<ulink url="../user-manual/actions-file.html#FILTER-BANNERS-BY-SIZE">-filter{banners-by-size}</ulink> \
<ulink url="../user-manual/actions-file.html#FILTER-BANNERS-BY-LINK">-filter{banners-by-link}</ulink> \
<literal>allow-popups</literal> \
- }
- / # UN-Block *all* URLs and allow ads</screen>
+}
+/ # UN-Block *all* URLs and allow ads
+</screen>
<para>
This last <quote>action</quote> in this compound statement,
<literal>allow-popups</literal>, is an <ulink
available as compile-time options. You should
<command>configure</command> the sources as follows:
</para>
- <screen>
- ./configure --disable-toggle --disable-editor --disable-force</screen>
+<screen>
+./configure --disable-toggle --disable-editor --disable-force
+</screen>
<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
<para>
No, it does not have this ability at all. You want something like
<ulink url="http://www.squid-cache.org/">Squid</ulink> or
- <ulink url="http://www.pps.jussieu.fr/~jch/software/polipo/">Polipo</ulink> for this.
+ <ulink url="https://www.irif.fr/~jch//software/polipo/">Polipo</ulink> for this.
And, yes, before you ask, <application>Privoxy</application> can co-exist
with other kinds of proxies like <application>Squid</application>.
See the <ulink url="../user-manual/config.html#FORWARDING">forwarding
configuration, consider adding your list to your <filename>user.action</filename> file:
</para>
<screen>
- { +block }
- www.ad.example1.com
- ad.example2.com
- ads.galore.example.com
- etc.example.com</screen>
+{ +block }
+www.ad.example1.com
+ad.example2.com
+ads.galore.example.com
+etc.example.com
+</screen>
</sect2>
<sect2 renderas="sect3" id="seealso">
section, and add <quote>127.0.0.1:0</quote> in the <quote>No Proxy for:</quote>
field.
</para>
+<para>
+ You can also prevent the problem by enabling
+ <ulink url="../user-manual/actions-file.html#HTTPS-INSPECTION">https-inspection</ulink>
+ in which case Privoxy's error messages are delivered encrypted.
+</para>
</sect2>
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>
+ <ulink url="https://pcre.org/original/doc/html/pcrestack.html">pcrestack man page</ulink>
and the documentation of your operating system.
</para>
</sect2>