]> granicus.if.org Git - apache/commitdiff
Convert the mod_ldap docs to xml and add a cross-reference and
authorJoshua Slive <slive@apache.org>
Sat, 31 Aug 2002 16:58:52 +0000 (16:58 +0000)
committerJoshua Slive <slive@apache.org>
Sat, 31 Aug 2002 16:58:52 +0000 (16:58 +0000)
<compatibility> info to mod_auth_ldap.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96599 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/mod/directives.html.en
docs/manual/mod/index.html.en
docs/manual/mod/mod_auth_ldap.html.en
docs/manual/mod/mod_auth_ldap.xml
docs/manual/mod/mod_ldap.html.en [new file with mode: 0644]
docs/manual/mod/mod_ldap.xml [new file with mode: 0644]

index a9bbfbeb99a0c0b838e8961303ca16258301e6c3..f90060f1386468c5322d958de2ed2c1416c2fe5e 100644 (file)
@@ -9,4 +9,4 @@
       consistent format, and there is <a href="directive-dict.html" rel="Glossary">a dictionary</a> of the terms used in their
       descriptions available.
     </p>
-  <ul><li><a href="prefork.html#acceptmutex">AcceptMutex</a></li><li><a href="core.html#acceptpathinfo">AcceptPathInfo</a></li><li><a href="core.html#accessfilename">AccessFileName</a></li><li><a href="mod_actions.html#action">Action</a></li><li><a href="mod_autoindex.html#addalt">AddAlt</a></li><li><a href="mod_autoindex.html#addaltbyencoding">AddAltByEncoding</a></li><li><a href="mod_autoindex.html#addaltbytype">AddAltByType</a></li><li><a href="mod_mime.html#addcharset">AddCharset</a></li><li><a href="core.html#adddefaultcharset">AddDefaultCharset</a></li><li><a href="mod_autoindex.html#adddescription">AddDescription</a></li><li><a href="mod_mime.html#addencoding">AddEncoding</a></li><li><a href="mod_mime.html#addhandler">AddHandler</a></li><li><a href="mod_autoindex.html#addicon">AddIcon</a></li><li><a href="mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></li><li><a href="mod_autoindex.html#addiconbytype">AddIconByType</a></li><li><a href="mod_mime.html#addinputfilter">AddInputFilter</a></li><li><a href="mod_mime.html#addlanguage">AddLanguage</a></li><li><a href="mod_info.html#addmoduleinfo">AddModuleInfo</a></li><li><a href="mod_mime.html#addoutputfilter">AddOutputFilter</a></li><li><a href="mod_mime.html#addtype">AddType</a></li><li><a href="mod_alias.html#alias">Alias</a></li><li><a href="mod_alias.html#aliasmatch">AliasMatch</a></li><li><a href="mod_access.html#allow">Allow</a></li><li><a href="mod_proxy.html#allowconnect">AllowCONNECT</a></li><li><a href="core.html#allowoverride">AllowOverride</a></li><li><a href="mod_auth_anon.html#anonymous">Anonymous</a></li><li><a href="mod_auth_anon.html#anonymous_authoritative">Anonymous_Authoritative</a></li><li><a href="mod_auth_anon.html#anonymous_logemail">Anonymous_LogEmail</a></li><li><a href="mod_auth_anon.html#anonymous_mustgiveemail">Anonymous_MustGiveEmail</a></li><li><a href="mod_auth_anon.html#anonymous_nouserid">Anonymous_NoUserID</a></li><li><a href="mod_auth_anon.html#anonymous_verifyemail">Anonymous_VerifyEmail</a></li><li><a href="perchild.html#assignuserid">AssignUserId</a></li><li><a href="mod_auth.html#authauthoritative">AuthAuthoritative</a></li><li><a href="mod_auth_dbm.html#authdbmauthoritative">AuthDBMAuthoritative</a></li><li><a href="mod_auth_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></li><li><a href="mod_auth_dbm.html#authdbmtype">AuthDBMType</a></li><li><a href="mod_auth_dbm.html#authdbmuserfile">AuthDBMUserFile</a></li><li><a href="mod_auth_digest.html#authdigestalgorithm">AuthDigestAlgorithm</a></li><li><a href="mod_auth_digest.html#authdigestdomain">AuthDigestDomain</a></li><li><a href="mod_auth_digest.html#authdigestfile">AuthDigestFile</a></li><li><a href="mod_auth_digest.html#authdigestgroupfile">AuthDigestGroupFile</a></li><li><a href="mod_auth_digest.html#authdigestnccheck">AuthDigestNcCheck</a></li><li><a href="mod_auth_digest.html#authdigestnonceformat">AuthDigestNonceFormat</a></li><li><a href="mod_auth_digest.html#authdigestnoncelifetime">AuthDigestNonceLifetime</a></li><li><a href="mod_auth_digest.html#authdigestqop">AuthDigestQop</a></li><li><a href="mod_auth.html#authgroupfile">AuthGroupFile</a></li><li><a href="mod_auth_ldap.html#authldapauthoritative">AuthLDAPAuthoritative</a></li><li><a href="mod_auth_ldap.html#authldapbinddn">AuthLDAPBindDN</a></li><li><a href="mod_auth_ldap.html#authldapbindpassword">AuthLDAPBindPassword</a></li><li><a href="mod_auth_ldap.html#authldapcomparednonserver">AuthLDAPCompareDNOnServer</a></li><li><a href="mod_auth_ldap.html#authldapdereferencealiases">AuthLDAPDereferenceAliases</a></li><li><a href="mod_auth_ldap.html#authldapenabled">AuthLDAPEnabled</a></li><li><a href="mod_auth_ldap.html#authldapfrontpagehack">AuthLDAPFrontPageHack</a></li><li><a href="mod_auth_ldap.html#authldapgroupattribute">AuthLDAPGroupAttribute</a></li><li><a href="mod_auth_ldap.html#authldapgroupattributeisdn">AuthLDAPGroupAttributeIsDN</a></li><li><a href="mod_auth_ldap.html#authldapremoteuserisdn">AuthLDAPRemoteUserIsDN</a></li><li><a href="mod_auth_ldap.html#authldapstarttls directive">AuthLDAPStartTLS directive</a></li><li><a href="mod_auth_ldap.html#authldapurl">AuthLDAPUrl</a></li><li><a href="core.html#authname">AuthName</a></li><li><a href="core.html#authtype">AuthType</a></li><li><a href="mod_auth.html#authuserfile">AuthUserFile</a></li><li><a href="mod_setenvif.html#browsermatch">BrowserMatch</a></li><li><a href="mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></li><li><a href="mod_cache.html#cachedefaultexpire">CacheDefaultExpire</a></li><li><a href="mod_cache.html#cachedisable">CacheDisable</a></li><li><a href="mod_cache.html#cacheenable">CacheEnable</a></li><li><a href="mod_file_cache.html#cachefile">CacheFile</a></li><li><a href="mod_cache.html#cacheforcecompletion">CacheForceCompletion</a></li><li><a href="mod_cache.html#cacheforcecompletion">CacheForceCompletion</a></li><li><a href="mod_cache.html#cacheignorecachecontrol">CacheIgnoreCacheControl</a></li><li><a href="mod_cache.html#cacheignorenolastmod">CacheIgnoreNoLastMod</a></li><li><a href="mod_cache.html#cachelastmodifiedfactor">CacheLastModifiedFactor</a></li><li><a href="mod_cache.html#cachemaxexpire">CacheMaxExpire</a></li><li><a href="mod_negotiation.html#cachenegotiateddocs">CacheNegotiatedDocs</a></li><li><a href="core.html#cgimapextension">CGIMapExtension</a></li><li><a href="mod_charset_lite.html#charsetdefault">CharsetDefault</a></li><li><a href="mod_charset_lite.html#charsetoptions">CharsetOptions</a></li><li><a href="mod_charset_lite.html#charsetsourceenc">CharsetSourceEnc</a></li><li><a href="mod_speling.html#checkspelling">CheckSpelling</a></li><li><a href="perchild.html#childperuserid">ChildPerUserId</a></li><li><a href="core.html#contentdigest">ContentDigest</a></li><li><a href="mod_usertrack.html#cookiedomain">CookieDomain</a></li><li><a href="mod_usertrack.html#cookieexpires">CookieExpires</a></li><li><a href="mod_log_config.html#cookielog">CookieLog</a></li><li><a href="mod_usertrack.html#cookiename">CookieName</a></li><li><a href="mod_usertrack.html#cookiestyle">CookieStyle</a></li><li><a href="mod_usertrack.html#cookietracking">CookieTracking</a></li><li><a href="mpm_common.html#coredumpdirectory">CoreDumpDirectory</a></li><li><a href="mod_log_config.html#customlog">CustomLog</a></li><li><a href="mod_dav.html#dav">Dav</a></li><li><a href="mod_dav.html#davdepthinfinity">DavDepthInfinity</a></li><li><a href="mod_dav.html#davlockdb">DavLockDB</a></li><li><a href="mod_dav.html#davmintimeout">DavMinTimeout</a></li><li><a href="mod_autoindex.html#defaulticon">DefaultIcon</a></li><li><a href="mod_mime.html#defaultlanguage">DefaultLanguage</a></li><li><a href="core.html#defaulttype">DefaultType</a></li><li><a href="mod_deflate.html#deflatebuffersize">DeflateBufferSize</a></li><li><a href="mod_deflate.html#deflatefilternote">DeflateFilterNote</a></li><li><a href="mod_deflate.html#deflatememlevel">DeflateMemLevel</a></li><li><a href="mod_deflate.html#deflatewindowsize">DeflateWindowSize</a></li><li><a href="mod_access.html#deny">Deny</a></li><li><a href="core.html#directory">Directory</a></li><li><a href="mod_dir.html#directoryindex">DirectoryIndex</a></li><li><a href="core.html#directorymatch">DirectoryMatch</a></li><li><a href="core.html#documentroot">DocumentRoot</a></li><li><a href="core.html#enablemmap">EnableMMAP</a></li><li><a href="core.html#errordocument">ErrorDocument</a></li><li><a href="core.html#errorlog">ErrorLog</a></li><li><a href="mod_example.html#example">Example</a></li><li><a href="mod_expires.html#expiresactive">ExpiresActive</a></li><li><a href="mod_expires.html#expiresbytype">ExpiresByType</a></li><li><a href="mod_expires.html#expiresdefault">ExpiresDefault</a></li><li><a href="mod_status.html#extendedstatus">ExtendedStatus</a></li><li><a href="mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></li><li><a href="mod_ext_filter.html#extfilteroptions">ExtFilterOptions</a></li><li><a href="core.html#fileetag">FileETag</a></li><li><a href="core.html#files">Files</a></li><li><a href="core.html#filesmatch">FilesMatch</a></li><li><a href="mod_negotiation.html#forcelanguagepriority">ForceLanguagePriority</a></li><li><a href="core.html#forcetype">ForceType</a></li><li><a href="mpm_common.html#group">Group</a></li><li><a href="mod_headers.html#header">Header</a></li><li><a href="mod_autoindex.html#headername">HeaderName</a></li><li><a href="core.html#hostnamelookups">HostnameLookups</a></li><li><a href="core.html#identitycheck">IdentityCheck</a></li><li><a href="core.html#ifdefine">IfDefine</a></li><li><a href="core.html#ifmodule">IfModule</a></li><li><a href="mod_imap.html#imapbase">ImapBase</a></li><li><a href="mod_imap.html#imapdefault">ImapDefault</a></li><li><a href="mod_imap.html#imapmenu">ImapMenu</a></li><li><a href="core.html#include">Include</a></li><li><a href="mod_autoindex.html#indexignore">IndexIgnore</a></li><li><a href="mod_autoindex.html#indexoptions">IndexOptions</a></li><li><a href="mod_autoindex.html#indexorderdefault">IndexOrderDefault</a></li><li><a href="mod_isapi.html#isapiappendlogtoerrors">ISAPIAppendLogToErrors</a></li><li><a href="mod_isapi.html#isapiappendlogtoquery">ISAPIAppendLogToQuery</a></li><li><a href="mod_isapi.html#isapicachefile">ISAPICacheFile</a></li><li><a href="mod_isapi.html#isapifakeasync">ISAPIFakeAsync</a></li><li><a href="mod_isapi.html#isapilognotsupported">ISAPILogNotSupported</a></li><li><a href="mod_isapi.html#isapireadaheadbuffer">ISAPIReadAheadBuffer</a></li><li><a href="core.html#keepalive">KeepAlive</a></li><li><a href="core.html#keepalivetimeout">KeepAliveTimeout</a></li><li><a href="mod_negotiation.html#languagepriority">LanguagePriority</a></li><li><a href="core.html#limit">Limit</a></li><li><a href="core.html#limitexcept">LimitExcept</a></li><li><a href="core.html#limitrequestbody">LimitRequestBody</a></li><li><a href="core.html#limitrequestfields">LimitRequestFields</a></li><li><a href="core.html#limitrequestfieldsize">LimitRequestFieldSize</a></li><li><a href="core.html#limitrequestline">LimitRequestLine</a></li><li><a href="core.html#limitxmlrequestbody">LimitXMLRequestBody</a></li><li><a href="mpm_common.html#listen">Listen</a></li><li><a href="mpm_common.html#listenbacklog">ListenBackLog</a></li><li><a href="mod_so.html#loadfile">LoadFile</a></li><li><a href="mod_so.html#loadmodule">LoadModule</a></li><li><a href="core.html#location">Location</a></li><li><a href="core.html#locationmatch">LocationMatch</a></li><li><a href="mpm_common.html#lockfile">LockFile</a></li><li><a href="mod_log_config.html#logformat">LogFormat</a></li><li><a href="core.html#loglevel">LogLevel</a></li><li><a href="mpm_common.html#maxclients">MaxClients</a></li><li><a href="core.html#maxkeepaliverequests">MaxKeepAliveRequests</a></li><li><a href="mpm_common.html#maxrequestsperchild">MaxRequestsPerChild</a></li><li><a href="prefork.html#maxspareservers">MaxSpareServers</a></li><li><a href="mpm_common.html#maxsparethreads">MaxSpareThreads</a></li><li><a href="mpm_netware.html#maxthreads">MaxThreads</a></li><li><a href="mpm_common.html#maxthreadsperchild">MaxThreadsPerChild</a></li><li><a href="mod_cern_meta.html#metadir">MetaDir</a></li><li><a href="mod_cern_meta.html#metafiles">MetaFiles</a></li><li><a href="mod_cern_meta.html#metasuffix">MetaSuffix</a></li><li><a href="mod_mime_magic.html#mimemagicfile">MimeMagicFile</a></li><li><a href="prefork.html#minspareservers">MinSpareServers</a></li><li><a href="mpm_common.html#minsparethreads">MinSpareThreads</a></li><li><a href="mod_file_cache.html#mmapfile">MMapFile</a></li><li><a href="mod_mime.html#multiviewsmatch">MultiviewsMatch</a></li><li><a href="core.html#namevirtualhost">NameVirtualHost</a></li><li><a href="mod_proxy.html#noproxy">NoProxy</a></li><li><a href="mpm_common.html#numservers">NumServers</a></li><li><a href="core.html#options">Options</a></li><li><a href="mod_access.html#order">Order</a></li><li><a href="mod_env.html#passenv">PassEnv</a></li><li><a href="mpm_common.html#pidfile">PidFile</a></li><li><a href="mod_echo.html#protocolecho">ProtocolEcho</a></li><li><a href="mod_proxy.html#proxy">Proxy</a></li><li><a href="mod_proxy.html#proxyblock">ProxyBlock</a></li><li><a href="mod_proxy.html#proxydomain">ProxyDomain</a></li><li><a href="mod_proxy.html#proxyerroroverride">ProxyErrorOverride</a></li><li><a href="mod_proxy.html#proxyiobuffersize">ProxyIOBufferSize</a></li><li><a href="mod_proxy.html#proxymatch">ProxyMatch</a></li><li><a href="mod_proxy.html#proxymaxforwards">ProxyMaxForwards</a></li><li><a href="mod_proxy.html#proxypass">ProxyPass</a></li><li><a href="mod_proxy.html#proxypassreverse">ProxyPassReverse</a></li><li><a href="mod_proxy.html#proxypreservehost">ProxyPreserveHost</a></li><li><a href="mod_proxy.html#proxyreceivebuffersize">ProxyReceiveBufferSize</a></li><li><a href="mod_proxy.html#proxyremote">ProxyRemote</a></li><li><a href="mod_proxy.html#proxyremotematch">ProxyRemoteMatch</a></li><li><a href="mod_proxy.html#proxyrequests">ProxyRequests</a></li><li><a href="mod_proxy.html#proxytimeout">ProxyTimeout</a></li><li><a href="mod_proxy.html#proxyvia">ProxyVia</a></li><li><a href="mod_autoindex.html#readmename">ReadmeName</a></li><li><a href="mod_alias.html#redirect">Redirect</a></li><li><a href="mod_alias.html#redirectmatch">RedirectMatch</a></li><li><a href="mod_alias.html#redirectpermanent">RedirectPermanent</a></li><li><a href="mod_alias.html#redirecttemp">RedirectTemp</a></li><li><a href="mod_mime.html#removecharset">RemoveCharset</a></li><li><a href="mod_mime.html#removeencoding">RemoveEncoding</a></li><li><a href="mod_mime.html#removehandler">RemoveHandler</a></li><li><a href="mod_mime.html#removeinputfilter">RemoveInputFilter</a></li><li><a href="mod_mime.html#removelanguage">RemoveLanguage</a></li><li><a href="mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></li><li><a href="mod_mime.html#removetype">RemoveType</a></li><li><a href="mod_headers.html#requestheader">RequestHeader</a></li><li><a href="core.html#require">Require</a></li><li><a href="mod_rewrite.html#rewritebase">RewriteBase</a></li><li><a href="mod_rewrite.html#rewritecond">RewriteCond</a></li><li><a href="mod_rewrite.html#rewriteengine">RewriteEngine</a></li><li><a href="mod_rewrite.html#rewritelock">RewriteLock</a></li><li><a href="mod_rewrite.html#rewritelog">RewriteLog</a></li><li><a href="mod_rewrite.html#rewriteloglevel">RewriteLogLevel</a></li><li><a href="mod_rewrite.html#rewritemap">RewriteMap</a></li><li><a href="mod_rewrite.html#rewriteoptions">RewriteOptions</a></li><li><a href="mod_rewrite.html#rewriterule">RewriteRule</a></li><li><a href="core.html#rlimitcpu">RLimitCPU</a></li><li><a href="core.html#rlimitmem">RLimitMEM</a></li><li><a href="core.html#rlimitnproc">RLimitNPROC</a></li><li><a href="core.html#satisfy">Satisfy</a></li><li><a href="mpm_common.html#scoreboardfile">ScoreBoardFile</a></li><li><a href="mod_actions.html#script">Script</a></li><li><a href="mod_alias.html#scriptalias">ScriptAlias</a></li><li><a href="mod_alias.html#scriptaliasmatch">ScriptAliasMatch</a></li><li><a href="core.html#scriptinterpretersource">ScriptInterpreterSource</a></li><li><a href="mod_cgi.html#scriptlog">ScriptLog</a></li><li><a href="mod_cgi.html#scriptlogbuffer">ScriptLogBuffer</a></li><li><a href="mod_cgi.html#scriptloglength">ScriptLogLength</a></li><li><a href="mod_cgid.html#scriptsock">ScriptSock</a></li><li><a href="mpm_common.html#sendbuffersize">SendBufferSize</a></li><li><a href="core.html#serveradmin">ServerAdmin</a></li><li><a href="core.html#serveralias">ServerAlias</a></li><li><a href="mpm_common.html#serverlimit">ServerLimit</a></li><li><a href="core.html#servername">ServerName</a></li><li><a href="core.html#serverpath">ServerPath</a></li><li><a href="core.html#serverroot">ServerRoot</a></li><li><a href="core.html#serversignature">ServerSignature</a></li><li><a href="core.html#servertokens">ServerTokens</a></li><li><a href="mod_env.html#setenv">SetEnv</a></li><li><a href="mod_setenvif.html#setenvif">SetEnvIf</a></li><li><a href="mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></li><li><a href="core.html#sethandler">SetHandler</a></li><li><a href="core.html#setinputfilter">SetInputFilter</a></li><li><a href="core.html#setoutputfilter">SetOutputFilter</a></li><li><a href="mod_include.html#ssiendtag">SSIEndTag</a></li><li><a href="mod_include.html#ssierrormsg">SSIErrorMsg</a></li><li><a href="mod_include.html#ssistarttag">SSIStartTag</a></li><li><a href="mod_include.html#ssitimeformat">SSITimeFormat</a></li><li><a href="mod_include.html#ssiundefinedecho">SSIUndefinedEcho</a></li><li><a href="mod_ssl.html#sslcacertificatefile">SSLCACertificateFile</a></li><li><a href="mod_ssl.html#sslcacertificatepath">SSLCACertificatePath</a></li><li><a href="mod_ssl.html#sslcarevocationfile">SSLCARevocationFile</a></li><li><a href="mod_ssl.html#sslcarevocationpath">SSLCARevocationPath</a></li><li><a href="mod_ssl.html#sslcertificatechainfile">SSLCertificateChainFile</a></li><li><a href="mod_ssl.html#sslcertificatefile">SSLCertificateFile</a></li><li><a href="mod_ssl.html#sslcertificatekeyfile">SSLCertificateKeyFile</a></li><li><a href="mod_ssl.html#sslciphersuite">SSLCipherSuite</a></li><li><a href="mod_ssl.html#sslengine">SSLEngine</a></li><li><a href="mod_ssl.html#sslmutex">SSLMutex</a></li><li><a href="mod_ssl.html#ssloptions">SSLOptions</a></li><li><a href="mod_ssl.html#sslpassphrasedialog">SSLPassPhraseDialog</a></li><li><a href="mod_ssl.html#sslprotocol">SSLProtocol</a></li><li><a href="mod_ssl.html#sslproxycacertificatefile">SSLProxyCACertificateFile</a></li><li><a href="mod_ssl.html#sslproxycacertificatepath">SSLProxyCACertificatePath</a></li><li><a href="mod_ssl.html#sslproxycarevocationfile">SSLProxyCARevocationFile</a></li><li><a href="mod_ssl.html#sslproxycarevocationpath">SSLProxyCARevocationPath</a></li><li><a href="mod_ssl.html#sslproxyciphersuite">SSLProxyCipherSuite</a></li><li><a href="mod_ssl.html#sslproxyengine">SSLProxyEngine</a></li><li><a href="mod_ssl.html#sslproxymachinecertificatefile">SSLProxyMachineCertificateFile</a></li><li><a href="mod_ssl.html#sslproxymachinecertificatepath">SSLProxyMachineCertificatePath</a></li><li><a href="mod_ssl.html#sslproxyprotocol">SSLProxyProtocol</a></li><li><a href="mod_ssl.html#sslproxyverify">SSLProxyVerify</a></li><li><a href="mod_ssl.html#sslproxyverifydepth">SSLProxyVerifyDepth</a></li><li><a href="mod_ssl.html#sslrandomseed">SSLRandomSeed</a></li><li><a href="mod_ssl.html#sslrequire">SSLRequire</a></li><li><a href="mod_ssl.html#sslrequiressl">SSLRequireSSL</a></li><li><a href="mod_ssl.html#sslsessioncache">SSLSessionCache</a></li><li><a href="mod_ssl.html#sslsessioncachetimeout">SSLSessionCacheTimeout</a></li><li><a href="mod_ssl.html#sslverifyclient">SSLVerifyClient</a></li><li><a href="mod_ssl.html#sslverifydepth">SSLVerifyDepth</a></li><li><a href="mpm_common.html#startservers">StartServers</a></li><li><a href="mpm_common.html#startthreads">StartThreads</a></li><li><a href="mod_suexec.html#suexecusergroup">SuexecUserGroup</a></li><li><a href="mpm_common.html#threadlimit">ThreadLimit</a></li><li><a href="mpm_common.html#threadsperchild">ThreadsPerChild</a></li><li><a href="mpm_netware.html#threadstacksize">ThreadStackSize</a></li><li><a href="core.html#timeout">TimeOut</a></li><li><a href="mod_log_config.html#transferlog">TransferLog</a></li><li><a href="mod_mime.html#typesconfig">TypesConfig</a></li><li><a href="mod_env.html#unsetenv">UnsetEnv</a></li><li><a href="core.html#usecanonicalname">UseCanonicalName</a></li><li><a href="mpm_common.html#user">User</a></li><li><a href="mod_userdir.html#userdir">UserDir</a></li><li><a href="mod_vhost_alias.html#virtualdocumentroot">VirtualDocumentRoot</a></li><li><a href="mod_vhost_alias.html#virtualdocumentrootip">VirtualDocumentRootIP</a></li><li><a href="core.html#virtualhost">VirtualHost</a></li><li><a href="mod_vhost_alias.html#virtualscriptalias">VirtualScriptAlias</a></li><li><a href="mod_vhost_alias.html#virtualscriptaliasip">VirtualScriptAliasIP</a></li><li><a href="mod_include.html#xbithack">XBitHack</a></li></ul></blockquote><hr><h3 align="center">Apache HTTP Server Version 2.0</h3><a href="./"><img src="../images/index.gif" alt="Index"></a><a href="../"><img src="../images/home.gif" alt="Home"></a></body></html>
\ No newline at end of file
+  <ul><li><a href="prefork.html#acceptmutex">AcceptMutex</a></li><li><a href="core.html#acceptpathinfo">AcceptPathInfo</a></li><li><a href="core.html#accessfilename">AccessFileName</a></li><li><a href="mod_actions.html#action">Action</a></li><li><a href="mod_autoindex.html#addalt">AddAlt</a></li><li><a href="mod_autoindex.html#addaltbyencoding">AddAltByEncoding</a></li><li><a href="mod_autoindex.html#addaltbytype">AddAltByType</a></li><li><a href="mod_mime.html#addcharset">AddCharset</a></li><li><a href="core.html#adddefaultcharset">AddDefaultCharset</a></li><li><a href="mod_autoindex.html#adddescription">AddDescription</a></li><li><a href="mod_mime.html#addencoding">AddEncoding</a></li><li><a href="mod_mime.html#addhandler">AddHandler</a></li><li><a href="mod_autoindex.html#addicon">AddIcon</a></li><li><a href="mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></li><li><a href="mod_autoindex.html#addiconbytype">AddIconByType</a></li><li><a href="mod_mime.html#addinputfilter">AddInputFilter</a></li><li><a href="mod_mime.html#addlanguage">AddLanguage</a></li><li><a href="mod_info.html#addmoduleinfo">AddModuleInfo</a></li><li><a href="mod_mime.html#addoutputfilter">AddOutputFilter</a></li><li><a href="mod_mime.html#addtype">AddType</a></li><li><a href="mod_alias.html#alias">Alias</a></li><li><a href="mod_alias.html#aliasmatch">AliasMatch</a></li><li><a href="mod_access.html#allow">Allow</a></li><li><a href="mod_proxy.html#allowconnect">AllowCONNECT</a></li><li><a href="core.html#allowoverride">AllowOverride</a></li><li><a href="mod_auth_anon.html#anonymous">Anonymous</a></li><li><a href="mod_auth_anon.html#anonymous_authoritative">Anonymous_Authoritative</a></li><li><a href="mod_auth_anon.html#anonymous_logemail">Anonymous_LogEmail</a></li><li><a href="mod_auth_anon.html#anonymous_mustgiveemail">Anonymous_MustGiveEmail</a></li><li><a href="mod_auth_anon.html#anonymous_nouserid">Anonymous_NoUserID</a></li><li><a href="mod_auth_anon.html#anonymous_verifyemail">Anonymous_VerifyEmail</a></li><li><a href="perchild.html#assignuserid">AssignUserId</a></li><li><a href="mod_auth.html#authauthoritative">AuthAuthoritative</a></li><li><a href="mod_auth_dbm.html#authdbmauthoritative">AuthDBMAuthoritative</a></li><li><a href="mod_auth_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></li><li><a href="mod_auth_dbm.html#authdbmtype">AuthDBMType</a></li><li><a href="mod_auth_dbm.html#authdbmuserfile">AuthDBMUserFile</a></li><li><a href="mod_auth_digest.html#authdigestalgorithm">AuthDigestAlgorithm</a></li><li><a href="mod_auth_digest.html#authdigestdomain">AuthDigestDomain</a></li><li><a href="mod_auth_digest.html#authdigestfile">AuthDigestFile</a></li><li><a href="mod_auth_digest.html#authdigestgroupfile">AuthDigestGroupFile</a></li><li><a href="mod_auth_digest.html#authdigestnccheck">AuthDigestNcCheck</a></li><li><a href="mod_auth_digest.html#authdigestnonceformat">AuthDigestNonceFormat</a></li><li><a href="mod_auth_digest.html#authdigestnoncelifetime">AuthDigestNonceLifetime</a></li><li><a href="mod_auth_digest.html#authdigestqop">AuthDigestQop</a></li><li><a href="mod_auth.html#authgroupfile">AuthGroupFile</a></li><li><a href="mod_auth_ldap.html#authldapauthoritative">AuthLDAPAuthoritative</a></li><li><a href="mod_auth_ldap.html#authldapbinddn">AuthLDAPBindDN</a></li><li><a href="mod_auth_ldap.html#authldapbindpassword">AuthLDAPBindPassword</a></li><li><a href="mod_auth_ldap.html#authldapcomparednonserver">AuthLDAPCompareDNOnServer</a></li><li><a href="mod_auth_ldap.html#authldapdereferencealiases">AuthLDAPDereferenceAliases</a></li><li><a href="mod_auth_ldap.html#authldapenabled">AuthLDAPEnabled</a></li><li><a href="mod_auth_ldap.html#authldapfrontpagehack">AuthLDAPFrontPageHack</a></li><li><a href="mod_auth_ldap.html#authldapgroupattribute">AuthLDAPGroupAttribute</a></li><li><a href="mod_auth_ldap.html#authldapgroupattributeisdn">AuthLDAPGroupAttributeIsDN</a></li><li><a href="mod_auth_ldap.html#authldapremoteuserisdn">AuthLDAPRemoteUserIsDN</a></li><li><a href="mod_auth_ldap.html#authldapstarttls directive">AuthLDAPStartTLS directive</a></li><li><a href="mod_auth_ldap.html#authldapurl">AuthLDAPUrl</a></li><li><a href="core.html#authname">AuthName</a></li><li><a href="core.html#authtype">AuthType</a></li><li><a href="mod_auth.html#authuserfile">AuthUserFile</a></li><li><a href="mod_setenvif.html#browsermatch">BrowserMatch</a></li><li><a href="mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></li><li><a href="mod_cache.html#cachedefaultexpire">CacheDefaultExpire</a></li><li><a href="mod_cache.html#cachedisable">CacheDisable</a></li><li><a href="mod_cache.html#cacheenable">CacheEnable</a></li><li><a href="mod_file_cache.html#cachefile">CacheFile</a></li><li><a href="mod_cache.html#cacheforcecompletion">CacheForceCompletion</a></li><li><a href="mod_cache.html#cacheforcecompletion">CacheForceCompletion</a></li><li><a href="mod_cache.html#cacheignorecachecontrol">CacheIgnoreCacheControl</a></li><li><a href="mod_cache.html#cacheignorenolastmod">CacheIgnoreNoLastMod</a></li><li><a href="mod_cache.html#cachelastmodifiedfactor">CacheLastModifiedFactor</a></li><li><a href="mod_cache.html#cachemaxexpire">CacheMaxExpire</a></li><li><a href="mod_negotiation.html#cachenegotiateddocs">CacheNegotiatedDocs</a></li><li><a href="core.html#cgimapextension">CGIMapExtension</a></li><li><a href="mod_charset_lite.html#charsetdefault">CharsetDefault</a></li><li><a href="mod_charset_lite.html#charsetoptions">CharsetOptions</a></li><li><a href="mod_charset_lite.html#charsetsourceenc">CharsetSourceEnc</a></li><li><a href="mod_speling.html#checkspelling">CheckSpelling</a></li><li><a href="perchild.html#childperuserid">ChildPerUserId</a></li><li><a href="core.html#contentdigest">ContentDigest</a></li><li><a href="mod_usertrack.html#cookiedomain">CookieDomain</a></li><li><a href="mod_usertrack.html#cookieexpires">CookieExpires</a></li><li><a href="mod_log_config.html#cookielog">CookieLog</a></li><li><a href="mod_usertrack.html#cookiename">CookieName</a></li><li><a href="mod_usertrack.html#cookiestyle">CookieStyle</a></li><li><a href="mod_usertrack.html#cookietracking">CookieTracking</a></li><li><a href="mpm_common.html#coredumpdirectory">CoreDumpDirectory</a></li><li><a href="mod_log_config.html#customlog">CustomLog</a></li><li><a href="mod_dav.html#dav">Dav</a></li><li><a href="mod_dav.html#davdepthinfinity">DavDepthInfinity</a></li><li><a href="mod_dav.html#davlockdb">DavLockDB</a></li><li><a href="mod_dav.html#davmintimeout">DavMinTimeout</a></li><li><a href="mod_autoindex.html#defaulticon">DefaultIcon</a></li><li><a href="mod_mime.html#defaultlanguage">DefaultLanguage</a></li><li><a href="core.html#defaulttype">DefaultType</a></li><li><a href="mod_deflate.html#deflatebuffersize">DeflateBufferSize</a></li><li><a href="mod_deflate.html#deflatefilternote">DeflateFilterNote</a></li><li><a href="mod_deflate.html#deflatememlevel">DeflateMemLevel</a></li><li><a href="mod_deflate.html#deflatewindowsize">DeflateWindowSize</a></li><li><a href="mod_access.html#deny">Deny</a></li><li><a href="core.html#directory">Directory</a></li><li><a href="mod_dir.html#directoryindex">DirectoryIndex</a></li><li><a href="core.html#directorymatch">DirectoryMatch</a></li><li><a href="core.html#documentroot">DocumentRoot</a></li><li><a href="core.html#enablemmap">EnableMMAP</a></li><li><a href="core.html#errordocument">ErrorDocument</a></li><li><a href="core.html#errorlog">ErrorLog</a></li><li><a href="mod_example.html#example">Example</a></li><li><a href="mod_expires.html#expiresactive">ExpiresActive</a></li><li><a href="mod_expires.html#expiresbytype">ExpiresByType</a></li><li><a href="mod_expires.html#expiresdefault">ExpiresDefault</a></li><li><a href="mod_status.html#extendedstatus">ExtendedStatus</a></li><li><a href="mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></li><li><a href="mod_ext_filter.html#extfilteroptions">ExtFilterOptions</a></li><li><a href="core.html#fileetag">FileETag</a></li><li><a href="core.html#files">Files</a></li><li><a href="core.html#filesmatch">FilesMatch</a></li><li><a href="mod_negotiation.html#forcelanguagepriority">ForceLanguagePriority</a></li><li><a href="core.html#forcetype">ForceType</a></li><li><a href="mpm_common.html#group">Group</a></li><li><a href="mod_headers.html#header">Header</a></li><li><a href="mod_autoindex.html#headername">HeaderName</a></li><li><a href="core.html#hostnamelookups">HostnameLookups</a></li><li><a href="core.html#identitycheck">IdentityCheck</a></li><li><a href="core.html#ifdefine">IfDefine</a></li><li><a href="core.html#ifmodule">IfModule</a></li><li><a href="mod_imap.html#imapbase">ImapBase</a></li><li><a href="mod_imap.html#imapdefault">ImapDefault</a></li><li><a href="mod_imap.html#imapmenu">ImapMenu</a></li><li><a href="core.html#include">Include</a></li><li><a href="mod_autoindex.html#indexignore">IndexIgnore</a></li><li><a href="mod_autoindex.html#indexoptions">IndexOptions</a></li><li><a href="mod_autoindex.html#indexorderdefault">IndexOrderDefault</a></li><li><a href="mod_isapi.html#isapiappendlogtoerrors">ISAPIAppendLogToErrors</a></li><li><a href="mod_isapi.html#isapiappendlogtoquery">ISAPIAppendLogToQuery</a></li><li><a href="mod_isapi.html#isapicachefile">ISAPICacheFile</a></li><li><a href="mod_isapi.html#isapifakeasync">ISAPIFakeAsync</a></li><li><a href="mod_isapi.html#isapilognotsupported">ISAPILogNotSupported</a></li><li><a href="mod_isapi.html#isapireadaheadbuffer">ISAPIReadAheadBuffer</a></li><li><a href="core.html#keepalive">KeepAlive</a></li><li><a href="core.html#keepalivetimeout">KeepAliveTimeout</a></li><li><a href="mod_negotiation.html#languagepriority">LanguagePriority</a></li><li><a href="mod_ldap.html#ldapcacheentries">LDAPCacheEntries</a></li><li><a href="mod_ldap.html#ldapcachettl">LDAPCacheTTL</a></li><li><a href="mod_ldap.html#ldapcertdbpath">LDAPCertDBPath</a></li><li><a href="mod_ldap.html#ldapopcacheentries">LDAPOpCacheEntries</a></li><li><a href="mod_ldap.html#ldapopcachettl">LDAPOpCacheTTL</a></li><li><a href="mod_ldap.html#ldapsharedcachesize">LDAPSharedCacheSize</a></li><li><a href="core.html#limit">Limit</a></li><li><a href="core.html#limitexcept">LimitExcept</a></li><li><a href="core.html#limitrequestbody">LimitRequestBody</a></li><li><a href="core.html#limitrequestfields">LimitRequestFields</a></li><li><a href="core.html#limitrequestfieldsize">LimitRequestFieldSize</a></li><li><a href="core.html#limitrequestline">LimitRequestLine</a></li><li><a href="core.html#limitxmlrequestbody">LimitXMLRequestBody</a></li><li><a href="mpm_common.html#listen">Listen</a></li><li><a href="mpm_common.html#listenbacklog">ListenBackLog</a></li><li><a href="mod_so.html#loadfile">LoadFile</a></li><li><a href="mod_so.html#loadmodule">LoadModule</a></li><li><a href="core.html#location">Location</a></li><li><a href="core.html#locationmatch">LocationMatch</a></li><li><a href="mpm_common.html#lockfile">LockFile</a></li><li><a href="mod_log_config.html#logformat">LogFormat</a></li><li><a href="core.html#loglevel">LogLevel</a></li><li><a href="mpm_common.html#maxclients">MaxClients</a></li><li><a href="core.html#maxkeepaliverequests">MaxKeepAliveRequests</a></li><li><a href="mpm_common.html#maxrequestsperchild">MaxRequestsPerChild</a></li><li><a href="prefork.html#maxspareservers">MaxSpareServers</a></li><li><a href="mpm_common.html#maxsparethreads">MaxSpareThreads</a></li><li><a href="mpm_netware.html#maxthreads">MaxThreads</a></li><li><a href="mpm_common.html#maxthreadsperchild">MaxThreadsPerChild</a></li><li><a href="mod_cern_meta.html#metadir">MetaDir</a></li><li><a href="mod_cern_meta.html#metafiles">MetaFiles</a></li><li><a href="mod_cern_meta.html#metasuffix">MetaSuffix</a></li><li><a href="mod_mime_magic.html#mimemagicfile">MimeMagicFile</a></li><li><a href="prefork.html#minspareservers">MinSpareServers</a></li><li><a href="mpm_common.html#minsparethreads">MinSpareThreads</a></li><li><a href="mod_file_cache.html#mmapfile">MMapFile</a></li><li><a href="mod_mime.html#multiviewsmatch">MultiviewsMatch</a></li><li><a href="core.html#namevirtualhost">NameVirtualHost</a></li><li><a href="mod_proxy.html#noproxy">NoProxy</a></li><li><a href="mpm_common.html#numservers">NumServers</a></li><li><a href="core.html#options">Options</a></li><li><a href="mod_access.html#order">Order</a></li><li><a href="mod_env.html#passenv">PassEnv</a></li><li><a href="mpm_common.html#pidfile">PidFile</a></li><li><a href="mod_echo.html#protocolecho">ProtocolEcho</a></li><li><a href="mod_proxy.html#proxy">Proxy</a></li><li><a href="mod_proxy.html#proxyblock">ProxyBlock</a></li><li><a href="mod_proxy.html#proxydomain">ProxyDomain</a></li><li><a href="mod_proxy.html#proxyerroroverride">ProxyErrorOverride</a></li><li><a href="mod_proxy.html#proxyiobuffersize">ProxyIOBufferSize</a></li><li><a href="mod_proxy.html#proxymatch">ProxyMatch</a></li><li><a href="mod_proxy.html#proxymaxforwards">ProxyMaxForwards</a></li><li><a href="mod_proxy.html#proxypass">ProxyPass</a></li><li><a href="mod_proxy.html#proxypassreverse">ProxyPassReverse</a></li><li><a href="mod_proxy.html#proxypreservehost">ProxyPreserveHost</a></li><li><a href="mod_proxy.html#proxyreceivebuffersize">ProxyReceiveBufferSize</a></li><li><a href="mod_proxy.html#proxyremote">ProxyRemote</a></li><li><a href="mod_proxy.html#proxyremotematch">ProxyRemoteMatch</a></li><li><a href="mod_proxy.html#proxyrequests">ProxyRequests</a></li><li><a href="mod_proxy.html#proxytimeout">ProxyTimeout</a></li><li><a href="mod_proxy.html#proxyvia">ProxyVia</a></li><li><a href="mod_autoindex.html#readmename">ReadmeName</a></li><li><a href="mod_alias.html#redirect">Redirect</a></li><li><a href="mod_alias.html#redirectmatch">RedirectMatch</a></li><li><a href="mod_alias.html#redirectpermanent">RedirectPermanent</a></li><li><a href="mod_alias.html#redirecttemp">RedirectTemp</a></li><li><a href="mod_mime.html#removecharset">RemoveCharset</a></li><li><a href="mod_mime.html#removeencoding">RemoveEncoding</a></li><li><a href="mod_mime.html#removehandler">RemoveHandler</a></li><li><a href="mod_mime.html#removeinputfilter">RemoveInputFilter</a></li><li><a href="mod_mime.html#removelanguage">RemoveLanguage</a></li><li><a href="mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></li><li><a href="mod_mime.html#removetype">RemoveType</a></li><li><a href="mod_headers.html#requestheader">RequestHeader</a></li><li><a href="core.html#require">Require</a></li><li><a href="mod_rewrite.html#rewritebase">RewriteBase</a></li><li><a href="mod_rewrite.html#rewritecond">RewriteCond</a></li><li><a href="mod_rewrite.html#rewriteengine">RewriteEngine</a></li><li><a href="mod_rewrite.html#rewritelock">RewriteLock</a></li><li><a href="mod_rewrite.html#rewritelog">RewriteLog</a></li><li><a href="mod_rewrite.html#rewriteloglevel">RewriteLogLevel</a></li><li><a href="mod_rewrite.html#rewritemap">RewriteMap</a></li><li><a href="mod_rewrite.html#rewriteoptions">RewriteOptions</a></li><li><a href="mod_rewrite.html#rewriterule">RewriteRule</a></li><li><a href="core.html#rlimitcpu">RLimitCPU</a></li><li><a href="core.html#rlimitmem">RLimitMEM</a></li><li><a href="core.html#rlimitnproc">RLimitNPROC</a></li><li><a href="core.html#satisfy">Satisfy</a></li><li><a href="mpm_common.html#scoreboardfile">ScoreBoardFile</a></li><li><a href="mod_actions.html#script">Script</a></li><li><a href="mod_alias.html#scriptalias">ScriptAlias</a></li><li><a href="mod_alias.html#scriptaliasmatch">ScriptAliasMatch</a></li><li><a href="core.html#scriptinterpretersource">ScriptInterpreterSource</a></li><li><a href="mod_cgi.html#scriptlog">ScriptLog</a></li><li><a href="mod_cgi.html#scriptlogbuffer">ScriptLogBuffer</a></li><li><a href="mod_cgi.html#scriptloglength">ScriptLogLength</a></li><li><a href="mod_cgid.html#scriptsock">ScriptSock</a></li><li><a href="mpm_common.html#sendbuffersize">SendBufferSize</a></li><li><a href="core.html#serveradmin">ServerAdmin</a></li><li><a href="core.html#serveralias">ServerAlias</a></li><li><a href="mpm_common.html#serverlimit">ServerLimit</a></li><li><a href="core.html#servername">ServerName</a></li><li><a href="core.html#serverpath">ServerPath</a></li><li><a href="core.html#serverroot">ServerRoot</a></li><li><a href="core.html#serversignature">ServerSignature</a></li><li><a href="core.html#servertokens">ServerTokens</a></li><li><a href="mod_env.html#setenv">SetEnv</a></li><li><a href="mod_setenvif.html#setenvif">SetEnvIf</a></li><li><a href="mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></li><li><a href="core.html#sethandler">SetHandler</a></li><li><a href="core.html#setinputfilter">SetInputFilter</a></li><li><a href="core.html#setoutputfilter">SetOutputFilter</a></li><li><a href="mod_include.html#ssiendtag">SSIEndTag</a></li><li><a href="mod_include.html#ssierrormsg">SSIErrorMsg</a></li><li><a href="mod_include.html#ssistarttag">SSIStartTag</a></li><li><a href="mod_include.html#ssitimeformat">SSITimeFormat</a></li><li><a href="mod_include.html#ssiundefinedecho">SSIUndefinedEcho</a></li><li><a href="mod_ssl.html#sslcacertificatefile">SSLCACertificateFile</a></li><li><a href="mod_ssl.html#sslcacertificatepath">SSLCACertificatePath</a></li><li><a href="mod_ssl.html#sslcarevocationfile">SSLCARevocationFile</a></li><li><a href="mod_ssl.html#sslcarevocationpath">SSLCARevocationPath</a></li><li><a href="mod_ssl.html#sslcertificatechainfile">SSLCertificateChainFile</a></li><li><a href="mod_ssl.html#sslcertificatefile">SSLCertificateFile</a></li><li><a href="mod_ssl.html#sslcertificatekeyfile">SSLCertificateKeyFile</a></li><li><a href="mod_ssl.html#sslciphersuite">SSLCipherSuite</a></li><li><a href="mod_ssl.html#sslengine">SSLEngine</a></li><li><a href="mod_ssl.html#sslmutex">SSLMutex</a></li><li><a href="mod_ssl.html#ssloptions">SSLOptions</a></li><li><a href="mod_ssl.html#sslpassphrasedialog">SSLPassPhraseDialog</a></li><li><a href="mod_ssl.html#sslprotocol">SSLProtocol</a></li><li><a href="mod_ssl.html#sslproxycacertificatefile">SSLProxyCACertificateFile</a></li><li><a href="mod_ssl.html#sslproxycacertificatepath">SSLProxyCACertificatePath</a></li><li><a href="mod_ssl.html#sslproxycarevocationfile">SSLProxyCARevocationFile</a></li><li><a href="mod_ssl.html#sslproxycarevocationpath">SSLProxyCARevocationPath</a></li><li><a href="mod_ssl.html#sslproxyciphersuite">SSLProxyCipherSuite</a></li><li><a href="mod_ssl.html#sslproxyengine">SSLProxyEngine</a></li><li><a href="mod_ssl.html#sslproxymachinecertificatefile">SSLProxyMachineCertificateFile</a></li><li><a href="mod_ssl.html#sslproxymachinecertificatepath">SSLProxyMachineCertificatePath</a></li><li><a href="mod_ssl.html#sslproxyprotocol">SSLProxyProtocol</a></li><li><a href="mod_ssl.html#sslproxyverify">SSLProxyVerify</a></li><li><a href="mod_ssl.html#sslproxyverifydepth">SSLProxyVerifyDepth</a></li><li><a href="mod_ssl.html#sslrandomseed">SSLRandomSeed</a></li><li><a href="mod_ssl.html#sslrequire">SSLRequire</a></li><li><a href="mod_ssl.html#sslrequiressl">SSLRequireSSL</a></li><li><a href="mod_ssl.html#sslsessioncache">SSLSessionCache</a></li><li><a href="mod_ssl.html#sslsessioncachetimeout">SSLSessionCacheTimeout</a></li><li><a href="mod_ssl.html#sslverifyclient">SSLVerifyClient</a></li><li><a href="mod_ssl.html#sslverifydepth">SSLVerifyDepth</a></li><li><a href="mpm_common.html#startservers">StartServers</a></li><li><a href="mpm_common.html#startthreads">StartThreads</a></li><li><a href="mod_suexec.html#suexecusergroup">SuexecUserGroup</a></li><li><a href="mpm_common.html#threadlimit">ThreadLimit</a></li><li><a href="mpm_common.html#threadsperchild">ThreadsPerChild</a></li><li><a href="mpm_netware.html#threadstacksize">ThreadStackSize</a></li><li><a href="core.html#timeout">TimeOut</a></li><li><a href="mod_log_config.html#transferlog">TransferLog</a></li><li><a href="mod_mime.html#typesconfig">TypesConfig</a></li><li><a href="mod_env.html#unsetenv">UnsetEnv</a></li><li><a href="core.html#usecanonicalname">UseCanonicalName</a></li><li><a href="mpm_common.html#user">User</a></li><li><a href="mod_userdir.html#userdir">UserDir</a></li><li><a href="mod_vhost_alias.html#virtualdocumentroot">VirtualDocumentRoot</a></li><li><a href="mod_vhost_alias.html#virtualdocumentrootip">VirtualDocumentRootIP</a></li><li><a href="core.html#virtualhost">VirtualHost</a></li><li><a href="mod_vhost_alias.html#virtualscriptalias">VirtualScriptAlias</a></li><li><a href="mod_vhost_alias.html#virtualscriptaliasip">VirtualScriptAliasIP</a></li><li><a href="mod_include.html#xbithack">XBitHack</a></li></ul></blockquote><hr><h3 align="center">Apache HTTP Server Version 2.0</h3><a href="./"><img src="../images/index.gif" alt="Index"></a><a href="../"><img src="../images/home.gif" alt="Home"></a></body></html>
\ No newline at end of file
index 266f56cfa4921b823b6fec0daa01cc9825f6f639..bb9c678d49596374b66cef5cf5290437d23f6d6a 100644 (file)
@@ -38,7 +38,8 @@ modules</dd><dt><a href="mod_env.html">mod_env</a></dt><dd>Modifies the environm
     through an external program before delivery to the
     client</dd><dt><a href="mod_file_cache.html">mod_file_cache</a></dt><dd>Caches a static list of files in memory</dd><dt><a href="mod_headers.html">mod_headers</a></dt><dd>Customization of HTTP request
     and response headers</dd><dt><a href="mod_imap.html">mod_imap</a></dt><dd>Server-side imagemap processing</dd><dt><a href="mod_include.html">mod_include</a></dt><dd>Server-parsed html documents (Server Side Includes)</dd><dt><a href="mod_info.html">mod_info</a></dt><dd>Provides a comprehensive overview of the server
