- <para>Three settings are provided for cache control with HTTP/1.1 compliant
- proxy caches. <literal>No-Cache</literal> tells the proxy to not use its cached
- response under any circumstances, <literal>Max-Age</literal> is sent only for
- index files and tells the cache to refresh its object if it is older than
- the given number of seconds. Debian updates its index files daily so the
- default is 1 day. <literal>No-Store</literal> specifies that the cache should never
- store this request, it is only set for archive files. This may be useful
- to prevent polluting a proxy cache with very large .deb files. Note:
- Squid 2.0.2 does not support any of these options.</para>
-
- <para>The option <literal>timeout</literal> sets the timeout timer used by the method,
- this applies to all things including connection timeout and data timeout.</para>
-
- <para>One setting is provided to control the pipeline depth in cases where the
- remote server is not RFC conforming or buggy (such as Squid 2.0.2)
- <literal>Acquire::http::Pipeline-Depth</literal> can be a value from 0 to 5
- indicating how many outstanding requests APT should send. A value of
- zero MUST be specified if the remote host does not properly linger
- on TCP connections - otherwise data corruption will occur. Hosts which
- require this are in violation of RFC 2068.</para>
-
- <para>The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</literal>
- which accepts integer values in kilobyte. The default value is 0 which deactivates
- the limit and tries uses as much as possible of the bandwidth (Note that this option implicit
- deactivates the download from multiple servers at the same time.)</para></listitem>
- </varlistentry>
-
- <varlistentry><term>https</term>
- <listitem><para>HTTPS URIs. Cache-control and proxy options are the same as for
- <literal>http</literal> method.
- <literal>Pipeline-Depth</literal> option is not supported yet.</para>
+ <para>Three settings are provided for cache control with HTTP/1.1 compliant
+ proxy caches.
+ <literal>No-Cache</literal> tells the proxy not to use its cached
+ response under any circumstances.
+ <literal>Max-Age</literal> sets the allowed maximum age (in seconds) of
+ an index file in the cache of the proxy.
+ <literal>No-Store</literal> specifies that the proxy should not store
+ the requested archive files in its cache, which can be used to prevent
+ the proxy from polluting its cache with (big) .deb files.</para>
+
+ <para>The option <literal>timeout</literal> sets the timeout timer used by the method;
+ this value applies to the connection as well as the data timeout.</para>
+
+ <para>The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to
+ enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial e.g. on
+ high-latency connections. It specifies how many requests are sent in a pipeline.
+ Previous APT versions had a default of 10 for this setting, but the default value
+ is now 0 (= disabled) to avoid problems with the ever-growing amount of webservers
+ and proxies which choose to not conform to the HTTP/1.1 specification.</para>
+
+ <para><literal>Acquire::http::AllowRedirect</literal> controls whether APT will follow
+ redirects, which is enabled by default.</para>
+
+ <para>The used bandwidth can be limited with
+ <literal>Acquire::http::Dl-Limit</literal> which accepts integer
+ values in kilobytes per second. The default value is 0 which
+ deactivates the limit and tries to use all available bandwidth.
+ Note that this option implicitly disables downloading from
+ multiple servers at the same time.</para>
+
+ <para><literal>Acquire::http::User-Agent</literal> can be used to set a different
+ User-Agent for the http download method as some proxies allow access for clients
+ only if the client uses a known identifier.</para>
+
+ <para><literal>Acquire::http::Proxy-Auto-Detect</literal> can be used to
+ specify an external command to discover the http proxy to use. Apt expects
+ the command to output the proxy on stdout in the style
+ <literal>http://proxy:port/</literal>. This will override the
+ generic <literal>Acquire::http::Proxy</literal> but not any specific
+ host proxy configuration set via
+ <literal>Acquire::http::Proxy::$HOST</literal>.
+
+ See the &squid-deb-proxy-client; package for an example implementation that
+ uses avahi. This option takes precedence over the legacy option name
+ <literal>ProxyAutoDetect</literal>.
+ </para>
+
+ </listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>https</option></term>
+ <listitem><para>
+ The <literal>Cache-control</literal>, <literal>Timeout</literal>,
+ <literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and
+ <literal>proxy</literal> options work for HTTPS URIs in the same way
+ as for the <literal>http</literal> method, and default to the same
+ values if they are not explicitly set. The
+ <literal>Pipeline-Depth</literal> option is not yet supported.
+ </para>