## 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/") } }