server.document-root         = env.SRCDIR + "/tmp/lighttpd/servers/www.example.org/pages/"

## bind to port (default: 80)
server.port                 = 2050

## bind to localhost (default: all interfaces)
server.bind                = "localhost"
server.errorlog            = env.SRCDIR + "/tmp/lighttpd/logs/lighttpd.error.log"
server.breakagelog         = env.SRCDIR + "/tmp/lighttpd/logs/lighttpd.breakage.log"
server.name                = "www.example.org"
server.tag                 = "Proxy"

server.dir-listing = "enable"

server.modules = (
	"mod_rewrite",
	"mod_setenv",
	"mod_access",
	"mod_auth",
	"mod_authn_file",
	"mod_status",
	"mod_expire",
	"mod_simple_vhost",
	"mod_redirect",
	"mod_fastcgi",
	"mod_proxy",
	"mod_cgi",
	"mod_compress",
	"mod_userdir",
	"mod_accesslog",
)

server.indexfiles = (
	"index.php",
	"index.html",
	"index.htm",
	"default.htm",
)

######################## MODULE CONFIG ############################

accesslog.filename = env.SRCDIR + "/tmp/lighttpd/logs/lighttpd.access.log"

mimetype.assign = (
	".png"  => "image/png",
	".jpg"  => "image/jpeg",
	".jpeg" => "image/jpeg",
	".gif"  => "image/gif",
	".html" => "text/html",
	".htm"  => "text/html",
	".pdf"  => "application/pdf",
	".swf"  => "application/x-shockwave-flash",
	".spl"  => "application/futuresplash",
	".txt"  => "text/plain",
	".tar.gz" =>   "application/x-tgz",
	".tgz"  => "application/x-tgz",
	".gz"   => "application/x-gzip",
	".c"    => "text/plain",
	".conf" => "text/plain",
)

compress.cache-dir = env.SRCDIR + "/tmp/lighttpd/cache/compress/"
compress.filetype = (
	"text/plain",
	"text/html",
)

setenv.add-environment = (
	"TRAC_ENV" => "foo",
)
setenv.add-request-header = (
	"FOO" => "foo",
)
setenv.add-response-header = (
	"BAR" => "foo",
)

proxy.debug = 1
proxy.server = ( "" => (
	"grisu" => (
		"host" => "127.0.0.1",
		"port" => 2048,
	),
))

cgi.assign = (
	".pl"  => env.PERL,
	".cgi" => env.PERL,
)

userdir.include-user = (
	"jan",
)
userdir.path = "/"

auth.backend = "plain"
auth.backend.plain.userfile = env.SRCDIR + "/tmp/lighttpd/lighttpd.user"
auth.backend.plain.groupfile = "lighttpd.group"

#auth.backend.ldap.hostname  = "localhost"
#auth.backend.ldap.base-dn   = "dc=my-domain,dc=com"
#auth.backend.ldap.filter    = "(uid=$)"

auth.require = (
	"/server-status" => (
		"method"  => "digest",
		"realm"   => "download archiv",
		"require" => "group=www|user=jan|host=192.168.2.10",
	),
	"/auth.php" => (
		"method"  => "basic",
		"realm"   => "download archiv",
		"require" => "user=jan",
	),
	"/server-config" => (
		"method"  => "basic",
		"realm"   => "download archiv",
		"require" => "group=www|user=jan|host=192.168.2.10",
	),
)

url.access-deny = (
	"~",
	".inc",
)

url.redirect = (
	"^/redirect/$" => "http://localhost:2048/",
)

url.rewrite = (
	"^/rewrite/foo($|\?.+)" => "/indexfile/rewrite.php$1",
	"^/rewrite/bar(?:$|\?(.+))" => "/indexfile/rewrite.php?bar&$1",
	"^/rewrite/all(/.*)$" => "/indexfile/rewrite.php?$1",
)

expire.url = (
	"/expire/access" => "access 2 hours",
	"/expire/modification" => "access plus 1 seconds 2 minutes",
)

#### status module
status.status-url = "/server-status"
status.config-url = "/server-config"

$HTTP["host"] == "vvv.example.org" {
	server.document-root = env.SRCDIR + "/tmp/lighttpd/servers/www.example.org/pages/"
}

$HTTP["host"] == "zzz.example.org" {
	server.document-root = env.SRCDIR + "/tmp/lighttpd/servers/www.example.org/pages/"
	server.name = "zzz.example.org"
}

$HTTP["host"] == "no-simple.example.org" {
	server.document-root = env.SRCDIR + "/tmp/lighttpd/servers/123.example.org/pages/"
	server.name = "zzz.example.org"
}

$HTTP["host"] !~ "(no-simple\.example\.org)" {
	simple-vhost.document-root = "pages"
	simple-vhost.server-root = env.SRCDIR + "/tmp/lighttpd/servers/"
	simple-vhost.default-host = "www.example.org"
}
