Project

General

Profile

Docs ConfigurationOptions » History » Revision 94

Revision 93 (altblue, 2016-11-22 14:38) → Revision 94/175 (gstrauss, 2016-11-22 17:21)

h1. Configuration File Options 


 Here you will find a list of all available configuration lighttpd.    They are grouped by module, and a link to each module configuration will provide with more detail information about each option, as well as examples, and other guidelines. 

 {{>toc}} 

 h2. Lighttpd Core 

 table{margin-left: 2em}. 
 |_.option |_. description |_. details | 
 | connection.kbytes-per-second | limit the throughput for each single connection to the given limit in kbyte/s | [[lighttpd:Docs_TrafficShaping|Details]] | 
 | server.chroot | root-directory of the server | [[server_chrootDetails|Details]] | 
 | server.core-files | enable core files | [[server_core-filesDetails|Details]] | 
 | server.errorlog | pathname of the error-log | [[server_errorlogDetails|Details]] | 
 | server.errorlog-use-syslog* | send errorlog to syslog | [[server_errorlog-use-syslogDetails|Details]] | 
 | server.breakagelog | open as stderr, so all forked applications will write their errors to this (if stderr isn't handled otherwise via a pipe); needed to see mod_cgi stderr in 1.4 | | 
 | server.event-handler | set the event handler | [[server_event-handlerDetails|Details]] | 
 | server.follow-symlink | allow to follow-symlinks | [[server_follow-symlinksDetails|Details]] | 
 | server.force-lowercase-filenames | enable force all filenames to lowercase |    | 
 | server.groupname | groupname used to run the server | [[server_groupnameDetails|Details]] | 
 | server.kbytes-per-second | limit the throughput for all connections to the given limit in kbyte/s | [[lighttpd:Docs_TrafficShaping|Details]] | 
 | server.max-connections | maximum connections | [[server_max-connectionsDetails|Details]] | 
 | server.max-fds | maximum number of file descriptors | [[server_max-fdsDetails|Details]] | 
 | server.max-keep-alive-idle | maximum number of seconds until a idling keep-alive connection is dropped | [[server_max-keep-alive-idleDetails|Details]] | 
 | server.max-keep-alive-requests | maximum number of request within a keep-alive session | [[server_max-keep-alive-requestsDetails|Details]] | 
 | server.max-read-idle | maximum number of seconds until a waiting, non keep-alive read times out and closes the connection | [[server_max-read-idleDetails|Details]] | 
 | server.max-request-size | maximum size in kbytes of the request | [[server_max-request-sizeDetails|Details]] | 
 | server.max-request-field-size | maximum size of the request header (in bytes) | | 
 | server.max-worker | number of worker processes to spawn | [[server_max-workerDetails|Details]] | 
 | server.max-write-idle | maximum number of seconds until a waiting write call times out | [[server_max-write-idleDetails|Details]] | 
 | server.modules | modules to load | [[server_modulesDetails|Details]] | 
 | server.pid-file | set the name and location    of the .pid-file | [[server_pid-fileDetails|Details]] | 
 | server.stat-cache-engine | select stat() call caching | [[server_stat-cache-engineDetails|Details]] | 
 | server.stream-request-body | stream request body to backend    | [[server_stream-request-bodyDetails|Details]] | 
 | server.stream-response-body | stream response body to client | [[server_stream-response-bodyDetails|Details]] | 
 | server.upload-dirs | path to upload directory | [[server_upload-dirsDetails|Details]] | 
 | server.username | username used to run the server | [[server_usernameDetails|Details]] | 

 | server.bind | IP address, hostname or absolute path to the unix-domain socket | [[server_bindDetails|Details]] | 
 | server.network-backend | basic network interface for all platforms at the syscalls read() and write() | [[server_network-backendDetails|Details]] | 
 | server.listen-backlog | listen backlog queue size | Details commit:71ed1912 | 
 | server.bsd-accept-filter | listen socket *BSD accept() filter ("httpready" or "dataready") | Details commit:4eeeb8fc | 
 | server.defer-accept | listen socket Linux TCP_DEFER_ACCEPT ("enable" or "disable") | | 
 | server.use-ipv6 | bind to the IPv6 socket | [[Server_use-ipv6Details|Details]] | 

 | server.name | name of the server/virtual server | [[server_nameDetails|Details]] | 
 | server.document-root | document-root of the webserver | [[server_document-rootDetails|Details]] | 
 | server.error-handler | uri to call if non-dynamic (not CGI or proxy) request results in http status >= 400 (overrides error-handler-404) | Details commit:dbdab5db | 
 | server.error-handler-404 | uri to call if non-dynamic (not CGI or proxy) request results in a 403 or 404 | [[server_error-handler-404Details|Details]] | 
 | server.errorfile-prefix | path prefix for special status codes pages | [[server_errorfile-prefixDetails|Details]] | 
 | server.http-parseopt-header-strict | restrict chars permitted in HTTP headers | Details commit:b47494d4 | 
 | server.http-parseopt-host-strict | restrict chars permitted in HTTP Host header | Details commit:b47494d4 | 
 | server.http-parseopt-host-normalize | normalize HTTP Host header | Details commit:b47494d4 | 
 | server.protocol-http11 | defines if HTTP/1.1 is allowed or not | [[server_protocol-http11Details|Details]] | 
 | server.range-requests | defines if range requests are allowed or not | [[server_range-requestsDetails|Details]] | 
 | server.reject-expect-100-with-417 | setting to disable returning of a 417 if "Expect: 100-continue" header | | 
 | server.tag | set the string returned by the server | [[server_use-tagDetails|Details]] | 

 | index-file.names | list of files to search for if a directory is requested | [[index-file-names_Details|Details]] | 
 | server.dir-listing | enable/disable dir listing | [[lighttpd:Docs_ModDirlisting|Details]] | 

 | etag.use-inode | Determines if inode-value is used in ETag generation | [[etag_use-inodeDetails|Details]] | 
 | etag.use-mtime | Determines if mtime-value is used in ETag generation | [[etag_use-mtimeDetails|Details]] | 
 | etag.use-size | Determines if size-value is used in ETag generation | [[etag_use-sizeDetails|Details]] | 
 | static-file.etags | Determines if ETags are generated or not |    | 
 | static-file.exclude-extensions | forbid access to the source of some types of files by extension |    | 

 | mimetype.assign | list of known mimetype mappings | [[mimetype_assignDetails|Details]] | 
 | mimetype.use-xattr | try to use XFS-style extended attribute interface for retreiving the Content-Type | [[mimetype_use-xattrDetails|Details]] | 
 | mimetype.xattr-name | name of XFS-style extended attribute to use for retreiving the Content-Type | [[mimetype_use-xattrDetails|Details]] | 

 h3. SSL 

 table{margin-left: 2em}. 
 |_.option |_. description |_. details | 
 | ssl.engine | enable/disable ssl engine | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.pemfile | path to the PEM file for SSL support | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.ca-file | path to the CA file for support of chained certificates | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.use-sslv2 | enable/disable use of SSL version 2 | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.cipher-list | Configure the allowed SSL ciphers | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.honor-cipher-order | enable/disable honoring the order of ciphers set in ssl.cipher-list (set by default when ssl.cipher-list is set)| [[lighttpd:Docs_SSL|Details]] | 
 | ssl.disable-client-renegotiation | enable/disable mitigation of client triggered re-negotiation (see CVE-2009-3555)| [[lighttpd:Docs_SSL|Details]] | 
 | ssl.verifyclient.activate | enable/disable client verification | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.verifyclient.enforce | enable/disable enforcing client verification | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.verifyclient.depth | certificate depth for client verification | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.verifyclient.exportcert | enable/disable client certificate export to env:SSL_CLIENT_CERT | [[lighttpd:Docs_SSL|Details]] | 
 | ssl.verifyclient.username | client certificate entity to export as env:REMOTE_USER (eg. SSL_CLIENT_S_DN_emailAddress, SSL_CLIENT_S_DN_UID, etc.) | [[lighttpd:Docs_SSL|Details]] | 

 h3. Core Debug Info 

 * [[DebugVariables|Debug Variable Information]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | debug.log-request-header | log all request headers | 
 | debug.log-file-not-found | log if a file wasn't found | 
 | debug.log-condition-handling | log conditionals handling for debugging | 
 | debug.log-request-header-on-error | log request header, but only when there is an error | 
 | debug.log-request-handling | log request handling inside lighttpd | 
 | debug.log-state-handling | log state handling inside lighttpd | 
 | debug.log-response-header | log the header we send out to the client | 
 | debug.log-ssl-noise | log some ssl warnings we hide by default (ssl handshake, unknown/bad certificate) | 



 h2. mod_access - access restrictions 

 * [[lighttpd:Docs_ModAccess|mod_access documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | url.access-allow | Allows access only to files with any of given trailing path names (since 1.4.40) | 
 | url.access-deny | Denies access to all files with any of given trailing path names | 



 h2. mod_accesslog - access log files 

 * [[lighttpd:Docs_ModAccessLog|mod_accesslog documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | accesslog.format | the format of the logfile | 
 | accesslog.filename | name of the file where the accesslog should be written to if syslog is not used | 
 | accesslog.use-syslog | send the accesslog to syslog | 
 | accesslog.syslog-level | numerical value used as syslog log level | 



 h2. mod_alias - directory aliases 

 * [[lighttpd:Docs_ModAlias|mod_alias documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | alias.url | rewrites the document-root for a URL-subset | 

 h2. mod_auth - authentication 

 * [[lighttpd:Docs_ModAuth|mod_auth documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | auth.debug | enable/disable authentication module debug information | 
 | auth.backend | type of authentication backend | 
 | auth.require | set restriction method | 
 | auth.backend.gssapi.keytab |    | 
 | auth.backend.gssapi.principal |    | 
 | auth.backend.ldap.hostname | hostname of ldap server | 
 | auth.backend.ldap.starttls |    | 
 | auth.backend.ldap.filter |    | 
 | auth.backend.ldap.bind-pw |    | 
 | auth.backend.ldap.ca-file |    | 
 | auth.backend.ldap.base-dn |    | 
 | auth.backend.ldap.bind-dn |    | 
 | auth.backend.plain.userfile | path to plain userfile | 
 | auth.backend.plain.groupfile | path to plain groupfile | 
 | auth.backend.htdigest.userfile | path to htdigest userfile | 
 | auth.backend.htpasswd.userfile | path to htpassword userfile | 

 table{margin-left: 4em}. 
 |_.auth.require option |_. description | 
 | method | type of authentication ("digest" or "basic") | 
 | realm | authentication realm | 
 | require | "valid-user" to allow any valid user, or a list of user=username separated by pipe symbols | 

 h2. mod_cache - web accelerating 

 * [[lighttpd:Docs_ModCache|mod_cache documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 |cache.bases | directory arrays which want to save cache files | 
 |cache.enable |    | 
 |cache.domains | domain pcre regex arrays which mod_cache will cache | 
 |cache.support-queries |    | 
 |cache.debug | writes mod_cache debuging messages to error.log or not | 
 |cache.purge-host | pcre regex hosts ip which are allowed to PURGE cache file | 
 |cache.refresh-pattern |    | 



 h2. mod_cgi - cgi 

 *    [[lighttpd:Docs_ModCGI|mod_cgi documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | cgi.assign | assign cgi handler to an extension | 
 | cgi.execute-x-only | requires +x for cgi scripts | 
 | cgi.x-sendfile | controls if X-Sendfile header is allowed | 
 | cgi.x-sendfile-docroot | limits the directory trees permitted for use with X-Sendfile response header | 

 h2. mod_cml - Cache Meta Language 

 *    [[lighttpd:Docs_ModCML|mod_cml documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | cml.memcache-namespace | (not used yet)    | 
 | cml.power-magnet | a cml file that is executed for each request | 
 | cml.memcache-hosts | hosts for the memcache.* functions | 
 | cml.extension | the file extension that is bound to the cml-module | 



 h2. mod_compress - compress output 

 *    [[lighttpd:Docs_ModCompress|mod_compress documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | compress.max-filesize | maximum size of the original file to be compressed kBytes | 
 | compress.cache-dir | name of the directory where compressed content will be cached | 
 | compress.filetype | mimetypes which might get compressed | 
 | compress.allowed-encodings | encodings enabled ("gzip", "bzip2", "deflate") | 
 | compress.max-loadavg | max system loadavg before bypassing compression, e.g. "3.50" (since 1.4.43) | 

 h2. mod_deflate - dynamic compression (1.4.42) 

 *    [[Mod_Deflate|mod_deflate documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | deflate.mimetypes | mimetype listing to be compressed, matched to prefix of Content-Type | 
 | deflate.allowed-encodings | encodings enabled ("gzip", "bzip2", "deflate") | 
 | deflate.max-compress-size | maximum size document to compress | 
 | deflate.min-compress-size | minimum size document before compressing | 
 | deflate.compression-level | level of compression | 
 | deflate.output-buffer-size | size of buffer for compression | 
 | deflate.work-block-size | minimum block size for compression | 
 | deflate.max-loadavg | max system loadavg before bypassing compression, e.g. "3.50" (since 1.4.43) | 

 h2. mod_dirlisting - directory listing 

 *    [[lighttpd:Docs_ModDirlisting|mod_dirlisting documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | server.dir-listing*: enable/disable directory listing | 
 | dir-listing.activate | enables virtual directory listings if a directory is requested no index-file was found | 
 | dir-listing.external-css | path to an external css stylesheet for the directory listing | 
 | dir-listing.external-js | path to an external js script, e.g. for client side directory list sorting (lighttpd 1.4.42) | 
 | dir-listing.encoding | set a encoding for the generated directory listing | 
 | dir-listing.hide-dotfiles | if enabled, does not list hidden files in directory listings generated by the dir-listing option | 
 | dir-listing.show-header | include HEADER.txt files above the directory listing (since 1.4.43: user-specified file name) | 
 | dir-listing.hide-header-file | enables hide header file from directory listing | 
 | dir-listing.show-readme | include README.txt files below the directory listing (since 1.4.43: user-specified file name) | 
 | dir-listing.hide-readme-file | enables displaying readme file in directory listing | 
 | dir-listing.exclude | files that match any of the specified regular expressions will be excluded from listings | 
 | dir-listing.set-footer | displays a string in the footer of a listing page | 

 h2. mod_evasive - evasive 

 *    [[lighttpd:Docs_ModEvasive|mod_evasive documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | evasive.max-conns-per-ip | upper limit of number of connections per ip allowed | 
 | evasive.silent | no logging | 


 h2. mod_evhost - enhanced virtual host 

 *    [[lighttpd:Docs_ModEVhost|mod_evhost documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | evhost.path-pattern | pattern with wildcards to be replace to build a documentroot | 



 h2. mod_expire - cached expiration 

 * [[lighttpd:Docs_ModExpire|mod_expire documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | expire.url | assignes an expiration to all files below the specified path | 
 | expire.mimetypes | assignes an expiration to all responses with Content-Type prefix matching the listed mimetypes (since 1.4.43) | 



 h2. mod_extforward - use X-Forwarded-For 

 * [[DocsModExtForward|mod_extforward documentation]] 

 p((. extract the client's "real" IP from X-Forwarded-For header 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | extforward.forwarder | set trust level of proxy ip's | 



 h2. mod_fastcgi - fastcgi 

 * [[lighttpd:Docs_ModFastCGI|mod_fastcgi documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | fastcgi.map-extensions | map multiple extensions to the same fastcgi server | 
 | fastcgi.debug | a value between 0 and 65535 to set the debug-level in the FastCGI module | 
 | fastcgi.server | tell the module where to send FastCGI requests to | 

 table{margin-left: 4em}. 
 |_.fastcgi.server-option |_. description | 
 | host | is ip of the FastCGI process | 
 | port | is tcp-port on the "host" used by the FastCGI process | 
 | socket | path to the unix-domain socket | 
 | bin-path | path to the local FastCGI binary which should be started if no local FastCGI is running | 
 | bin-environment | set environment of FastCGI binary | 
 | bin-copy-environment | copy environment from server for FastCGI binary | 
 | listen-backlog | listen backlog queue size (for backend daemons started by mod_fastcgi) | 
 | mode | is the FastCGI protocol mode. Default is "responder", also "authorizer" mode is implemented | 
 | docroot | docroot on the remote host | 
 | x-sendfile | controls if X-Sendfile header is allowed | 
 | x-sendfile-docroot | limits the directory trees permitted for use with X-Sendfile response header | 
 | broken-scriptfilename | breaks SCRIPT_FILENAME in a way that PHP can extract PATH_INFO from it | 
 | max-procs | upper limit of processes to start | 
 | check-local | enable/disable check for requested file in document root | 
 | disable-time | time to wait before a disabled backend is checked again | 
 | strip-request-uri | strip part of request-uri | 
 | fix-root-scriptname | use this for backends with extension "/" (and check-local is disabled), only works > 1.4.22 | 


 h2. mod_flv_streaming - flv streaming 

    *flv-streaming.extensions*: extensions of flv files 

    "Blog Entry":http://blog.lighttpd.net/articles/2006/03/09/flv-streaming-with-lighttpd 

    "Additional Information ":http://jan.kneschke.de/projects/flv-streaming/ 

    "Flash Video Player 3.5 (Creative Commons)":http://www.jeroenwijering.com/embed/streaming.html 


 h2. mod_geoip - IP location lookup 

 * [[lighttpd:Docs_ModGeoIP|mod_geoip documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | geoip.db-filename | path to the geoip or geocity database | 
 | geoip.memory-cache | enable or disable GeoIP memory cache (default disabled) | 


 h2. mod_indexfile - Precautions and documentation 

 * [[lighttpd:Docs_ModIndexfile|mod_indexfile documentation]] 

 h2. mod_magnet - a module to control request handling 

 * [[lighttpd:Docs_ModMagnet|mod_magnet documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | magnet.attract-raw-url-to | attract atract request before lighttpd tries to find a physical file (but after rewrite) | 
 | magnet.attract-physical-path-to | attract atract request after doc-root is known and the physical-path is already setup | 

 h2. mod_mem_cache - local file accelerating 

 * [[lighttpd:Docs_ModMemCache|mod_mem_cache documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | mem-cache.filetypes | content-type arrays which want to put into memory | 
 | mem-cache.enable |    | 
 | mem-cache.max-memory | maxium memory in Mbytes mod-mem-cache can use | 
 | mem-cache.max-file-size | maxium file size in Kbytes of single file to cache in memory | 
 | mem-cache.lru-remove-count |    | 
 | mem-cache.expire-time | memory cache's expire time in minutes | 
 | mem-cache.slru-thresold | slru threshold (against hit counter) | 

 h2. mod_mimemagic - determines the MIME type of a file by looking at a few bytes of its contents 

 * [[lighttpd:Docs_ModMimeMagic|mod_mimemagic documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | mimemagic.file | path of magic.mime file | 
 | mimemagic.override-global-mimetype |    | 

 h2. mod_mysql_vhost - Mysql virtual hosting 

 *    [[lighttpd:Docs_ModMySQLVhost|mod_mysql_vhost documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | mysql-vhost.hostname | hostname of mysql server | 
 | mysql-vhost.db | database name | 
 | mysql-vhost.user | username to access database | 
 | mysql-vhost.pass | password to access database | 
 | mysql-vhost.sql | SQL statement to execute to obtain docroot | 
 | mysql-vhost.port | port where to connect to database | 
 | mysql-vhost.sock | socket where to connect to database | 



 h2. mod_proxy - proxy 

 *    [[lighttpd:Docs_ModProxy|mod_proxy documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | proxy.balance | select type of balancing algorithm (round-robin, hash, fair) | 
 | proxy.debug | enable/disable proxy debug information | 
 | proxy.server | where to send Proxy requests | 

 table{margin-left: 4em}. 
 |_.proxy.server-option |_. description | 
 | host | ip of host to send requests | 
 | port | listening port of host | 



 h2. mod_redirect - redirect 

 *    [[lighttpd:Docs_ModRedirect|mod_redirect documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description |_. note | 
 | url.redirect | redirects a set of URLs externally | | 
 | url.redirect-code | defines the http code that is sent with the redirect URL | Added in 1.4.31 | 



 h2. mod_rewrite - rewriting 

 *    [[lighttpd:Docs_ModRewrite|mod_rewrite documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | url.rewrite-once | rewrites a set of URLs internally and skip the rest | 
 | url.rewrite-repeat | rewrites a set of URLs internally in the webserver, continue applying rewrite rules | 
 | url.rewrite | same as url.rewrite-once | 
 | url.rewrite-final | same as url.rewrite-once | 
 | url.rewrite-[repeat-]if-not-file | rewrites a set of urls internally and checks if files do *not* exist | 


 h2. mod_rrdtool - rrdtool 

 *    [[lighttpd:Docs_ModRRDTool|mod_rrdtool    documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | rrdtool.db-name | filename of the rrd-database | 
 | rrdtool.binary | path to the rrdtool binary | 



 h2. mod_scgi - SCGI 

 *    [[lighttpd:Docs_ModSCGI|mod_scgi documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | scgi.debug | a value between 0 and 65535 to set the debug-level in the SCGI module | 
 | scgi.server | tell the module where to send SCGI requests to | 
 | scgi.protocol | protocol between lighttpd and backend server ("scgi" (default) or "uwsgi") | Added in 1.4.42 | 

 table{margin-left: 4em}. 
 |_.scgi.server-option |_. description | 
 | host | is ip of the SCGI process | 
 | port | is tcp-port on the "host" used by the SCGI process | 
 | socket | path to the unix-domain socket | 
 | bin-path | path to the local SCGI binary which should be started if no local SCGI is running | 
 | bin-environment | set environment of SCGI binary | 
 | bin-copy-environment | copy environment from server for SCGI binary | 
 | listen-backlog | listen backlog queue size (for backend daemons started by mod_scgi) | 
 | docroot | docroot on the remote host | 
 | x-sendfile | controls if X-Sendfile header is allowed | 
 | x-sendfile-docroot | limits the directory trees permitted for use with X-Sendfile response header | 
 | broken-scriptfilename | breaks SCRIPT_FILENAME in a way that PHP can extract PATH_INFO from it | 
 | idle-timeout | number of seconds before a unused process gets terminated | 
 | max-procs | upper limit of processes to start | 
 | min-procs | sets the minium processes to start | 
 | min-procs-not-working |    | 
 | max-load-per-proc | maximum number of waiting processes on average per process before a new process is spawned | 
 | check-local | enable/disable check for requested file in document root (default: enabled) | 
 | disable-time | time to wait before a disabled backend is checked again | 
 | strip-request-uri | strip part of request-uri | 



 h2. mod_secdownload - secure and fast download 

 *    [[lighttpd:Docs_ModSecDownload|mod_secdownload documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | secdownload.document-root | path to the download area | 
 | secdownload.timeout | how long in seconds is the secret valid | 
 | secdownload.uri-prefix | prefix to url for download | 
 | secdownload.secret | Secret string that will be used for the checksum calculation | 
 | secdownload.algorithm | hash algorithm: "md5", "hmac-sha1", or "hmac-sha256" | 



 h2. mod_setenv - set HTTP Environment 

 *    [[lighttpd:Docs_ModSetEnv|mod_setenv documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | setenv.add-response-header | adds a value to the process environment that is passed to the external applications | 
 | setenv.add-request-header | adds a header to the HTTP response sent to the client | 
 | setenv.add-environment | adds a value to the process environment that is passed to the external applications | 



 h2. mod_simple_vhost - simple virtual host 

 *    [[lighttpd:Docs_ModSimpleVhost|mod_simple_vhost documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | simple-vhost.document-root | path below the vhost directory | 
 | simple-vhost.server-root | root of the virtual host | 
 | simple-vhost.default-host | use this hostname if the requested hostname does not have its own directory | 
 | simple-vhost.debug | debug simple vhosts module | 



 h2. mod_ssi - server side includes 

 *    [[lighttpd:Docs_ModSSI|mod_ssi documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | ssi.extension | extension of files processed by mod_ssi | 
 | ssi.content-type | specify Content-Type response header for SSI pages | 
 | ssi.conditional-requests | enable/disable conditional request caching including generating ETag and Last-Modified response headers | 
 | ssi.exec | enable/disable #exec cmd="..." | 



 h2. mod_status - server status 

 *    [[lighttpd:Docs_ModStatus|mod_status documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | status.config-url | relative URL for the config page which displays the loaded modules | 
 | status.statistics-url | relative URL for a plain-text page containing the internal statistics | 
 | status.enable-sort | add JavaScript which allows client-side sorting for the connection overview | 
 | status.status-url | relative URL which is used to retrieve the status-page | 



 h2. mod_trigger_b4_dl - trigger before download 

 *    [[lighttpd:Docs_ModTriggerBeforeDownload|mod_trigger_b4_dl    documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | trigger-before-download.trigger-url | url for trigger pages | 
 | trigger-before-download.trigger-timeout | time for download link to live | 
 | trigger-before-download.download-url | url for downloads | 
 | trigger-before-download.deny-url | url to show when visitor denied a download | 
 | trigger-before-download.gdbm-filename | path to gdm file | 
 | trigger-before-download.memcache-hosts | hosts for the memcache.* functions | 
 | trigger-before-download.memcache-namespace | (not used yet) | 
 | trigger-before-download.debug |    | 



 h2. mod_userdir - user directories 

 *    [[lighttpd:Docs_ModUserDir|mod_userdir    documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | userdir.basepath | if set, don't check /etc/passwd for homedir | 
 | userdir.exclude-user | list of usernames which may not use this feature | 
 | userdir.path | usually it should be set to "public_html" to take ~/public_html/ as the document root | 
 | userdir.include-user | if set, only users from this list may use the feature | 



 h2. mod_uploadprogress - upload progress 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | upload-progress.progress-url |    | 



 h2.    mod_usertrack - user track (cookies) 

 *    [[lighttpd:Docs_ModUserTrack|mod_usertrack documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | usertrack.cookie-name |    | 
 |    ~~'_usertrack.cookiename_'~~    |    (deprecated) | 
 | usertrack.cookie-domain |    | 
 | usertrack.cookie-max-age |    | 



 h2. mod_webdav - WebDAV 

 *    [[lighttpd:Docs_ModWebDAV|mod_webdav documentation]] 

 table{margin-left: 2em}. 
 |_.option |_. description | 
 | webdav.activate | enable/disable WebDAV | 
 | webdav.is-readonly | enable/disable read only | 
 | webdav.sqlite-db-name | pathname to SQLite database | 
 | webdav.log-xml | Log the XML Request bodies for debugging |