-configuration</dd><dt><a href="mod_isapi.html">mod_isapi</a></dt><dd>ISAPI Extensions within Apache for Windows</dd><dt><a href="mod_log_config.html">mod_log_config</a></dt><dd>Logging of the requests made to the server</dd><dt><a href="mod_mime.html">mod_mime</a></dt><dd>Associates the requested filename's extensions
+configuration</dd><dt><a href="mod_isapi.html">mod_isapi</a></dt><dd>ISAPI Extensions within Apache for Windows</dd><dt><a href="mod_ldap.html">mod_ldap</a></dt><dd>LDAP connection pooling and result caching
+services for use by other LDAP modules</dd><dt><a href="mod_log_config.html">mod_log_config</a></dt><dd>Logging of the requests made to the server</dd><dt><a href="mod_mime.html">mod_mime</a></dt><dd>Associates the requested filename's extensions
     with the file's behavior (handlers and filters)
     and content (mime-type, language, character set and
     encoding)</dd><dt><a href="mod_mime_magic.html">mod_mime_magic</a></dt><dd>Determines the MIME type of a file
index e5e937284a417be13dd0c37b15d05d2c7e76f1ee..00e7215387462767ad965fafbdf53bfd52e008df 100644 (file)
@@ -6,7 +6,8 @@
                       </span></td><td>Allows an LDAP directory to be used to store the database
 for HTTP Basic authentication.</td></tr><tr><td nowrap="nowrap"><a href="module-dict.html#Status" class="help">Status:
                       </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="module-dict.html#ModuleIdentifier" class="help">Module&nbsp;Identifier:
