# 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 memory server.modules = ( "mod_access", "mod_alias", "mod_accesslog", "mod_rewrite", "mod_redirect", "mod_proxy", "mod_fastcgi", "mod_cgi", # "mod_status", # "mod_evhost", "mod_compress", "mod_usertrack", # "mod_rrdtool", "mod_webdav", # "mod_expire", # "mod_flv_streaming", # "mod_evasive" ) ## a static document-root, for virtual-hosting take look at the ## server.virtual-* options server.document-root = "/var/www/" ## where to send error-messages to server.errorlog = "/var/log/lighttpd/error.log" ## files to check for if .../ is requested index-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 module accesslog.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-root url.access-deny = ( "~", ".inc" ) ######### Options that are good to be but not neccesary to be changed ####### ## bind to port (default: 80) server.port = 99 ## 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.scripts server.pid-file = "/var/run/lighttpd.pid" ## ## Format: .html ## -> ..../status-404.html for 'File not found' #server.errorfile-prefix = "/var/www/" ## virtual directory listings dir-listing.encoding = "utf-8" server.dir-listing = "disable" ## 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 (default: don't care) server.username = "www-data" ## change uid to (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" ## this is a hack alias.url = ("___invalid___" => "___invalid___") $SERVER["socket"] == "192.168.0.8:8020" { alias.url = ( "/twiki/bin" => "/srv/www-data/twiki/bin" ) url.rewrite-final = ( "^/bin/(.*)$" => "/twiki/bin/$1", "^/cgi-bin/(.*)$" => "/twiki/bin/$1", "^/([A-Z].*)$" => "/twiki/bin/view/$1" ) $HTTP["url"] =~ "/twiki/bin" { cgi.assign = ( ".pl" => "/usr/bin/perl" ) } } #### external configuration files ## mimetype mapping include_shell "/usr/share/lighttpd/create-mime.assign.pl" ## load enabled configuration files, ## read /etc/lighttpd/conf-available/README first include_shell "/usr/share/lighttpd/include-conf-enabled.pl"