<!--#include virtual="header.html" -->
<H1 ALIGN="CENTER">Module mod_negotiation</H1>
-This module is contained in the <CODE>mod_negotiation.c</CODE> file,
-and is compiled in by default. It provides for <A
-HREF="../content-negotiation.html">content negotiation</A>.
+<p>This module provides for <A
+HREF="../content-negotiation.html">content negotiation</A>.</p>
+
+<P><A
+HREF="module-dict.html#Status"
+REL="Help"
+><STRONG>Status:</STRONG></A> Base
+<BR>
+<A
+HREF="module-dict.html#SourceFile"
+REL="Help"
+><STRONG>Source File:</STRONG></A> mod_negotiation.c
+<BR>
+<A
+HREF="module-dict.html#ModuleIdentifier"
+REL="Help"
+><STRONG>Module Identifier:</STRONG></A> negotiation_module
+</P>
<H2>Summary</H2>
Content negotiation, or more accurately content selection, is the
filename pattern match, and choose from amongst the results.
</UL>
-<H3>Type maps</H3>
+<H2>Directives</H2>
+<UL>
+<LI><A HREF="#cachenegotiateddocs">CacheNegotiatedDocs</A>
+<LI><A HREF="#languagepriority">LanguagePriority</A>
+</UL>
+
+<STRONG>See also</STRONG>:
+<A HREF="./mod_mime.html#defaultlanguage">DefaultLanguage</A>,
+<A HREF="./mod_mime.html#addencoding">AddEncoding</A>,
+<A HREF="./mod_mime.html#addlanguage">AddLanguage</A>,
+<A HREF="./mod_mime.html#addtype">AddType</A>, and
+<A HREF="core.html#options">Option</A>.
+
+<H2>Type maps</H2>
A type map has the same format as RFC822 mail headers. It contains document
descriptions separated by blank lines, with lines beginning with a hash
character ('#') treated as comments. A document description consists of
<DD>The path to the file containing this variant, relative to the map file.
</DL>
-<H3>MultiViews</H3>
+<H2>MultiViews</H2>
A MultiViews search is enabled by the MultiViews
<A HREF="core.html#options">Option</A>.
If the server receives a request for <CODE>/some/dir/foo</CODE> and
-<H2>Directives</H2>
-<UL>
-<LI><A HREF="#cachenegotiateddocs">CacheNegotiatedDocs</A>
-<LI><A HREF="#languagepriority">LanguagePriority</A>
-</UL>
-
-<STRONG>See also</STRONG>:
-<A HREF="./mod_mime.html#defaultlanguage">DefaultLanguage</A>,
-<A HREF="./mod_mime.html#addencoding">AddEncoding</A>,
-<A HREF="./mod_mime.html#addlanguage">AddLanguage</A>,
-<A HREF="./mod_mime.html#addtype">AddType</A>, and
-<A HREF="core.html#options">Option</A>.
-
<HR>
-<H2><A NAME="cachenegotiateddocs">CacheNegotiatedDocs</A></H2>
+<H2><A NAME="cachenegotiateddocs">CacheNegotiatedDocs</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
it was turned on by the presence of the directive by itself.
-<H2><A NAME="languagepriority">LanguagePriority</A></H2>
+<H2><A NAME="languagepriority">LanguagePriority</A> directive</H2>
<!--%plaintext <?INDEX {\tt LanguagePriority} directive> -->
<A
HREF="directive-dict.html#Syntax"
<!--#include virtual="header.html" -->
<H1 ALIGN="CENTER">Apache module mod_proxy</H1>
-This module is contained in the <CODE>mod_proxy.c</CODE> file for Apache 1.1.x,
-or the <CODE>modules/proxy</CODE> subdirectory for Apache 1.2, and
-is not compiled in by default. It provides for an <STRONG>HTTP
-1.0</STRONG> caching proxy
-server. It is only available in Apache 1.1 and later. Common configuration
-questions are addressed <A HREF="#configs">after the directive
-descriptions</A>.
-
-<H3>Note:</H3>
-<P>This module was experimental in Apache 1.1.x. As of Apache 1.2, mod_proxy
-stability is <EM>greatly</EM> improved.<P>
+<p>This module provides for an <STRONG>HTTP 1.0</STRONG> caching proxy
+server.</p>
+
+<P><A
+HREF="module-dict.html#Status"
+REL="Help"
+><STRONG>Status:</STRONG></A> Extension
+<BR>
+<A
+HREF="module-dict.html#SourceFile"
+REL="Help"
+><STRONG>Source File:</STRONG></A> mod_proxy.c
+<BR>
+<A
+HREF="module-dict.html#ModuleIdentifier"
+REL="Help"
+><STRONG>Module Identifier:</STRONG></A> proxy_module
+<BR>
+<A
+HREF="module-dict.html#Compatibility"
+REL="Help"
+><STRONG>Compatibility:</STRONG></A> Available in Apache 1.1 and later.
+</P>
<H2>Summary</H2>
The module can be configured to connect to other proxy modules for these
and other protocols.
+<P>This module was experimental in Apache 1.1.x. As of Apache 1.2, mod_proxy
+stability is <EM>greatly</EM> improved.<P>
+
+
<H2>Directives</H2>
<UL>
<LI><A HREF="#proxyrequests">ProxyRequests</A>
<LI><A HREF="#nocache">NoCache</A>
</UL>
+<H2><A NAME="configs">Common configuration topics</A></H2>
+
+<UL>
+<LI><A HREF="#access">Controlling access to your proxy</A>
+<LI><A HREF="#shortname">Using Netscape hostname shortcuts</A>
+<LI><A HREF="#mimetypes">Why doesn't file type <EM>xxx</EM> download via FTP?</A>
+<LI><A HREF="#startup">Why does Apache start more slowly when using the
+ proxy module?</A>
+<LI><A HREF="#socks">Can I use the Apache proxy module with my SOCKS proxy?</A>
+<LI><A HREF="#intranet">What other functions are useful for an intranet proxy server?</A>
+</UL>
+
+<H2><A NAME="access">Controlling access to your proxy</A></H2>
+
+You can control who can access your proxy via the normal <Directory>
+control block using the following example:<P>
+
+<PRE>
+<Directory proxy:*>
+Order Deny,Allow
+Deny from [machines you'd like *not* to allow by IP address or name]
+Allow from [machines you'd like to allow by IP address or name]
+</Directory>
+</PRE><P>
+
+A <Files> block will also work, and is the only method known to work
+for all possible URLs in Apache versions earlier than 1.2b10.<P>
+
+<H2><A NAME="shortname">Using Netscape hostname shortcuts</A></H2>
+
+There is an optional patch to the proxy module to allow Netscape-like
+hostname shortcuts to be used. It's available from the
+<A HREF="http://www.apache.org/dist/contrib/patches/1.2/netscapehost.patch"
+><SAMP>contrib/patches/1.2</SAMP></A> directory on the Apache Web site.<P>
+
+<H2><A NAME="mimetypes">Why doesn't file type <EM>xxx</EM> download via FTP?</A></H2>
+
+You probably don't have that particular file type defined as
+<EM>application/octet-stream</EM> in your proxy's mime.types configuration
+file. A useful line can be<P>
+
+<PRE>
+application/octet-stream bin dms lha lzh exe class tgz taz
+</PRE>
+
+<H2><A NAME="type">How can I force an FTP ASCII download of File <EM>xxx</EM>?</A></H2>
+
+In the rare situation where you must download a specific file using the FTP
+<STRONG>ASCII</STRONG> transfer method (while the default transfer is in
+<STRONG>binary</STRONG> mode), you can override mod_proxy's default by
+suffixing the request with <SAMP>;type=a</SAMP> to force an ASCII transfer.<P>
+
+<H2><A NAME="startup">Why does Apache start more slowly when using the
+ proxy module?</A></H2>
+
+If you're using the <CODE>ProxyBlock</CODE> or <CODE>NoCache</CODE>
+directives, hostnames' IP addresses are looked up and cached during
+startup for later match test. This may take a few seconds (or more)
+depending on the speed with which the hostname lookups occur.<P>
+
+<H2><A NAME="socks">Can I use the Apache proxy module with my SOCKS proxy?</A></H2>
+
+Yes. Just build Apache with the rule <CODE>SOCKS4=yes</CODE> in your
+<EM>Configuration</EM> file, and follow the instructions there. SOCKS5
+capability can be added in a similar way (there's no <CODE>SOCKS5</CODE>
+rule yet), so use the <CODE>EXTRA_LDFLAGS</CODE> definition, or build Apache
+normally and run it with the <EM>runsocks</EM> wrapper provided with SOCKS5,
+if your OS supports dynamically linked libraries.<P>
+
+Some users have reported problems when using SOCKS version 4.2 on Solaris.
+The problem was solved by upgrading to SOCKS 4.3.<P>
+
+Remember that you'll also have to grant access to your Apache proxy machine by
+permitting connections on the appropriate ports in your SOCKS daemon's
+configuration.<P>
+
+<H2><A NAME="intranet">What other functions are useful for an intranet proxy server?</A></H2>
+
+<P>An Apache proxy server situated in an intranet needs to forward external
+requests through the company's firewall. However, when it has to access
+resources within the intranet, it can bypass the firewall when accessing
+hosts. The <A HREF="#noproxy">NoProxy</A> directive is useful for specifying
+which hosts belong to the intranet and should be accessed directly.</P>
+
+<P>Users within an intranet tend to omit the local domain name from their
+WWW requests, thus requesting "http://somehost/" instead of
+"http://somehost.my.dom.ain/". Some commercial proxy servers let them get
+away with this and simply serve the request, implying a configured
+local domain. When the <A HREF="#proxydomain">ProxyDomain</A> directive
+is used and the server is <A HREF="#proxyrequests">configured for
+proxy service</A>, Apache can return a redirect response and send the client
+to the correct, fully qualified, server address. This is the preferred method
+since the user's bookmark files will then contain fully qualified hosts.</P>
+
<HR>
-<H2><A NAME="proxyrequests">ProxyRequests</A></H2>
+<H2><A NAME="proxyrequests">ProxyRequests</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxyremote">ProxyRemote</A></H2>
+<H2><A NAME="proxyremote">ProxyRemote</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxypass">ProxyPass</A></H2>
+<H2><A NAME="proxypass">ProxyPass</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxypassreverse">ProxyPassReverse</A></H2>
+<H2><A NAME="proxypassreverse">ProxyPassReverse</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="allowconnect">AllowCONNECT</A></H2>
+<H2><A NAME="allowconnect">AllowCONNECT</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxyblock">ProxyBlock</A></H2>
+<H2><A NAME="proxyblock">ProxyBlock</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxyreceivebuffersize">ProxyReceiveBufferSize</A></H2>
+<H2><A NAME="proxyreceivebuffersize">ProxyReceiveBufferSize</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="noproxy">NoProxy</A></H2>
+<H2><A NAME="noproxy">NoProxy</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxydomain">ProxyDomain</A></H2>
+<H2><A NAME="proxydomain">ProxyDomain</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="proxyvia">ProxyVia</A></H2>
+<H2><A NAME="proxyvia">ProxyVia</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cacheforcecompletion">CacheForceCompletion</A></H2>
+<H2><A NAME="cacheforcecompletion">CacheForceCompletion</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cacheroot">CacheRoot</A></H2>
+<H2><A NAME="cacheroot">CacheRoot</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachesize">CacheSize</A></H2>
+<H2><A NAME="cachesize">CacheSize</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachegcinterval">CacheGcInterval</A></H2>
+<H2><A NAME="cachegcinterval">CacheGcInterval</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachemaxexpire">CacheMaxExpire</A></H2>
+<H2><A NAME="cachemaxexpire">CacheMaxExpire</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachelastmodifiedfactor">CacheLastModifiedFactor</A></H2>
+<H2><A NAME="cachelastmodifiedfactor">CacheLastModifiedFactor</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachedirlevels">CacheDirLevels</A></H2>
+<H2><A NAME="cachedirlevels">CacheDirLevels</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachedirlength">CacheDirLength</A></H2>
+<H2><A NAME="cachedirlength">CacheDirLength</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="cachedefaultexpire">CacheDefaultExpire</A></H2>
+<H2><A NAME="cachedefaultexpire">CacheDefaultExpire</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
<HR>
-<H2><A NAME="nocache">NoCache</A></H2>
+<H2><A NAME="nocache">NoCache</A> directive</H2>
<A
HREF="directive-dict.html#Syntax"
REL="Help"
disables caching completely.<P>
-<HR>
-
-<H2><A NAME="configs">Common configuration topics</A></H2>
-
-<UL>
-<LI><A HREF="#access">Controlling access to your proxy</A>
-<LI><A HREF="#shortname">Using Netscape hostname shortcuts</A>
-<LI><A HREF="#mimetypes">Why doesn't file type <EM>xxx</EM> download via FTP?</A>
-<LI><A HREF="#startup">Why does Apache start more slowly when using the
- proxy module?</A>
-<LI><A HREF="#socks">Can I use the Apache proxy module with my SOCKS proxy?</A>
-<LI><A HREF="#intranet">What other functions are useful for an intranet proxy server?</A>
-</UL>
-
-<H2><A NAME="access">Controlling access to your proxy</A></H2>
-
-You can control who can access your proxy via the normal <Directory>
-control block using the following example:<P>
-
-<PRE>
-<Directory proxy:*>
-Order Deny,Allow
-Deny from [machines you'd like *not* to allow by IP address or name]
-Allow from [machines you'd like to allow by IP address or name]
-</Directory>
-</PRE><P>
-
-A <Files> block will also work, and is the only method known to work
-for all possible URLs in Apache versions earlier than 1.2b10.<P>
-
-<H2><A NAME="shortname">Using Netscape hostname shortcuts</A></H2>
-
-There is an optional patch to the proxy module to allow Netscape-like
-hostname shortcuts to be used. It's available from the
-<A HREF="http://www.apache.org/dist/contrib/patches/1.2/netscapehost.patch"
-><SAMP>contrib/patches/1.2</SAMP></A> directory on the Apache Web site.<P>
-
-<H2><A NAME="mimetypes">Why doesn't file type <EM>xxx</EM> download via FTP?</A></H2>
-
-You probably don't have that particular file type defined as
-<EM>application/octet-stream</EM> in your proxy's mime.types configuration
-file. A useful line can be<P>
-
-<PRE>
-application/octet-stream bin dms lha lzh exe class tgz taz
-</PRE>
-
-<H2><A NAME="type">How can I force an FTP ASCII download of File <EM>xxx</EM>?</A></H2>
-
-In the rare situation where you must download a specific file using the FTP
-<STRONG>ASCII</STRONG> transfer method (while the default transfer is in
-<STRONG>binary</STRONG> mode), you can override mod_proxy's default by
-suffixing the request with <SAMP>;type=a</SAMP> to force an ASCII transfer.<P>
-
-<H2><A NAME="startup">Why does Apache start more slowly when using the
- proxy module?</A></H2>
-
-If you're using the <CODE>ProxyBlock</CODE> or <CODE>NoCache</CODE>
-directives, hostnames' IP addresses are looked up and cached during
-startup for later match test. This may take a few seconds (or more)
-depending on the speed with which the hostname lookups occur.<P>
-
-<H2><A NAME="socks">Can I use the Apache proxy module with my SOCKS proxy?</A></H2>
-
-Yes. Just build Apache with the rule <CODE>SOCKS4=yes</CODE> in your
-<EM>Configuration</EM> file, and follow the instructions there. SOCKS5
-capability can be added in a similar way (there's no <CODE>SOCKS5</CODE>
-rule yet), so use the <CODE>EXTRA_LDFLAGS</CODE> definition, or build Apache
-normally and run it with the <EM>runsocks</EM> wrapper provided with SOCKS5,
-if your OS supports dynamically linked libraries.<P>
-
-Some users have reported problems when using SOCKS version 4.2 on Solaris.
-The problem was solved by upgrading to SOCKS 4.3.<P>
-
-Remember that you'll also have to grant access to your Apache proxy machine by
-permitting connections on the appropriate ports in your SOCKS daemon's
-configuration.<P>
-
-<H2><A NAME="intranet">What other functions are useful for an intranet proxy server?</A></H2>
-
-<P>An Apache proxy server situated in an intranet needs to forward external
-requests through the company's firewall. However, when it has to access
-resources within the intranet, it can bypass the firewall when accessing
-hosts. The <A HREF="#noproxy">NoProxy</A> directive is useful for specifying
-which hosts belong to the intranet and should be accessed directly.</P>
-
-<P>Users within an intranet tend to omit the local domain name from their
-WWW requests, thus requesting "http://somehost/" instead of
-"http://somehost.my.dom.ain/". Some commercial proxy servers let them get
-away with this and simply serve the request, implying a configured
-local domain. When the <A HREF="#proxydomain">ProxyDomain</A> directive
-is used and the server is <A HREF="#proxyrequests">configured for
-proxy service</A>, Apache can return a redirect response and send the client
-to the correct, fully qualified, server address. This is the preferred method
-since the user's bookmark files will then contain fully qualified hosts.</P>
-
<!--#include virtual="footer.html" -->
</BODY>
</HTML>