-                        </a></td><td>auth_ldap_module</td></tr></table></td></tr></table><h2>Summary</h2>
+                        </a></td><td>auth_ldap_module</td></tr><tr><td align="left" valign="top"><a href="module-dict.html#Compatibility" class="help">Compatibility:
+                        </a></td><td><compatibility>Available in version 2.0.41 and later</compatibility></td></tr></table></td></tr></table><h2>Summary</h2>
     <p><code><a href="../mod/mod_auth_ldap.html">mod_auth_ldap</a></code> supports the following features:</p>
 
     <ul>
@@ -26,7 +27,7 @@ for HTTP Basic authentication.</td></tr><tr><td nowrap="nowrap"><a href="module-
       <li>Support for LDAP over SSL (requires the Netscape SDK) or
       TLS (requires the OpenLDAP 2.x SDK).</li>
     </ul>
-<h2>Directives</h2><ul><li><a href="#authldapauthoritative">AuthLDAPAuthoritative</a></li><li><a href="#authldapbinddn">AuthLDAPBindDN</a></li><li><a href="#authldapbindpassword">AuthLDAPBindPassword</a></li><li><a href="#authldapcomparednonserver">AuthLDAPCompareDNOnServer</a></li><li><a href="#authldapdereferencealiases">AuthLDAPDereferenceAliases</a></li><li><a href="#authldapenabled">AuthLDAPEnabled</a></li><li><a href="#authldapfrontpagehack">AuthLDAPFrontPageHack</a></li><li><a href="#authldapgroupattribute">AuthLDAPGroupAttribute</a></li><li><a href="#authldapgroupattributeisdn">AuthLDAPGroupAttributeIsDN</a></li><li><a href="#authldapremoteuserisdn">AuthLDAPRemoteUserIsDN</a></li><li><a href="#authldapstarttls directive">AuthLDAPStartTLS directive</a></li><li><a href="#authldapurl">AuthLDAPUrl</a></li></ul><h2><a name="contents">Contents</a></h2>
+<h2>Directives</h2><ul><li><a href="#authldapauthoritative">AuthLDAPAuthoritative</a></li><li><a href="#authldapbinddn">AuthLDAPBindDN</a></li><li><a href="#authldapbindpassword">AuthLDAPBindPassword</a></li><li><a href="#authldapcomparednonserver">AuthLDAPCompareDNOnServer</a></li><li><a href="#authldapdereferencealiases">AuthLDAPDereferenceAliases</a></li><li><a href="#authldapenabled">AuthLDAPEnabled</a></li><li><a href="#authldapfrontpagehack">AuthLDAPFrontPageHack</a></li><li><a href="#authldapgroupattribute">AuthLDAPGroupAttribute</a></li><li><a href="#authldapgroupattributeisdn">AuthLDAPGroupAttributeIsDN</a></li><li><a href="#authldapremoteuserisdn">AuthLDAPRemoteUserIsDN</a></li><li><a href="#authldapstarttls directive">AuthLDAPStartTLS directive</a></li><li><a href="#authldapurl">AuthLDAPUrl</a></li></ul><p><strong>See also </strong></p><ul><li><code><a href="../mod/mod_ldap.html">mod_ldap</a></code></li></ul><h2><a name="contents">Contents</a></h2>
 
     <ul>
       <li>
