X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=doc%2Fsource%2Fp-config.sgml;h=c2fd53a63fa62526364bd94b69e3101abad207c0;hb=cb55b61769015017aa64c553daecc52b6a070888;hp=5abd272c87210df1a3c672324f37231fd534b613;hpb=43b5b8693dd916854354c07bc86df10c90cb24e9;p=privoxy.git
diff --git a/doc/source/p-config.sgml b/doc/source/p-config.sgml
index 5abd272c..c2fd53a6 100644
--- a/doc/source/p-config.sgml
+++ b/doc/source/p-config.sgml
@@ -3,9 +3,9 @@
Purpose : Used with other docs and files only.
- $Id: p-config.sgml,v 2.22 2007/11/09 20:26:58 fabiankeil Exp $
+ $Id: p-config.sgml,v 2.47 2009/04/17 11:40:48 fabiankeil Exp $
- Copyright (C) 2001-2007 Privoxy Developers http://www.privoxy.org/
+ Copyright (C) 2001-2009 Privoxy Developers http://www.privoxy.org/
See LICENSE.
========================================================================
@@ -95,10 +95,10 @@
Sample Configuration File for Privoxy v&p-version;
- $Id: p-config.sgml,v 2.22 2007/11/09 20:26:58 fabiankeil Exp $
+ $Id: p-config.sgml,v 2.47 2009/04/17 11:40:48 fabiankeil Exp $
-Copyright (C) 2001-2007 Privoxy Developers http://www.privoxy.org/
+Copyright (C) 2001-2009 Privoxy Developers http://www.privoxy.org/
@@ -338,7 +338,7 @@ II. FORMAT OF THE CONFIGURATION FILE
Default value:
- Two example URLs are provided
+ Unset
@@ -369,8 +369,8 @@ II. FORMAT OF THE CONFIGURATION FILE
-@@trust-info-url http://www.example.com/why_we_block.html]]>
-@@trust-info-url http://www.example.com/what_we_allow.html]]>
+@@#trust-info-url http://www.example.com/why_we_block.html]]>
+@@#trust-info-url http://www.example.com/what_we_allow.html]]>
@@ -604,8 +604,7 @@ II. FORMAT OF THE CONFIGURATION FILE
The directory where all logging takes place
- (i.e. where logfile and
- jarfile are located).
+ (i.e. where the logfile is located).
@@ -669,13 +668,13 @@ actionsfile
- standard.action # Internal purposes, no editing recommended
+ match-all.action # Actions that are applied to all sites and maybe overruled later on.
- default.action # Main actions file
+ default.action # Main actions file
- user.action # User customizations
+ user.action # User customizations
@@ -695,9 +694,8 @@ actionsfile
Multiple actionsfile lines are permitted, and are in fact recommended!
- The default values include standard.action, which is used
- for internal purposes and should be loaded, default.action,
- which is the main actions file maintained by the developers, and
+ The default values are default.action, which is the
+ main actions file maintained by the developers, and
user.action, where you can make your personal additions.
@@ -717,7 +715,7 @@ actionsfile
-@@actionsfile standard.action # Internal purpose, recommended]]>
+@@actionsfile match-all.action # Actions that are applied to all sites and maybe overruled later on.]]>
@@actionsfile default.action # Main actions file]]>
The logfile is where all logging and error messages are written. The level
of detail and number of messages are set with the debug
@@ -851,15 +842,14 @@ actionsfile
is doing.
- Many users will never look at it, however, and it's a privacy risk
- if third parties can get access to it. It is therefore disabled by
- default in Privoxy 3.0.7 and later.
-
-
- For troubleshooting purposes, you will have to explicitly enable it.
- Please don't file any support requests without trying to reproduce
- the problem with logging enabled first. Once you read the log messages,
- you may even be able to solve the problem on your own.
+ Depending on the debug options below, the logfile may be a privacy risk
+ if third parties can get access to it. As most users will never look
+ at it, Privoxy 3.0.7 and later only log fatal
+ errors by default.
+
+
+ For most troubleshooting purposes, you will have to change that,
+ please refer to the debugging section for details.
Your logfile will grow indefinitely, and you will probably want to
@@ -867,19 +857,6 @@ actionsfile
(see man cron). For Red Hat based Linux distributions, a
logrotate script has been included.
-
Any log files must be writable by whatever user Privoxy
is being run as (on Unix, default user id is privoxy).
@@ -888,60 +865,7 @@ fk 2007-11-07
-@@#logfile logfile]]>
-
-
-
-
-jarfile
-
-
-
- Specifies:
-
-
- The file to store intercepted cookies in
-
-
-
-
- Type of value:
-
- File name, relative to logdir
-
-
-
- Default value:
-
- Unset (commented out). When activated: jarfile (Unix) or privoxy.jar (Windows).
-
-
-
- Effect if unset:
-
-
- Intercepted cookies are not stored in a dedicated log file.
-
-
-
-
- Notes:
-
-
- The jarfile may grow to ridiculous sizes over time.
-
-
- If debug 8 (show header parsing) is enabled, cookies are
- also written to the logfile with the rest of the headers.
- Therefore this option isn't very useful and may be removed
- in future releases. Please report to the developers if you
- are still using it.
-
-
-
-
-
-@@#jarfile jarfile]]>
+@@logfile logfile]]>
@@ -1047,8 +971,7 @@ fk 2007-11-07
Specifies:
- Key values that determine what information gets logged to the
- logfile.
+ Key values that determine what information gets logged.
@@ -1061,14 +984,14 @@ fk 2007-11-07
Default value:
- 12289 (i.e.: URLs plus informational and warning messages)
+ 0 (i.e.: only fatal errors (that cause Privoxy to exit) are logged)Effect if unset:
- Nothing gets logged.
+ Default value is used (see above).
@@ -1080,20 +1003,20 @@ fk 2007-11-07
- debug 1 # show each GET/POST/CONNECT request
- debug 2 # show each connection status
- debug 4 # show I/O status
- debug 8 # show header parsing
- debug 16 # log all data written to the network into the logfile
- debug 32 # debug force feature
- debug 64 # debug regular expression filters
- debug 128 # debug redirects
- debug 256 # debug GIF de-animation
- debug 512 # Common Log Format
- debug 1024 # debug kill pop-ups
- debug 2048 # CGI user interface
- debug 4096 # Startup banner and warnings.
- debug 8192 # Non-fatal errors
+ debug 1 # Log the destination for each request &my-app; let through. See also debug 1024.
+ debug 2 # show each connection status
+ debug 4 # show I/O status
+ debug 8 # show header parsing
+ debug 16 # log all data written to the network into the logfile
+ debug 32 # debug force feature
+ debug 64 # debug regular expression filters
+ debug 128 # debug redirects
+ debug 256 # debug GIF de-animation
+ debug 512 # Common Log Format
+ debug 1024 # Log the destination for requests &my-app; didn't let through, and the reason why.
+ debug 2048 # CGI user interface
+ debug 4096 # Startup banner and warnings.
+ debug 8192 # Non-fatal errors
@@ -1102,24 +1025,23 @@ fk 2007-11-07
A debug level of 1 is informative because it will show you each request
- as it happens. 1, 4096 and 8192 are highly recommended
- so that you will notice when things go wrong. The other levels are probably
- only of interest if you are hunting down a specific problem. They can produce
- a hell of an output (especially 16).
+ as it happens. 1, 1024, 4096 and 8192 are recommended
+ so that you will notice when things go wrong. The other levels are
+ probably only of interest if you are hunting down a specific problem.
+ They can produce a hell of an output (especially 16).
-
- If you want to use CLF (Common Log Format), you should set debug
+ If you want to use pure CLF (Common Log Format), you should set debug
512ONLY and not enable anything else.
@@ -1127,13 +1049,19 @@ fk 2007-11-07
length of log messages. If it's reached, messages are logged truncated
and marked with ... [too long, truncated].
+
+ Please don't file any support requests without trying to reproduce
+ the problem with increased debug level first. Once you read the log
+ messages, you may even be able to solve the problem on your own.
+
-@@debug 1 # show each GET/POST/CONNECT request]]>
-@@debug 4096 # Startup banner and warnings]]>
-@@debug 8192 # Errors - *we highly recommended enabling this*]]>
+@@#debug 1 # Log the destination for each request &my-app; let through.]]>
+@@#debug 1024 # Log the destination for requests &my-app; didn't let through, and the reason why.]]>
+@@#debug 4096 # Startup banner and warnings]]>
+@@#debug 8192 # Non-fatal errors]]>
@@ -1184,6 +1112,62 @@ fk 2007-11-07
@@#single-threaded]]>
+
+hostname
+
+
+
+ Specifies:
+
+
+ The hostname shown on the CGI pages.
+
+
+
+
+ Type of value:
+
+ Text
+
+
+
+ Default value:
+
+ Unset
+
+
+
+ Effect if unset:
+
+
+ The hostname provided by the operating system is used.
+
+
+
+
+ Notes:
+
+
+ On some misconfigured systems resolving the hostname fails or
+ takes too much time and slows Privoxy down. Setting a fixed hostname
+ works around the problem.
+
+
+ In other circumstances it might be desirable to show a hostname
+ other than the one returned by the operating system. For example
+ if the system has several different hostnames and you don't want
+ to use the first one.
+
+
+ Note that Privoxy does not validate the specified hostname value.
+
+
+
+
+
+@@#hostname hostname.example.org]]>
+
+
@@ -1229,9 +1213,9 @@ fk 2007-11-07
Effect if unset:
- Bind to 127.0.0.1 (localhost), port 8118. This is suitable and recommended for
- home users who run Privoxy on the same machine as
- their browser.
+ Bind to 127.0.0.1 (IPv4 localhost), port 8118. This is suitable and
+ recommended for home users who run Privoxy on
+ the same machine as their browser.
@@ -1246,12 +1230,17 @@ fk 2007-11-07
serve requests from other machines (e.g. on your local network) as well, you
will need to override the default.
+
+ IPv6 addresses containing colons have to be quoted by brackets.
+
If you leave out the IP address, Privoxy will
- bind to all interfaces (addresses) on your machine and may become reachable
+ bind to all IPv4 interfaces (addresses) on your machine and may become reachable
from the Internet. In that case, consider using access control lists (ACL's, see below), and/or
- a firewall.
+ a firewall. If the hostname is localhost, Privoxy
+ will explicitly try to bind to an IPv4 address. For other hostnames it depends
+ on the operating system which IP version will be used.
If you open Privoxy to untrusted users, you will
@@ -1273,6 +1262,16 @@ fk 2007-11-07
listen-address 192.168.0.1:8118
+
+
+
+ Suppose you are running Privoxy on an
+ IPv6-capable machine and you want it to listen on the IPv6 address
+ of the loopback device:
+
+
+
+ listen-address [::1]:8118
@@ -1627,23 +1626,41 @@ ACLs: permit-access and deny-access
Type of value:
- src_addr[/src_masklen]
- [dst_addr[/dst_masklen]]
+ src_addr[:port][/src_masklen]
+ [dst_addr[:port][/dst_masklen]]
Where src_addr and
- dst_addr are IP addresses in dotted decimal notation or valid
- DNS names, and src_masklen and
+ dst_addr are IPv4 addresses in dotted decimal notation or valid
+ DNS names, port is a port
+ number, and src_masklen and
dst_masklen are subnet masks in CIDR notation, i.e. integer
values from 2 to 30 representing the length (in bits) of the network address. The masks and the whole
destination part are optional.
+
+ If your system implements
+ RFC 3493, then
+ src_addr and dst_addr can be IPv6 addresses delimeted by
+ brackets, port can be a number
+ or a service name, and
+ src_masklen and
+ dst_masklen can be a number
+ from 0 to 128.
+ Default value:Unset
+
+ If no port is specified,
+ any port will match. If no src_masklen or
+ src_masklen is given, the complete IP
+ address has to match (i.e. 32 bits for IPv4 and 128 bits for IPv6).
+
@@ -1692,6 +1709,13 @@ ACLs: permit-access and deny-access
like *.org or partial domain names. If a DNS name resolves to multiple
IP addresses, only the first one is used.
+
+ Some systems allows IPv4 client to connect to IPv6 server socket.
+ Then the client's IPv4 address will be translated by system into
+ IPv6 address space with special prefix ::ffff:0:0/96 (so called IPv4
+ mapped IPv6 address). Privoxy can handle it
+ and maps such ACL addresses automatically.
+
Denying access to particular sites by ACL may have undesired side effects
if the site in question is hosted on a machine which also hosts other sites
@@ -1733,6 +1757,24 @@ ACLs: permit-access and deny-access
deny-access 192.168.45.73 www.dirty-stuff.example.com
+
+ Allow access from the IPv4 network 192.0.2.0/24 even if listening on
+ an IPv6 wild card address (not supported on all platforms):
+
+
+
+ permit-access 192.0.2.0/24
+
+
+
+ This is equivalent to the following line even if listening on an
+ IPv4 address (not supported on all platforms):
+
+
+
+ permit-access [::ffff:192.0.2.0]/120
+
+
@@ -1854,7 +1896,7 @@ ACLs: permit-access and deny-access
denote all URLs.
http_parent[:port]
is the DNS name or IP address of the parent HTTP proxy through which the requests should be forwarded,
- optionally followed by its listening port (default: 8080).
+ optionally followed by its listening port (default: 8000).
Use a single dot (.) to denote no forwarding.
@@ -1880,6 +1922,16 @@ ACLs: permit-access and deny-access
If http_parent is ., then requests are not
forwarded to another HTTP proxy but are made directly to the web servers.
+
+ http_parent can be a
+ numerical IPv6 address (if
+ RFC 3493 is
+ implemented). To prevent clashes with the port delimiter, the whole IP
+ address has to be put into brackets. On the other hand a target_pattern containing an IPv6 address
+ has to be put into angle brackets (normal brackets are reserved for
+ regular expressions already).
+
Multiple lines are OK, they are checked in sequence, and the last match wins.
@@ -1907,6 +1959,24 @@ ACLs: permit-access and deny-access
forward .isp.example.net .
+
+ Parent proxy specified by an IPv6 address:
+
+
+
+ foward / [2001:DB8::1]:8000
+
+
+
+ Suppose your parent proxy doesn't support IPv6:
+
+
+
+ forward / parent-proxy.example.org:8000
+ forward ipv6-server.example.org .
+ forward <[2-3][0-9a-f][0-9a-f][0-9a-f]:*> .
+
+
@@ -1915,7 +1985,7 @@ ACLs: permit-access and deny-access
-forward-socks4 and forward-socks4a
+forward-socks4, forward-socks4a and forward-socks5
@@ -1937,13 +2007,16 @@ forward-socks4 and forward-socks4a
http_parent[:port]
- where target_pattern is a URL pattern
- that specifies to which requests (i.e. URLs) this forward rule shall apply. Use / to
- denote all URLs.
- http_parent and socks_proxy
- are IP addresses in dotted decimal notation or valid DNS names (http_parent
+ where target_pattern is a
+ URL pattern that specifies to which
+ requests (i.e. URLs) this forward rule shall apply. Use / to
+ denote all URLs. http_parent
+ and socks_proxy
+ are IP addresses in dotted decimal notation or valid DNS names
+ (http_parent
may be . to denote no HTTP forwarding), and the optional
- port parameters are TCP ports, i.e. integer values from 1 to 64535
+ port parameters are TCP ports,
+ i.e. integer values from 1 to 65535
@@ -1972,6 +2045,20 @@ forward-socks4 and forward-socks4a
is that in the SOCKS 4A protocol, the DNS resolution of the target hostname happens on the SOCKS
server, while in SOCKS 4 it happens locally.
+
+ With forward-socks5 the DNS resolution will happen on the remote server as well.
+
+
+ socks_proxy and
+ http_parent can be a
+ numerical IPv6 address (if
+ RFC 3493 is
+ implemented). To prevent clashes with the port delimiter, the whole IP
+ address has to be put into brackets. On the other hand a target_pattern containing an IPv6 address
+ has to be put into angle brackets (normal brackets are reserved for
+ regular expressions already).
+
If http_parent is ., then requests are not
forwarded to another HTTP proxy but are made (HTTP-wise) directly to the web servers, albeit through
@@ -2009,7 +2096,7 @@ forward-socks4 and forward-socks4a
- forward-socks4a / 127.0.0.1:9050 .
+ forward-socks5 / 127.0.0.1:9050 .
@@ -2392,6 +2479,134 @@ forward-socks4 and forward-socks4a
@@split-large-forms 0]]>
+keep-alive-timeout
+
+
+ Specifies:
+
+
+ Number of seconds after which an open connection will no longer be reused.
+
+
+
+
+ Type of value:
+
+
+ Time in seconds.
+
+
+
+
+ Default value:
+
+ None
+
+
+
+ Effect if unset:
+
+
+ Connections are not reused.
+
+
+
+
+ Notes:
+
+
+ This option has no effect if Privoxy
+ has been compiled without keep-alive support.
+
+
+
+
+ Notes:
+
+
+ Note that reusing connections doesn't necessary cause speedups.
+ There are also a few privacy implications you should be aware of.
+
+
+ Outgoing connections are shared between clients (if there are more
+ than one) and closing the client that initiated the outgoing connection
+ does not affect the connection between &my-app; and the server unless
+ the client's request hasn't been completed yet. If the outgoing connection
+ is idle, it will not be closed until either Privoxy's
+ or the server's timeout is reached. While it's open, the server knows
+ that the system running &my-app; is still there.
+
+
+
+
+ Examples:
+
+
+ keep-alive-timeout 300
+
+
+
+
+@@keep-alive-timeout 300]]>
+
+
+
+socket-timeout
+
+
+ Specifies:
+
+
+ Number of seconds after which a socket times out if
+ no data is received.
+
+
+
+
+ Type of value:
+
+
+ Time in seconds.
+
+
+
+
+ Default value:
+
+ None
+
+
+
+ Effect if unset:
+
+
+ A default value of 300 seconds is used.
+
+
+
+
+ Notes:
+
+
+ For SOCKS requests the timeout currently doesn't start until
+ the SOCKS server accepted the request. This will be fixed in
+ the next release.
+
+
+
+
+ Examples:
+
+
+ socket-timeout 300
+
+
+
+
+@@socket-timeout 300]]>
+
+
+