## Lighttpd Konfigurationsdatei
 
## Zu ladende Module 
# mod_access, mod_compress, mod_expire, mod_redirect und mod_alias 
# werden standardmaessig geladen. Alles andere nur, wenn es notwendig ist.
# - spart etwas Zeit und Arbeitsspeicher

server.modules              = (
	    "mod_expire",
            "mod_access",
            "mod_alias",
            "mod_compress",
            "mod_redirect"
)

## Dokumenten-Wurzelverzeichnis, in dem statische Inhalte ausgeliefert werden.
# laesst sich beliebig festlegen 
server.document-root       = "/var/www/server"

## Wohin hochgeladene Dateien abgelegt werden sollen. 
# Wird täglich gesaeubert
server.upload-dirs = ( "/var/cache/lighttpd/uploads" )

## Wohin Fehlermeldungen geloggt werden sollen
# laesst sich auch per Host einstellen
server.errorlog            = "/var/log/lighttpd/error.log"

## Welche Namen dürfen Index-Dateien haben
index-file.names           = ( "index.php", "index.html",
                               "index.htm", "default.htm",
                               "index.pl", "index.lighttpd.html" )

## Zugriff auf Dateien mit folgenden Dateiendungen verweigern
# Lighttpd liefert diese Dateien nicht aus
# ~    Backupdateien diverser Editoren beginnen mit ~
# .inc wird oft benutzt, um Code in PHP-Dateien einzubinden.
url.access-deny            = ( "~", ".inc" )

## Welche Dateiendungen sollen nicht mittels statischem Dateitransfer
# uebertragen werden.
# .php, .pl, .fcgi werden oft durch mod_fastcgi or mod_cgi ausgeliefert
# weitere Endungen sind z.B. .rb fuer Ruby und .py fuer Python
static-file.exclude-extensions = ( ".php", ".pl", ".plx", ".fcgi", ".cgi" )

######### Standardoptionen, die man in der Regel so belassen kann #######

## IPv6 nur benutzen, wenn es verfuegbar ist.
include_shell "/usr/share/lighttpd/use-ipv6.pl"

## Port des Webservers (Standard: 80)
server.port = 80

## Den Webserver an eine IP binden (Standard: Alle Interfaces)
server.bind                = "134.0.24.218"

## error-handler fuer status 404
#server.error-handler-404  = "/error-handler.html"
#server.error-handler-404  = "/error-handler.php"

## PID-Datei fuer rc-Skripte
server.pid-file            = "/var/run/lighttpd.pid"

## Virtuelle Verzeichnisauflistung 
# bei mir standardmaessig ausgeschaltet
dir-listing.encoding        = "utf-8"
server.dir-listing          = "disable"

## Sende unerkannte HTTP-Header zum Fehlerlog
#debug.dump-unknown-headers  = "enable"

## User des Webservers 
server.username            = "www-data"

## Gruppe des Webservers 
server.groupname	   = "www-data"

## Downloadrate auf 1024 kb/s global und auf 128 kb/s per IP beschraenken 
#server.kbytes-per-second   	= "1024"
#connection.kbytes-per-second 	= "128"

## Compress-Modul
# Welche Dateien sollen komprimiert werden
compress.cache-dir          = "/var/cache/lighttpd/compress/"
compress.filetype           = ("text/plain", "text/html", "application/x-javascript", "text/css")

## Mimetype Mapping
include_shell "/usr/share/lighttpd/create-mime.assign.pl"

## Lade zusaetzliche Konfigurationsdateien
## siehe /etc/lighttpd/conf-available/README 
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"

########### Meine Hosts ###########
########### linuxiuvat.de ohne ssl #############
$SERVER["socket"] == "134.0.24.218:80" {
	$HTTP["host"] =~ "^(www\.)?linuxiuvat\.de$" {
		server.document-root = "/var/www/linuxiuvat.de"
		server.error-handler-404 = "/e404.htm"
		accesslog.filename = "/var/log/lighttpd/linuxiuvat.de/access.log"
		server.errorlog = "/var/log/lighttpd/linuxiuvat.de/error.log"
		
		## mod_expire nach Dateityp
		# $HTTP["url"] =~ "\.(jpg|gif|png|css|js)$" {
		#     expire.url = ( "" => "access 7 days" )
		#     }
		
		## mod_expire nach Verzeichnis. 
		$HTTP["url"] =~ "^/img/|/stats/oa/icons/" {
			expire.url = ("" => "access 7 days") 
		}
		$HTTP["url"] =~ "^/cgi-bin/" {
			cgi.assign = ( "" => "/usr/bin/perl" ) 
		}
	}
}
## Zugriff soll nur ueber den Namen und nicht die IP-Adresse erlaubt sein
$HTTP["host"] =~ "134.0.24.218" {
	url.access-deny = ( "" )
}



########### Subdomains munin und stats mit ssl #############
$SERVER["socket"] == "134.0.24.218:443" {
		$HTTP["host"] =~ "(^|\.)munin\.linuxiuvat\.de$" {
			server.document-root = "/var/cache/munin/www"
			status.status-url = "/status"
		}
		$HTTP["host"] =~ "(^|\.)stats\.linuxiuvat\.de$" {
			server.document-root = "/var/www/awffull/"
			#alias.url = ( 	"/awstats-icon/" => "/usr/share/awstats/icon/")
		}
}