1 | # lighttpd configuration file
|
---|
2 | #
|
---|
3 | # use it as a base for lighttpd 1.0.0 and above
|
---|
4 | #
|
---|
5 | # $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $
|
---|
6 |
|
---|
7 | ############ Options you really have to take care of ####################
|
---|
8 |
|
---|
9 | ## modules to load
|
---|
10 | # at least mod_access and mod_accesslog should be loaded
|
---|
11 | # all other module should only be loaded if really neccesary
|
---|
12 | # - saves some time
|
---|
13 | # - saves memory
|
---|
14 | server.modules = (
|
---|
15 | # "mod_rewrite",
|
---|
16 | # "mod_redirect",
|
---|
17 | # "mod_alias",
|
---|
18 | "mod_access",
|
---|
19 | "mod_flv_streaming",
|
---|
20 | # "mod_cml",
|
---|
21 | # "mod_trigger_b4_dl",
|
---|
22 | # "mod_auth",
|
---|
23 | # "mod_status",
|
---|
24 | # "mod_setenv",
|
---|
25 | # "mod_fastcgi",
|
---|
26 | # "mod_proxy",
|
---|
27 | # "mod_simple_vhost",
|
---|
28 | # "mod_evhost",
|
---|
29 | # "mod_userdir",
|
---|
30 | "mod_cgi",
|
---|
31 | # "mod_compress",
|
---|
32 | # "mod_ssi",
|
---|
33 | # "mod_usertrack",
|
---|
34 | # "mod_expire",
|
---|
35 | # "mod_secdownload",
|
---|
36 | # "mod_rrdtool",
|
---|
37 | "mod_accesslog" )
|
---|
38 |
|
---|
39 |
|
---|
40 | ## a static document-root, for virtual-hosting take look at the
|
---|
41 | ## server.virtual-* options
|
---|
42 | server.document-root = "/research/code/gsdl-video-import/trunk/installed/server/htdocs/"
|
---|
43 |
|
---|
44 | ## where to send error-messages to
|
---|
45 | server.errorlog = "/research/code/gsdl-video-import/trunk/installed/server/logs/error.log"
|
---|
46 |
|
---|
47 | # files to check for if .../ is requested
|
---|
48 | index-file.names = ( "index.php", "index.html",
|
---|
49 | "index.htm", "default.htm" )
|
---|
50 |
|
---|
51 | ## set the event-handler (read the performance section in the manual)
|
---|
52 | # server.event-handler = "freebsd-kqueue" # needed on OS X
|
---|
53 |
|
---|
54 | # mimetype mapping
|
---|
55 | mimetype.assign = (
|
---|
56 | ".pdf" => "application/pdf",
|
---|
57 | ".sig" => "application/pgp-signature",
|
---|
58 | ".spl" => "application/futuresplash",
|
---|
59 | ".class" => "application/octet-stream",
|
---|
60 | ".ps" => "application/postscript",
|
---|
61 | ".torrent" => "application/x-bittorrent",
|
---|
62 | ".dvi" => "application/x-dvi",
|
---|
63 | ".gz" => "application/x-gzip",
|
---|
64 | ".pac" => "application/x-ns-proxy-autoconfig",
|
---|
65 | ".swf" => "application/x-shockwave-flash",
|
---|
66 | ".tar.gz" => "application/x-tgz",
|
---|
67 | ".tgz" => "application/x-tgz",
|
---|
68 | ".tar" => "application/x-tar",
|
---|
69 | ".zip" => "application/zip",
|
---|
70 | ".mp3" => "audio/mpeg",
|
---|
71 | ".m3u" => "audio/x-mpegurl",
|
---|
72 | ".wma" => "audio/x-ms-wma",
|
---|
73 | ".wax" => "audio/x-ms-wax",
|
---|
74 | ".ogg" => "application/ogg",
|
---|
75 | ".wav" => "audio/x-wav",
|
---|
76 | ".gif" => "image/gif",
|
---|
77 | ".jpg" => "image/jpeg",
|
---|
78 | ".jpeg" => "image/jpeg",
|
---|
79 | ".png" => "image/png",
|
---|
80 | ".xbm" => "image/x-xbitmap",
|
---|
81 | ".xpm" => "image/x-xpixmap",
|
---|
82 | ".xwd" => "image/x-xwindowdump",
|
---|
83 | ".css" => "text/css",
|
---|
84 | ".html" => "text/html",
|
---|
85 | ".htm" => "text/html",
|
---|
86 | ".js" => "text/javascript",
|
---|
87 | ".asc" => "text/plain",
|
---|
88 | ".c" => "text/plain",
|
---|
89 | ".cpp" => "text/plain",
|
---|
90 | ".log" => "text/plain",
|
---|
91 | ".conf" => "text/plain",
|
---|
92 | ".text" => "text/plain",
|
---|
93 | ".txt" => "text/plain",
|
---|
94 | ".dtd" => "text/xml",
|
---|
95 | ".xml" => "text/xml",
|
---|
96 | ".mpeg" => "video/mpeg",
|
---|
97 | ".mpg" => "video/mpeg",
|
---|
98 | ".mov" => "video/quicktime",
|
---|
99 | ".qt" => "video/quicktime",
|
---|
100 | ".avi" => "video/x-msvideo",
|
---|
101 | ".asf" => "video/x-ms-asf",
|
---|
102 | ".asx" => "video/x-ms-asf",
|
---|
103 | ".wmv" => "video/x-ms-wmv",
|
---|
104 | ".bz2" => "application/x-bzip",
|
---|
105 | ".tbz" => "application/x-bzip-compressed-tar",
|
---|
106 | ".tar.bz2" => "application/x-bzip-compressed-tar"
|
---|
107 | )
|
---|
108 |
|
---|
109 | # Use the "Content-Type" extended attribute to obtain mime type if possible
|
---|
110 | #mimetype.use-xattr = "enable"
|
---|
111 |
|
---|
112 |
|
---|
113 | ## send a different Server: header
|
---|
114 | ## be nice and keep it at lighttpd
|
---|
115 | # server.tag = "lighttpd"
|
---|
116 |
|
---|
117 | #### accesslog module
|
---|
118 | accesslog.filename = "/research/code/gsdl-video-import/trunk/installed/server/logs/access.log"
|
---|
119 |
|
---|
120 | ## deny access the file-extensions
|
---|
121 | #
|
---|
122 | # ~ is for backupfiles from vi, emacs, joe, ...
|
---|
123 | # .inc is often used for code includes which should in general not be part
|
---|
124 | # of the document-root
|
---|
125 | url.access-deny = ( "~", ".inc" )
|
---|
126 |
|
---|
127 | #!!!!!
|
---|
128 | #$HTTP["url"] =~ "\.pdf$" {
|
---|
129 | # server.range-requests = "disable"
|
---|
130 | #}
|
---|
131 |
|
---|
132 | ##
|
---|
133 | # which extensions should not be handle via static-file transfer
|
---|
134 | #
|
---|
135 | # .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
|
---|
136 | static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
|
---|
137 |
|
---|
138 | ######### Options that are good to be but not neccesary to be changed #######
|
---|
139 |
|
---|
140 | ## bind to port (default: 80)
|
---|
141 | server.port = 8081
|
---|
142 |
|
---|
143 | ## bind to localhost (default: all interfaces)
|
---|
144 | #server.bind = "grisu.home.kneschke.de"
|
---|
145 |
|
---|
146 | ## error-handler for status 404
|
---|
147 | #server.error-handler-404 = "/error-handler.html"
|
---|
148 | #server.error-handler-404 = "/error-handler.php"
|
---|
149 |
|
---|
150 | ## to help the rc.scripts
|
---|
151 | #server.pid-file = "/var/run/lighttpd.pid"
|
---|
152 |
|
---|
153 |
|
---|
154 | flv-streaming.extensions = ( ".flv" )
|
---|
155 |
|
---|
156 | ###### virtual hosts
|
---|
157 | ##
|
---|
158 | ## If you want name-based virtual hosting add the next three settings and load
|
---|
159 | ## mod_simple_vhost
|
---|
160 | ##
|
---|
161 | ## document-root =
|
---|
162 | ## virtual-server-root + virtual-server-default-host + virtual-server-docroot
|
---|
163 | ## or
|
---|
164 | ## virtual-server-root + http-host + virtual-server-docroot
|
---|
165 | ##
|
---|
166 | #simple-vhost.server-root = "/home/weigon/wwwroot/servers/"
|
---|
167 | #simple-vhost.default-host = "grisu.home.kneschke.de"
|
---|
168 | #simple-vhost.document-root = "/pages/"
|
---|
169 |
|
---|
170 |
|
---|
171 | ##
|
---|
172 | ## Format: <errorfile-prefix><status-code>.html
|
---|
173 | ## -> ..../status-404.html for 'File not found'
|
---|
174 | #server.errorfile-prefix = "/home/weigon/projects/lighttpd/doc/status-"
|
---|
175 |
|
---|
176 | ## virtual directory listings
|
---|
177 | dir-listing.activate = "enable"
|
---|
178 |
|
---|
179 | ## enable debugging
|
---|
180 | #debug.log-request-header = "enable"
|
---|
181 | #debug.log-response-header = "enable"
|
---|
182 | #debug.log-request-handling = "enable"
|
---|
183 | #debug.log-file-not-found = "enable"
|
---|
184 |
|
---|
185 | ### only root can use these options
|
---|
186 | #
|
---|
187 | # chroot() to directory (default: no chroot() )
|
---|
188 | #server.chroot = "/"
|
---|
189 |
|
---|
190 | ## change uid to <uid> (default: don't care)
|
---|
191 | #server.username = "wwwrun"
|
---|
192 |
|
---|
193 | ## change uid to <uid> (default: don't care)
|
---|
194 | #server.groupname = "wwwrun"
|
---|
195 |
|
---|
196 | #### compress module
|
---|
197 | #compress.cache-dir = "/research/code/gsdl-video-import/trunk/installed/server/cache/compress/"
|
---|
198 | #compress.filetype = ("text/plain", "text/html")
|
---|
199 |
|
---|
200 | #### proxy module
|
---|
201 | ## read proxy.txt for more info
|
---|
202 | #proxy.server = ( ".php" =>
|
---|
203 | # ( "localhost" =>
|
---|
204 | # (
|
---|
205 | # "host" => "192.168.0.101",
|
---|
206 | # "port" => 80
|
---|
207 | # )
|
---|
208 | # )
|
---|
209 | # )
|
---|
210 |
|
---|
211 | #### fastcgi module
|
---|
212 | ## read fastcgi.txt for more info
|
---|
213 | ## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini
|
---|
214 | #fastcgi.server = ( ".php" =>
|
---|
215 | # ( "localhost" =>
|
---|
216 | # (
|
---|
217 | # "socket" => "/tmp/php-fastcgi.socket",
|
---|
218 | # "bin-path" => "/usr/local/bin/php"
|
---|
219 | # )
|
---|
220 | # )
|
---|
221 | # )
|
---|
222 |
|
---|
223 | #### CGI module
|
---|
224 | cgi.assign = ( ".pl" => "/usr/bin/perl",
|
---|
225 | ".cgi" => "/usr/bin/perl" )
|
---|
226 |
|
---|
227 |
|
---|
228 | #### SSL engine
|
---|
229 | #ssl.engine = "enable"
|
---|
230 | #ssl.pemfile = "server.pem"
|
---|
231 |
|
---|
232 | #### status module
|
---|
233 | #status.status-url = "/server-status"
|
---|
234 | #status.config-url = "/server-config"
|
---|
235 |
|
---|
236 | #### auth module
|
---|
237 | ## read authentication.txt for more info
|
---|
238 | #auth.backend = "plain"
|
---|
239 | #auth.backend.plain.userfile = "lighttpd.user"
|
---|
240 | #auth.backend.plain.groupfile = "lighttpd.group"
|
---|
241 |
|
---|
242 | #auth.backend.ldap.hostname = "localhost"
|
---|
243 | #auth.backend.ldap.base-dn = "dc=my-domain,dc=com"
|
---|
244 | #auth.backend.ldap.filter = "(uid=$)"
|
---|
245 |
|
---|
246 | #auth.require = ( "/server-status" =>
|
---|
247 | # (
|
---|
248 | # "method" => "digest",
|
---|
249 | # "realm" => "download archiv",
|
---|
250 | # "require" => "user=jan"
|
---|
251 | # ),
|
---|
252 | # "/server-config" =>
|
---|
253 | # (
|
---|
254 | # "method" => "digest",
|
---|
255 | # "realm" => "download archiv",
|
---|
256 | # "require" => "valid-user"
|
---|
257 | # )
|
---|
258 | # )
|
---|
259 |
|
---|
260 | #### url handling modules (rewrite, redirect, access)
|
---|
261 | #url.rewrite = ( "^/$" => "/server-status" )
|
---|
262 | #url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )
|
---|
263 | #### both rewrite/redirect support back reference to regex conditional using %n
|
---|
264 | #$HTTP["host"] =~ "^www\.(.*)" {
|
---|
265 | # url.redirect = ( "^/(.*)" => "http://%1/$1" )
|
---|
266 | #}
|
---|
267 |
|
---|
268 | #
|
---|
269 | # define a pattern for the host url finding
|
---|
270 | # %% => % sign
|
---|
271 | # %0 => domain name + tld
|
---|
272 | # %1 => tld
|
---|
273 | # %2 => domain name without tld
|
---|
274 | # %3 => subdomain 1 name
|
---|
275 | # %4 => subdomain 2 name
|
---|
276 | #
|
---|
277 | #evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/"
|
---|
278 |
|
---|
279 | #### expire module
|
---|
280 | #expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")
|
---|
281 |
|
---|
282 | #### ssi
|
---|
283 | #ssi.extension = ( ".shtml" )
|
---|
284 |
|
---|
285 | #### rrdtool
|
---|
286 | #rrdtool.binary = "/usr/bin/rrdtool"
|
---|
287 | #rrdtool.db-name = "/var/www/lighttpd.rrd"
|
---|
288 |
|
---|
289 | #### setenv
|
---|
290 | #setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
|
---|
291 | #setenv.add-response-header = ( "X-Secret-Message" => "42" )
|
---|
292 |
|
---|
293 | ## for mod_trigger_b4_dl
|
---|
294 | # trigger-before-download.gdbm-filename = "/home/weigon/testbase/trigger.db"
|
---|
295 | # trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
|
---|
296 | # trigger-before-download.trigger-url = "^/trigger/"
|
---|
297 | # trigger-before-download.download-url = "^/download/"
|
---|
298 | # trigger-before-download.deny-url = "http://127.0.0.1/index.html"
|
---|
299 | # trigger-before-download.trigger-timeout = 10
|
---|
300 |
|
---|
301 | ## for mod_cml
|
---|
302 | ## don't forget to add index.cml to server.indexfiles
|
---|
303 | # cml.extension = ".cml"
|
---|
304 | # cml.memcache-hosts = ( "127.0.0.1:11211" )
|
---|
305 |
|
---|
306 | #### variable usage:
|
---|
307 | ## variable name without "." is auto prefixed by "var." and becomes "var.bar"
|
---|
308 | #bar = 1
|
---|
309 | #var.mystring = "foo"
|
---|
310 |
|
---|
311 | ## integer add
|
---|
312 | #bar += 1
|
---|
313 | ## string concat, with integer cast as string, result: "www.foo1.com"
|
---|
314 | #server.name = "www." + mystring + var.bar + ".com"
|
---|
315 | ## array merge
|
---|
316 | #index-file.names = (foo + ".php") + index-file.names
|
---|
317 | #index-file.names += (foo + ".php")
|
---|
318 |
|
---|
319 | #### include
|
---|
320 | #include /etc/lighttpd/lighttpd-inc.conf
|
---|
321 | ## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf"
|
---|
322 | #include "lighttpd-inc.conf"
|
---|
323 |
|
---|
324 | #### include_shell
|
---|
325 | #include_shell "echo var.a=1"
|
---|
326 | ## the above is same as:
|
---|
327 | #var.a=1
|
---|