# Debian lighttpd configuration file############# Options you really have to take care of ###################### modules to load# mod_access, mod_accesslog and mod_alias are loaded by default# all other module should only be loaded if neccesary# - saves some time# - saves memoryserver.modules = ( "mod_access", "mod_alias", "mod_accesslog",# "mod_rewrite",# "mod_redirect",# "mod_status",# "mod_evhost",# "mod_compress",# "mod_usertrack",# "mod_rrdtool",# "mod_webdav",# "mod_expire",# "mod_flv_streaming",# "mod_evasive", "mod_fastcgi", "mod_simple_vhost", "mod_userdir", "mod_redirect" )## a static document-root, for virtual-hosting take look at the## server.virtual-* optionsserver.document-root = "/var/www/"## where to send error-messages toserver.errorlog = "/var/log/lighttpd/error.log"## files to check for if .../ is requestedindex-file.names = ( "index.php", "index.html", "index.htm", "default.htm" )## Use the "Content-Type" extended attribute to obtain mime type if possible# mimetype.use-xattr = "enable"#### accesslog moduleaccesslog.filename = "/var/log/lighttpd/access.log"## deny access the file-extensions## ~ is for backupfiles from vi, emacs, joe, ...# .inc is often used for code includes which should in general not be part# of the document-rooturl.access-deny = ( "~", ".inc" )######### Options that are good to be but not neccesary to be changed ######### bind to port (default: 80)# server.port = 81## bind to localhost only (default: all interfaces)## server.bind = "localhost"## error-handler for status 404#server.error-handler-404 = "/error-handler.html"#server.error-handler-404 = "/error-handler.php"## to help the rc.scriptsserver.pid-file = "/var/run/lighttpd.pid"#### Format: <errorfile-prefix><status>.html## -> ..../status-404.html for 'File not found'#server.errorfile-prefix = "/var/www/"## virtual directory listingsdir-listing.encoding = "utf-8"server.dir-listing = "enable"## send unhandled HTTP-header headers to error-log#debug.dump-unknown-headers = "enable"### only root can use these options## chroot() to directory (default: no chroot() )#server.chroot = "/"## change uid to <uid> (default: don't care)server.username = "www-data"## change uid to <uid> (default: don't care)server.groupname = "www-data"#### compress module#compress.cache-dir = "/var/tmp/lighttpd/cache/compress/"#compress.filetype = ("text/plain", "text/html")#### status module# status.status-url = "/server-status"# status.config-url = "/server-config"#### url handling modules (rewrite, redirect, access)# url.rewrite = ( "^/$" => "/server-status" )# url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )## define a pattern for the host url finding# %% => % sign# %0 => domain name + tld# %1 => tld# %2 => domain name without tld# %3 => subdomain 1 name# %4 => subdomain 2 name## evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/"#### expire module# expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")#### rrdtool# rrdtool.binary = "/usr/bin/rrdtool"# rrdtool.db-name = "/var/www/lighttpd.rrd"#### handle Debian Policy Manual, Section 11.5. urls#### and by default allow them only from localhost$HTTP["remoteip"] =~ "127.0.0.1" { alias.url += ( "/doc/" => "/usr/share/doc/", "/images/" => "/usr/share/images/" ) $HTTP["url"] =~ "^/doc/|^/images/" { dir-listing.activate = "enable" }}#### variable usage:## variable name without "." is auto prefixed by "var." and becomes "var.bar"#bar = 1#var.mystring = "foo"## integer add#bar += 1## string concat, with integer cast as string, result: "www.foo1.com"#server.name = "www." + mystring + var.bar + ".com"## array merge#index-file.names = (foo + ".php") + index-file.names#index-file.names += (foo + ".php")#### external configuration files## mimetype mappinginclude_shell "/usr/share/lighttpd/create-mime.assign.pl"## load enabled configuration files,## read /etc/lighttpd/conf-available/README firstinclude_shell "/usr/share/lighttpd/include-conf-enabled.pl"$HTTP["host"] =~ "^www\.(.*)$" { url.redirect = ( "^/(.*)" => "http://%1/$1", )}# PHP5fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php5-cgi", "socket" => "/tmp/php.socket",)))# User dirsuserdir.path = "public_html"# VHOSTSsimple-vhost.server-root = "/var/www/"simple-vhost.default-host = "default"simple-vhost.document-root = "htdocs"