index cf0edfed1e9d0fd5846635b14f74da330751371a..997b7a333223281d444ecbbafdab7809cf8c0cf6 100644 (file)
@@ -9,6 +9,7 @@ for HTTP Basic authentication.</description>
 <status>experimental</status>
 <sourcefile>mod_auth_ldap.c</sourcefile>
 <identifier>auth_ldap_module</identifier>
+<compatibility>Available in version 2.0.41 and later</compatibility>
 
 <summary>
     <p><module>mod_auth_ldap</module> supports the following features:</p>
@@ -35,6 +36,8 @@ for HTTP Basic authentication.</description>
     </ul>
 </summary>
 
+<seealso><module>mod_ldap</module></seealso>
+
 <section id="contents"><title>Contents</title>
 
     <ul>
diff --git a/docs/manual/mod/mod_ldap.html.en b/docs/manual/mod/mod_ldap.html.en
new file mode 100644 (file)
index 0000000..455a709
--- /dev/null
@@ -0,0 +1,206 @@
+<html><head><META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><!--
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+              This file is generated from xml source: DO NOT EDIT
+        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+      --><title>mod_ldap - Apache HTTP Server</title><link href="../style/manual.css" type="text/css" rel="stylesheet"></head><body><blockquote><div align="center"><img src="../images/sub.gif" alt="[APACHE DOCUMENTATION]"><h3>Apache HTTP Server Version 2.0</h3></div><h1 align="center">Apache Module mod_ldap</h1><table cellspacing="1" cellpadding="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap" valign="top"><span class="help">Description:
+                      </span></td><td>LDAP connection pooling and result caching
+services for use by other LDAP modules</td></tr><tr><td nowrap="nowrap"><a href="module-dict.html#Status" class="help">Status:
+                      </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="module-dict.html#ModuleIdentifier" class="help">Module&nbsp;Identifier:
+                        </a></td><td>ldap_module</td></tr><tr><td align="left" valign="top"><a href="module-dict.html#Compatibility" class="help">Compatibility:
+                        </a></td><td><compatibility>Available in version 2.0.41 and later</compatibility></td></tr></table></td></tr></table><h2>Summary</h2>
+    <p>This module was created to improve the performance of
+    websites relying on backend connections to LDAP servers. In
+    addition to the functions provided by the standard LDAP
+    libraries, this module adds an LDAP connection pool and an LDAP
+    shared memory cache.</p>
+
+    <p>To enable this module, LDAP support must be compiled into
+    apr-util. This is achieved by adding the <code>--with-ldap</code>
+    flag to the <code>./configure</code> script when building
+    Apache.</p>
+<h2>Directives</h2><ul><li><a href="#ldapcacheentries">LDAPCacheEntries</a></li><li><a href="#ldapcachettl">LDAPCacheTTL</a></li><li><a href="#ldapcertdbpath">LDAPCertDBPath</a></li><li><a href="#ldapopcacheentries">LDAPOpCacheEntries</a></li><li><a href="#ldapopcachettl">LDAPOpCacheTTL</a></li><li><a href="#ldapsharedcachesize">LDAPSharedCacheSize</a></li></ul><h2><a name="exampleconfig">Example Configuration</a></h2>
+
+<p>The following is an example configuration that uses
+<code><a href="../mod/mod_ldap.html">mod_ldap</a></code> to increase the performance of HTTP Basic
+authentication provided by <code><a href="../mod/mod_auth_ldap.html">mod_auth_ldap</a></code>.</p>
+
+<blockquote><table cellpadding="10"><tr><td bgcolor="#eeeeee"><code>
+<pre>
+# Enable the LDAP connection pool and shared memory cache. Enable the
+# LDAP cache status handler. Requires that mod_ldap and mod_auth_ldap
+# be loaded. Change the "yourdomain.example.com" to match your domain.
+
+    LDAPSharedCacheSize 200000
+    LDAPCacheEntries 1024
+    LDAPCacheTTL 600
+    LDAPOpCacheEntries 1024
+    LDAPOpCacheTTL 600
+
+    &lt;Location /ldap-status&gt;
+        SetHandler ldap-status
+        Order deny,allow
+        Deny from all
+        Allow from yourdomain.example.com
+        AuthLDAPEnabled on
+        AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one
+        AuthLDAPAuthoritative on
+        require valid-user
+    &lt;/Location&gt;
+</pre></code></td></tr></table></blockquote>
+<h2><a name="pool">LDAP Connection Pool</a></h2>
+
+    <p>LDAP connections are pooled from request to request. This
+    allows the LDAP server to remain connected and bound ready for
+    the next request, without the need to unbind/connect/rebind.
+    The performance advantages are similar to the effect of HTTP
+    keepalives.</p>
+
+    <p>On a busy server it is possible that many requests will try
+    and access the same LDAP server connection simultaneously.
+    Where an LDAP connection is in use, Apache will create a new
+    connection alongside the original one. This ensures that the
+    connection pool does not become a bottleneck.</p>
+
+    <p>There is no need to manually enable connection pooling in
+    the Apache configuration. Any module using this module for
+    access to LDAP services will share the connection pool.</p>
+<h2><a name="cache">LDAP Cache</a></h2>
+
+    <p>For improved performance, <code><a href="../mod/mod_ldap.html">mod_ldap</a></code> uses an aggressive
+    caching strategy to minimize the number of times that the LDAP
+    server must be contacted. Caching can easily double or triple
+    the throughput of Apache when it is serving pages protected
+    with mod_auth_ldap. In addition, the load on the LDAP server
+    will be significantly decreased.</p>
+
+    <p><code><a href="../mod/mod_ldap.html">mod_ldap</a></code> supports two types of LDAP caching during the
+    search/bind phase with a <em>search/bind cache</em> and
+    during the compare phase with two <em>operation
+    caches</em>. Each LDAP URL that is used by the server has
+    its own set of these three caches.</p>
+
+<h3><a name="search-bind">The Search/Bind Cache</a></h3>
+
+        <p>The process of doing a search and then a bind is the
+        most time-consuming aspect of LDAP operation, especially if
+        the directory is large. The search/bind cache is used to
+        cache all searches that resulted in successful binds.
+        Negative results (i.e., unsuccessful searches, or searches
+        that did not result in a successful bind) are not cached.
+        The rationale behind this decision is that connections with
+        invalid credentials are only a tiny percentage of the total
+        number of connections, so by not caching invalid
+        credentials, the size of the cache is reduced.</p>
+
+        <p><code><a href="../mod/mod_ldap.html">mod_ldap</a></code> stores the username, the DN
+        retrieved, the password used to bind, and the time of the bind
+        in the cache. Whenever a new connection is initiated with the
+        same username, <code><a href="../mod/mod_ldap.html">mod_ldap</a></code> compares the password
+        of the new connection with the password in the cache. If the
+        passwords match, and if the cached entry is not too old,
+        <code><a href="../mod/mod_ldap.html">mod_ldap</a></code> bypasses the search/bind phase.</p>
+
+        <p>The search and bind cache is controlled with the <a href="#ldapcacheentries" class="directive"><code class="directive">LDAPCacheEntries</code></a> and <a href="#ldapcachettl" class="directive"><code class="directive">LDAPCacheTTL</code></a> directives.</p>
+
+
+<h3><a name="opcaches">Operation Caches</a></h3>
+
+        <p>During attribute and distinguished name comparison
+        functions, <code><a href="../mod/mod_ldap.html">mod_ldap</a></code> uses two operation caches
+        to cache the compare operations. The first compare cache is
+        used to cache the results of compares done to test for LDAP
+        group membership. The second compare cache is used to cache
+        the results of comparisons done between distinguished
+        names.</p>
+
+        <p>The behavior of both of these caches is controlled with
+        the <a href="#ldapopcacheentries" class="directive"><code class="directive">LDAPOpCacheEntries</code></a>
+        and <a href="#ldapopcachettl" class="directive"><code class="directive">LDAPOpCacheTTL</code></a>
+        directives.</p>
+
+
+<h3><a name="monitoring">Monitoring the Cache</a></h3>
+
+        <p><code><a href="../mod/mod_ldap.html">mod_ldap</a></code> has a content handler that allows
+        administrators to monitor the cache performance. The name of
+        the content handler is <code>ldap-status</code>, so the
+        following directives could be used to access the
+        <code><a href="../mod/mod_ldap.html">mod_ldap</a></code> cache information:</p>
+<blockquote><table cellpadding="10"><tr><td bgcolor="#eeeeee"><code><pre>
+&lt;Location /server/cache-info &gt;
+ SetHandler ldap-status
+&lt;/Location&gt;
+</pre></code></td></tr></table></blockquote>
+
+        <p>By fetching the URL
+        <code>http://servername/cache-info</code>, the administrator
+        can get a status report of every cache that is used by
+        <code><a href="../mod/mod_ldap.html">mod_ldap</a></code> cache. Note that if Apache does not
+        support shared memory, then each <code>httpd</code> instance has its
+        own cache, so reloading the URL will result in different
+        information each time, depending on which <code>httpd</code>
+        instance processes the request.</p>
+
+<hr><h2><a name="LDAPCacheEntries">LDAPCacheEntries</a> <a name="ldapcacheentries">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap"><strong>Description: 
+                  </strong></td><td></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Syntax" class="help">Syntax:
+                  </a></td><td>LDAPCacheEntries <em>number</em></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Default" class="help">Default: 
+                    </a></td><td><code>LDAPCacheEntries 1024</code></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Context" class="help">Context:
+                  </a></td><td>server config</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Status" class="help">Status:
+                  </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Module" class="help">Module:
+                  </a></td><td>mod_ldap</td></tr></table></td></tr></table>
+    <p>Specifies the maximum size of the primary LDAP cache. This
+    cache contains successful search/binds. Set it to 0 to turn off
+    search/bind caching. The default size is 1024 cached
+    searches.</p>
+<hr><h2><a name="LDAPCacheTTL">LDAPCacheTTL</a> <a name="ldapcachettl">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap"><strong>Description: 
+                  </strong></td><td></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Syntax" class="help">Syntax:
+                  </a></td><td>LDAPCacheTTL <em>seconds</em></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Default" class="help">Default: 
+                    </a></td><td><code>LDAPCacheTTL 600</code></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Context" class="help">Context:
+                  </a></td><td>server config</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Status" class="help">Status:
+                  </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Module" class="help">Module:
+                  </a></td><td>mod_ldap</td></tr></table></td></tr></table>
+    <p>Specifies the time (in seconds) that an item in the
+    search/bind cache remains valid. The default is 600 seconds (10
+    minutes).</p>
+<hr><h2><a name="LDAPCertDBPath">LDAPCertDBPath</a> <a name="ldapcertdbpath">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap"><strong>Description: 
+                  </strong></td><td></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Syntax" class="help">Syntax:
+                  </a></td><td>LDAPCertDBPath <em>directory-path</em></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Context" class="help">Context:
+                  </a></td><td>server config</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Status" class="help">Status:
+                  </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Module" class="help">Module:
+                  </a></td><td>mod_ldap</td></tr></table></td></tr></table>
+    <p>This directive is only valid if Apache has been linked
+    against the Netscape/iPlanet Directory SDK.</p>
+
+    <p>It specifies in which directory <code><a href="../mod/mod_ldap.html">mod_ldap</a></code>
+    should look for the certificate authorities database for SSL
+    support. There should be a file named <code>cert7.db</code> in that
+    directory.</p>
+<hr><h2><a name="LDAPOpCacheEntries">LDAPOpCacheEntries</a> <a name="ldapopcacheentries">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap"><strong>Description: 
+                  </strong></td><td></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Syntax" class="help">Syntax:
+                  </a></td><td>LDAPOpCacheEntries <em>number</em></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Default" class="help">Default: 
+                    </a></td><td><code>LDAPOpCacheEntries 1024</code></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Context" class="help">Context:
+                  </a></td><td>server config</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Status" class="help">Status:
+                  </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Module" class="help">Module:
+                  </a></td><td>mod_ldap</td></tr></table></td></tr></table>
+    <p>This specifies the number of entries <code><a href="../mod/mod_ldap.html">mod_ldap</a></code>
+    will use to cache LDAP compare operations. The default is 1024
+    entries.  Setting it to 0 disables operation caching.</p>
+<hr><h2><a name="LDAPOpCacheTTL">LDAPOpCacheTTL</a> <a name="ldapopcachettl">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap"><strong>Description: 
+                  </strong></td><td></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Syntax" class="help">Syntax:
+                  </a></td><td>LDAPOpCacheTTL <em>seconds</em></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Default" class="help">Default: 
+                    </a></td><td><code>LDAPOpCacheTTL 600</code></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Context" class="help">Context:
+                  </a></td><td>server config</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Status" class="help">Status:
+                  </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Module" class="help">Module:
+                  </a></td><td>mod_ldap</td></tr></table></td></tr></table>
+    <p>Specifies the time (in seconds) that entries in the
+    operation cache remain valid. The default is 600 seconds.</p>
+<hr><h2><a name="LDAPSharedCacheSize">LDAPSharedCacheSize</a> <a name="ldapsharedcachesize">Directive</a></h2><table cellpadding="1" cellspacing="0" border="0" bgcolor="#cccccc"><tr><td><table bgcolor="#ffffff"><tr><td nowrap="nowrap"><strong>Description: 
+                  </strong></td><td></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Syntax" class="help">Syntax:
+                  </a></td><td>LDAPSharedCacheSize <em>bytes</em></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Default" class="help">Default: 
+                    </a></td><td><code>LDAPSharedCacheSize 102400</code></td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Context" class="help">Context:
+                  </a></td><td>server config</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Status" class="help">Status:
+                  </a></td><td>experimental</td></tr><tr><td nowrap="nowrap"><a href="directive-dict.html#Module" class="help">Module:
+                  </a></td><td>mod_ldap</td></tr></table></td></tr></table>
+    <p>Specifies the number of bytes to specify for the shared
+    memory cache. The default is 100kb.</p>
+<hr></blockquote><h3 align="center">Apache HTTP Server Version 2.0</h3><a href="./"><img src="../images/index.gif" alt="Index"></a><a href="../"><img src="../images/home.gif" alt="Home"></a></body></html>
\ No newline at end of file
diff --git a/docs/manual/mod/mod_ldap.xml b/docs/manual/mod/mod_ldap.xml
new file mode 100644 (file)
index 0000000..c878316
--- /dev/null
@@ -0,0 +1,238 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<modulesynopsis>
+
+<name>mod_ldap</name>
+<description>LDAP connection pooling and result caching
+services for use by other LDAP modules</description>
+<status>experimental</status>
+<sourcefile>util_ldap.c</sourcefile>
+<identifier>ldap_module</identifier>
+<compatibility>Available in version 2.0.41 and later</compatibility>
+
+<summary>
+    <p>This module was created to improve the performance of
+    websites relying on backend connections to LDAP servers. In
+    addition to the functions provided by the standard LDAP
+    libraries, this module adds an LDAP connection pool and an LDAP
+    shared memory cache.</p>
+
+    <p>To enable this module, LDAP support must be compiled into
+    apr-util. This is achieved by adding the <code>--with-ldap</code>
+    flag to the <code>./configure</code> script when building
+    Apache.</p>
+</summary>
+
+<section id="exampleconfig"><title>Example Configuration</title>
+
+<p>The following is an example configuration that uses
+<module>mod_ldap</module> to increase the performance of HTTP Basic
+authentication provided by <module>mod_auth_ldap</module>.</p>
+
+<example>
+<pre>
+# Enable the LDAP connection pool and shared memory cache. Enable the
+# LDAP cache status handler. Requires that mod_ldap and mod_auth_ldap
+# be loaded. Change the "yourdomain.example.com" to match your domain.
+
+    LDAPSharedCacheSize 200000
+    LDAPCacheEntries 1024
+    LDAPCacheTTL 600
+    LDAPOpCacheEntries 1024
+    LDAPOpCacheTTL 600
+
+    &lt;Location /ldap-status&gt;
+        SetHandler ldap-status
+        Order deny,allow
+        Deny from all
+        Allow from yourdomain.example.com
+        AuthLDAPEnabled on
+        AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one
+        AuthLDAPAuthoritative on
+        require valid-user
+    &lt;/Location&gt;
+</pre></example>
+</section>
+
+<section id="pool"><title>LDAP Connection Pool</title>
+
+    <p>LDAP connections are pooled from request to request. This
+    allows the LDAP server to remain connected and bound ready for
+    the next request, without the need to unbind/connect/rebind.
+    The performance advantages are similar to the effect of HTTP
+    keepalives.</p>
+
+    <p>On a busy server it is possible that many requests will try
+    and access the same LDAP server connection simultaneously.
+    Where an LDAP connection is in use, Apache will create a new
+    connection alongside the original one. This ensures that the
+    connection pool does not become a bottleneck.</p>
+
+    <p>There is no need to manually enable connection pooling in
+    the Apache configuration. Any module using this module for
+    access to LDAP services will share the connection pool.</p>
+</section>
+
+<section id="cache"><title>LDAP Cache</title>
+
+    <p>For improved performance, <module>mod_ldap</module> uses an aggressive
+    caching strategy to minimize the number of times that the LDAP
+    server must be contacted. Caching can easily double or triple
+    the throughput of Apache when it is serving pages protected
+    with mod_auth_ldap. In addition, the load on the LDAP server
+    will be significantly decreased.</p>
+
+    <p><module>mod_ldap</module> supports two types of LDAP caching during the
+    search/bind phase with a <em>search/bind cache</em> and
+    during the compare phase with two <em>operation
+    caches</em>. Each LDAP URL that is used by the server has
+    its own set of these three caches.</p>
+
+<section id="search-bind"><title>The Search/Bind Cache</title>
+
+        <p>The process of doing a search and then a bind is the
+        most time-consuming aspect of LDAP operation, especially if
+        the directory is large. The search/bind cache is used to
+        cache all searches that resulted in successful binds.
+        Negative results (i.e., unsuccessful searches, or searches
+        that did not result in a successful bind) are not cached.
+        The rationale behind this decision is that connections with
+        invalid credentials are only a tiny percentage of the total
+        number of connections, so by not caching invalid
+        credentials, the size of the cache is reduced.</p>
+
+        <p><module>mod_ldap</module> stores the username, the DN
+        retrieved, the password used to bind, and the time of the bind
+        in the cache. Whenever a new connection is initiated with the
+        same username, <module>mod_ldap</module> compares the password
+        of the new connection with the password in the cache. If the
+        passwords match, and if the cached entry is not too old,
+        <module>mod_ldap</module> bypasses the search/bind phase.</p>
+
+        <p>The search and bind cache is controlled with the <directive
+        module="mod_ldap">LDAPCacheEntries</directive> and <directive
+        module="mod_ldap">LDAPCacheTTL</directive> directives.</p>
+</section>
+
+<section id="opcaches"><title>Operation Caches</title>
+
+        <p>During attribute and distinguished name comparison
+        functions, <module>mod_ldap</module> uses two operation caches
+        to cache the compare operations. The first compare cache is
+        used to cache the results of compares done to test for LDAP
+        group membership. The second compare cache is used to cache
+        the results of comparisons done between distinguished
+        names.</p>
+
+        <p>The behavior of both of these caches is controlled with
+        the <directive module="mod_ldap">LDAPOpCacheEntries</directive>
+        and <directive module="mod_ldap">LDAPOpCacheTTL</directive>
+        directives.</p>
+</section>
+
+<section id="monitoring"><title>Monitoring the Cache</title>
+
+        <p><module>mod_ldap</module> has a content handler that allows
+        administrators to monitor the cache performance. The name of
+        the content handler is <code>ldap-status</code>, so the
+        following directives could be used to access the
+        <module>mod_ldap</module> cache information:</p>
+<example><pre>
+&lt;Location /server/cache-info &gt;
+ SetHandler ldap-status
+&lt;/Location&gt;
+</pre></example>
+
+        <p>By fetching the URL
+        <code>http://servername/cache-info</code>, the administrator
+        can get a status report of every cache that is used by
+        <module>mod_ldap</module> cache. Note that if Apache does not
+        support shared memory, then each <code>httpd</code> instance has its
+        own cache, so reloading the URL will result in different
+        information each time, depending on which <code>httpd</code>
+        instance processes the request.</p>
+</section>
+</section>
+
+<directivesynopsis>
+<name>LDAPSharedCacheSize</name>
+<syntax>LDAPSharedCacheSize <em>bytes</em></syntax>
+<default>LDAPSharedCacheSize 102400</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+    <p>Specifies the number of bytes to specify for the shared
+    memory cache. The default is 100kb.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>LDAPCacheEntries</name>
+<syntax>LDAPCacheEntries <em>number</em></syntax>
+<default>LDAPCacheEntries 1024</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+    <p>Specifies the maximum size of the primary LDAP cache. This
+    cache contains successful search/binds. Set it to 0 to turn off
+    search/bind caching. The default size is 1024 cached
+    searches.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>LDAPCacheTTL</name>
+<syntax>LDAPCacheTTL <em>seconds</em></syntax>
+<default>LDAPCacheTTL 600</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+    <p>Specifies the time (in seconds) that an item in the
+    search/bind cache remains valid. The default is 600 seconds (10
+    minutes).</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>LDAPOpCacheEntries</name>
+<syntax>LDAPOpCacheEntries <em>number</em></syntax>
+<default>LDAPOpCacheEntries 1024</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+    <p>This specifies the number of entries <module>mod_ldap</module>
+    will use to cache LDAP compare operations. The default is 1024
+    entries.  Setting it to 0 disables operation caching.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>LDAPOpCacheTTL</name>
+<syntax>LDAPOpCacheTTL <em>seconds</em></syntax>
+<default>LDAPOpCacheTTL 600</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+    <p>Specifies the time (in seconds) that entries in the
+    operation cache remain valid. The default is 600 seconds.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>LDAPCertDBPath</name>
+<syntax>LDAPCertDBPath <em>directory-path</em></syntax>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+    <p>This directive is only valid if Apache has been linked
+    against the Netscape/iPlanet Directory SDK.</p>
+
+    <p>It specifies in which directory <module>mod_ldap</module>
+    should look for the certificate authorities database for SSL
+    support. There should be a file named <code>cert7.db</code> in that
+    directory.</p>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>
\ No newline at end of file