X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=doc%2Fsource%2Fp-config.sgml;h=2b46e9cabac3dcbb270858edea3afb8d5f454f1b;hp=082dced009d04256cdfb033bc4ab7a5bc0531d0d;hb=dde30f5e8bb12c63688330c97fde75493f92c09c;hpb=0f319e52b51ebfde6ec9323f49bdcf75beffabd8 diff --git a/doc/source/p-config.sgml b/doc/source/p-config.sgml index 082dced0..2b46e9ca 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.51 2009/05/10 10:19:23 fabiankeil Exp $ + $Id: p-config.sgml,v 2.75 2011/07/08 13:31:40 fabiankeil Exp $ - Copyright (C) 2001-2009 Privoxy Developers http://www.privoxy.org/ + Copyright (C) 2001-2010 Privoxy Developers http://www.privoxy.org/ See LICENSE. ======================================================================== @@ -50,8 +50,8 @@ The Main Configuration File - Again, the main configuration file is named config on - Linux/Unix/BSD and OS/2, and config.txt on Windows. + By default, the main configuration file is named config, + with the exception of Windows, where it is named config.txt. Configuration lines consist of an initial keyword followed by a list of values, all separated by whitespace (any number of spaces or tabs). For example: @@ -97,10 +97,10 @@ Sample Configuration File for Privoxy v&p-version; - $Id: p-config.sgml,v 2.51 2009/05/10 10:19:23 fabiankeil Exp $ + $Id: p-config.sgml,v 2.75 2011/07/08 13:31:40 fabiankeil Exp $ -Copyright (C) 2001-2009 Privoxy Developers http://www.privoxy.org/ +Copyright (C) 2001-2010 Privoxy Developers http://www.privoxy.org/ @@ -796,7 +796,7 @@ actionsfile @@filterfile default.filter]]> -@@#filterfile user.filter # User customizations]]> +@@filterfile user.filter # User customizations]]> @@ -1009,7 +1009,7 @@ actionsfile 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 16 # log all data written to the network debug 32 # debug force feature debug 64 # debug regular expression filters debug 128 # debug redirects @@ -1019,6 +1019,7 @@ actionsfile debug 2048 # CGI user interface debug 4096 # Startup banner and warnings. debug 8192 # Non-fatal errors + debug 32768 # log all data read from the network @@ -1193,7 +1194,7 @@ actionsfile Specifies: - The IP address and TCP port on which Privoxy will + The address and TCP port on which Privoxy will listen for client requests. @@ -1202,6 +1203,7 @@ actionsfile Type of value: [IP-Address]:Port + [Hostname]:Port @@ -1232,17 +1234,56 @@ actionsfile serve requests from other machines (e.g. on your local network) as well, you will need to override the default. + + You can use this statement multiple times to make + Privoxy listen on more ports or more + IP addresses. Suitable if your operating system does not + support sharing IPv6 and IPv4 protocols + on the same socket. + + + If a hostname is used instead of an IP address, Privoxy + will try to resolve it to an IP address and if there are multiple, use the first + one returned. + + + If the address for the hostname isn't already known on the system + (for example because it's in /etc/hostname), this may result in DNS + traffic. + + + If the specified address isn't available on the system, or if the + hostname can't be resolved, Privoxy + will fail to start. + IPv6 addresses containing colons have to be quoted by brackets. + They can only be used if Privoxy has + been compiled with IPv6 support. If you aren't sure if your version + supports it, have a look at + http://config.privoxy.org/show-status. + + + Some operating systems will prefer IPv6 to IPv4 addresses even if the + system has no IPv6 connectivity which is usually not expected by the user. + Some even rely on DNS to resolve localhost which mean the "localhost" address + used may not actually be local. + + + It is therefore recommended to explicitly configure the intended IP address + instead of relying on the operating system, unless there's a strong reason not to. + + + If you leave out the address, Privoxy will bind to all + IPv4 interfaces (addresses) on your machine and may become reachable from the + Internet and/or the local network. Be aware that some GNU/Linux distributions + modify that behaviour without updating the documentation. Check for non-standard + patches if your Privoxyversion behaves differently. - If you leave out the IP address, Privoxy will - 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. 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 configure Privoxyto be reachable from the + network, consider using access control lists + (ACL's, see below), and/or a firewall. If you open Privoxy to untrusted users, you will @@ -1250,6 +1291,12 @@ actionsfile linkend="enable-edit-actions">enable-edit-actions and enable-remote-toggle + + With the exception noted above, listening on multiple addresses is currently + not supported by Privoxy directly. + It can be done on most operating systems by letting a packet filter + redirect request for certain addresses to Privoxy, though. + @@ -1712,8 +1759,8 @@ ACLs: permit-access and deny-access 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 + Some systems allow IPv4 clients to connect to IPv6 server sockets. + Then the client's IPv4 address will be translated by the 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. @@ -1966,7 +2013,7 @@ ACLs: permit-access and deny-access - foward / [2001:DB8::1]:8000 + forward / [2001:DB8::1]:8000 @@ -2538,6 +2585,23 @@ forward-socks4, forward-socks4a and forward-socks5 This option has no effect if Privoxy has been compiled without keep-alive support. + + Note that a timeout of five seconds as used in the default + configuration file significantly decreases the number of + connections that will be reused. The value is used because + some browsers limit the number of connections they open to + a single host and apply the same limit to proxies. This can + result in a single website grabbing all the + connections the browser allows, which means connections to + other websites can't be opened until the connections currently + in use time out. + + + Several users have reported this as a Privoxy bug, so the + default value has been reduced. Consider increasing it to + 300 seconds or even more if you think your browser can handle + it. If your browser appears to be hanging it can't. + @@ -2549,7 +2613,88 @@ forward-socks4, forward-socks4a and forward-socks5 -@@keep-alive-timeout 300]]> +@@keep-alive-timeout 5]]> + + + +default-server-timeout + + + Specifies: + + + Assumed server-side keep-alive timeout if not specified by the server. + + + + + Type of value: + + + Time in seconds. + + + + + Default value: + + None + + + + Effect if unset: + + + Connections for which the server didn't specify the keep-alive + timeout are not reused. + + + + + Notes: + + + Enabling this option significantly increases the number of connections + that are reused, provided the keep-alive-timeout option + is also enabled. + + + While it also increases the number of connections problems + when &my-app; tries to reuse a connection that already has + been closed on the server side, or is closed while &my-app; + is trying to reuse it, this should only be a problem if it + happens for the first request sent by the client. If it happens + for requests on reused client connections, &my-app; will simply + close the connection and the client is supposed to retry the + request without bothering the user. + + + Enabling this option is therefore only recommended if the + connection-sharing option + is disabled. + + + It is an error to specify a value larger than the keep-alive-timeout value. + + + This option has no effect if Privoxy + has been compiled without keep-alive support. + + + + + Examples: + + + default-server-timeout 60 + + + + +@@#default-server-timeout 60]]> @@ -2604,7 +2749,7 @@ forward-socks4, forward-socks4a and forward-socks5 If this option is effective, outgoing connections are shared between - clients (if there are more than one) and closing the client that initiated + clients (if there are more than one) and closing the browser that initiated the outgoing connection does no longer affect the connection between &my-app; and the server unless the client's request hasn't been completed yet. @@ -2628,6 +2773,11 @@ forward-socks4, forward-socks4a and forward-socks5 as it allows &my-app; to keep outgoing connections alive even if the client itself doesn't support it. + + You should also be aware that enabling this option increases the likelihood + of getting the "No server or forwarder data" error message, especially if you + are using a slow connection to the Internet. + This option should only be used by experienced users who understand the risks and can weight them against the benefits. @@ -2684,9 +2834,9 @@ forward-socks4, forward-socks4a and forward-socks5 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. + The default is quite high and you probably want to reduce it. + If you aren't using an occasionally slow proxy like Tor, reducing + it to a few seconds should be fine. @@ -2784,6 +2934,198 @@ forward-socks4, forward-socks4a and forward-socks5 +handle-as-empty-doc-returns-ok + + + Specifies: + + + The status code Privoxy returns for pages blocked with + + +handle-as-empty-document. + + + + + Type of value: + + + 0 or 1 + + + + + Default value: + + 0 + + + + Effect if unset: + + + Privoxy returns a status 403(forbidden) for all blocked pages. + + + + + Effect if set: + + + Privoxy returns a status 200(OK) for pages blocked with +handle-as-empty-document + and a status 403(Forbidden) for all other blocked pages. + + + + + Notes: + + + This is a work-around for Firefox bug 492459: + + Websites are no longer rendered if SSL requests for JavaScripts are blocked by a proxy. + + (https://bugzilla.mozilla.org/show_bug.cgi?id=492459) + As the bug has been fixed for quite some time this option should no longer + be needed and will be removed in a future release. Please speak up if you + have a reason why the option should be kept around. + + + + +@@#handle-as-empty-doc-returns-ok 1]]> + + + +enable-compression + + + Specifies: + + + Whether or not buffered content is compressed before delivery. + + + + + Type of value: + + + 0 or 1 + + + + + Default value: + + 0 + + + + Effect if unset: + + + Privoxy does not compress buffered content. + + + + + Effect if set: + + + Privoxy compresses buffered content before delivering it to the client, + provided the client supports it. + + + + + Notes: + + + This directive is only supported if Privoxy has been compiled with + FEATURE_COMPRESSION, which should not to be confused with FEATURE_ZLIB. + + + Compressing buffered content is mainly useful if Privoxy and the + client are running on different systems. If they are running on the + same system, enabling compression is likely to slow things down. + If you didn't measure otherwise, you should assume that it does + and keep this option disabled. + + + Privoxy will not compress buffered content below a certain length. + + + + +@@#enable-compression 1]]> + + + +compression-level + + + Specifies: + + + The compression level that is passed to the zlib library when compressing buffered content. + + + + + Type of value: + + + Positive number ranging from 0 to 9. + + + + + Default value: + + 1 + + + + Notes: + + + Compressing the data more takes usually longer than compressing + it less or not compressing it at all. Which level is best depends + on the connection between Privoxy and the client. If you can't + be bothered to benchmark it for yourself, you should stick with + the default and keep compression disabled. + + + If compression is disabled, the compression level is irrelevant. + + + + + Examples: + + + + # Best speed (compared to the other levels) + compression-level 1 + # Best compression + compression-level 9 + # No compression. Only useful for testing as the added header + # slightly increases the amount of data that has to be sent. + # If your benchmark shows that using this compression level + # is superior to using no compression at all, the benchmark + # is likely to be flawed. + compression-level 0 + + + + + +@@#compression-level 1]]> + + +