Annotation of elwix/config/etc/default/lighttpd/lighttpd.conf, revision 1.2
1.2 ! misho 1: #######################################################################
! 2: ##
! 3: ## /usr/local/etc/lighttpd/lighttpd.conf
! 4: ##
! 5: ## check /usr/local/etc/lighttpd/conf.d/*.conf for the configuration of modules.
! 6: ##
! 7: #######################################################################
! 8:
! 9: #######################################################################
! 10: ##
! 11: ## Some Variable definition which will make chrooting easier.
! 12: ##
! 13: ## if you add a variable here. Add the corresponding variable in the
! 14: ## chroot example aswell.
! 15: ##
! 16: var.log_root = "/var/log/lighttpd"
! 17: var.state_dir = "/var/run/lighttpd"
! 18: var.home_dir = "/var/spool/lighttpd"
! 19: var.conf_dir = "/etc/lighttpd"
! 20:
! 21: var.server_root = "/var/local/www/data"
! 22:
! 23: ##
! 24: ## run the server chrooted.
! 25: ##
! 26: ## This requires root permissions during startup.
! 27: ##
! 28: ## If you run Chrooted set the the variables to directories relative to
! 29: ## the chroot dir.
! 30: ##
! 31: ## example chroot configuration:
! 32: ##
! 33: #var.log_root = "/logs"
! 34: #var.server_root = "/"
! 35: #var.state_dir = "/run"
! 36: #var.home_dir = "/lib/lighttpd"
! 37: #var.vhosts_dir = "/vhosts"
! 38: #var.conf_dir = "/etc"
! 39: #
! 40: #server.chroot = "/srv/www"
! 41:
! 42: ##
! 43: ## Some additional variables to make the configuration easier
! 44: ##
! 45:
! 46: ##
! 47: ## Base directory for all virtual hosts
! 48: ##
! 49: ## used in:
! 50: ## conf.d/evhost.conf
! 51: ## conf.d/simple_vhost.conf
! 52: ## vhosts.d/vhosts.template
! 53: ##
! 54: var.vhosts_dir = server_root + "/vhosts"
! 55:
! 56: ##
! 57: ## Cache for mod_compress
! 58: ##
! 59: ## used in:
! 60: ## conf.d/compress.conf
! 61: ##
! 62: var.cache_dir = "/var/spool/lighttpd"
! 63:
! 64: ##
! 65: ## Base directory for sockets.
! 66: ##
! 67: ## used in:
! 68: ## conf.d/fastcgi.conf
! 69: ## conf.d/scgi.conf
! 70: ##
! 71: var.socket_dir = home_dir + "/sockets"
! 72:
! 73: ##
! 74: #######################################################################
! 75:
! 76: #######################################################################
! 77: ##
! 78: ## Load the modules.
! 79: include "modules.conf"
! 80:
! 81: ##
! 82: #######################################################################
! 83:
! 84: #######################################################################
! 85: ##
! 86: ## Basic Configuration
! 87: ## ---------------------
! 88: ##
! 89: server.port = 80
! 90:
! 91: ##
! 92: ## Use IPv6?
! 93: ##
! 94: server.use-ipv6 = "enable"
! 95:
! 96: ##
! 97: ## bind to a specific IP
! 98: ##
! 99: #server.bind = "localhost"
! 100:
! 101: ##
! 102: ## Run as a different username/groupname.
! 103: ## This requires root permissions during startup.
! 104: ##
! 105: server.username = "www"
! 106: server.groupname = "www"
! 107:
! 108: ##
! 109: ## enable core files.
! 110: ##
! 111: #server.core-files = "disable"
! 112:
! 113: ##
! 114: ## Document root
! 115: ##
! 116: server.document-root = "/usr/local/www/data/"
! 117:
! 118: ##
! 119: ## The value for the "Server:" response field.
! 120: ##
! 121: ## It would be nice to keep it at "lighttpd".
! 122: ##
! 123: #server.tag = "lighttpd"
! 124:
! 125: ##
! 126: ## store a pid file
! 127: ##
! 128: server.pid-file = state_dir + "/lighttpd.pid"
! 129:
! 130: ##
! 131: #######################################################################
! 132:
! 133: #######################################################################
! 134: ##
! 135: ## Logging Options
! 136: ## ------------------
! 137: ##
! 138: ## all logging options can be overwritten per vhost.
! 139: ##
! 140: ## Path to the error log file
! 141: ##
! 142: server.errorlog = log_root + "/error.log"
! 143:
! 144: ##
! 145: ## If you want to log to syslog you have to unset the
! 146: ## server.errorlog setting and uncomment the next line.
! 147: ##
! 148: #server.errorlog-use-syslog = "enable"
! 149:
! 150: ##
! 151: ## Access log config
! 152: ##
! 153: include "conf.d/access_log.conf"
! 154:
! 155: ##
! 156: ## The debug options are moved into their own file.
! 157: ## see conf.d/debug.conf for various options for request debugging.
! 158: ##
! 159: include "conf.d/debug.conf"
! 160:
! 161: ##
! 162: #######################################################################
! 163:
! 164: #######################################################################
! 165: ##
! 166: ## Tuning/Performance
! 167: ## --------------------
! 168: ##
! 169: ## corresponding documentation:
! 170: ## http://www.lighttpd.net/documentation/performance.html
! 171: ##
! 172: ## set the event-handler (read the performance section in the manual)
! 173: ##
! 174: ## possible options on linux are:
! 175: ##
! 176: ## select
! 177: ## poll
! 178: ## linux-sysepoll
! 179: ##
! 180: ## linux-sysepoll is recommended on kernel 2.6.
! 181: ##
! 182: server.event-handler = "freebsd-kqueue"
! 183:
! 184: ##
! 185: ## The basic network interface for all platforms at the syscalls read()
! 186: ## and write(). Every modern OS provides its own syscall to help network
! 187: ## servers transfer files as fast as possible
! 188: ##
! 189: ## linux-sendfile - is recommended for small files.
! 190: ## writev - is recommended for sending many large files
! 191: ##
! 192: server.network-backend = "writev"
! 193:
! 194: ##
! 195: ## As lighttpd is a single-threaded server, its main resource limit is
! 196: ## the number of file descriptors, which is set to 1024 by default (on
! 197: ## most systems).
! 198: ##
! 199: ## If you are running a high-traffic site you might want to increase this
! 200: ## limit by setting server.max-fds.
! 201: ##
! 202: ## Changing this setting requires root permissions on startup. see
! 203: ## server.username/server.groupname.
! 204: ##
! 205: ## By default lighttpd would not change the operation system default.
! 206: ## But setting it to 2048 is a better default for busy servers.
! 207: ##
! 208: server.max-fds = 2048
! 209:
! 210: ##
! 211: ## Stat() call caching.
! 212: ##
! 213: ## lighttpd can utilize FAM/Gamin to cache stat call.
! 214: ##
! 215: ## possible values are:
! 216: ## disable, simple or fam.
! 217: ##
! 218: server.stat-cache-engine = "simple"
! 219:
! 220: ##
! 221: ## Fine tuning for the request handling
! 222: ##
! 223: ## max-connections == max-fds/2 (maybe /3)
! 224: ## means the other file handles are used for fastcgi/files
! 225: ##
! 226: server.max-connections = 1024
! 227:
! 228: ##
! 229: ## How many seconds to keep a keep-alive connection open,
! 230: ## until we consider it idle.
! 231: ##
! 232: ## Default: 5
! 233: ##
! 234: #server.max-keep-alive-idle = 5
! 235:
! 236: ##
! 237: ## How many keep-alive requests until closing the connection.
! 238: ##
! 239: ## Default: 16
! 240: ##
! 241: #server.max-keep-alive-requests = 16
! 242:
! 243: ##
! 244: ## Maximum size of a request in kilobytes.
! 245: ## By default it is unlimited (0).
! 246: ##
! 247: ## Uploads to your server cant be larger than this value.
! 248: ##
! 249: #server.max-request-size = 0
! 250:
! 251: ##
! 252: ## Time to read from a socket before we consider it idle.
! 253: ##
! 254: ## Default: 60
! 255: ##
! 256: #server.max-read-idle = 60
! 257:
! 258: ##
! 259: ## Time to write to a socket before we consider it idle.
! 260: ##
! 261: ## Default: 360
! 262: ##
! 263: #server.max-write-idle = 360
! 264:
! 265: ##
! 266: ## Traffic Shaping
! 267: ## -----------------
! 268: ##
! 269: ## see /usr/share/doc/lighttpd/traffic-shaping.txt
! 270: ##
! 271: ## Values are in kilobyte per second.
! 272: ##
! 273: ## Keep in mind that a limit below 32kB/s might actually limit the
! 274: ## traffic to 32kB/s. This is caused by the size of the TCP send
! 275: ## buffer.
! 276: ##
! 277: ## per server:
! 278: ##
! 279: #server.kbytes-per-second = 128
! 280:
! 281: ##
! 282: ## per connection:
! 283: ##
! 284: #connection.kbytes-per-second = 32
! 285:
! 286: ##
! 287: #######################################################################
! 288:
! 289: #######################################################################
! 290: ##
! 291: ## Filename/File handling
! 292: ## ------------------------
! 293:
! 294: ##
! 295: ## files to check for if .../ is requested
! 296: ## index-file.names = ( "index.php", "index.rb", "index.html",
! 297: ## "index.htm", "default.htm" )
! 298: ##
! 299: index-file.names += (
! 300: "index.xhtml", "index.html", "index.htm", "default.htm", "index.php"
! 301: )
! 302:
! 303: ##
! 304: ## deny access the file-extensions
! 305: ##
! 306: ## ~ is for backupfiles from vi, emacs, joe, ...
! 307: ## .inc is often used for code includes which should in general not be part
! 308: ## of the document-root
! 309: url.access-deny = ( "~", ".inc" )
! 310:
! 311: ##
! 312: ## disable range requests for pdf files
! 313: ## workaround for a bug in the Acrobat Reader plugin.
! 314: ##
! 315: $HTTP["url"] =~ "\.pdf$" {
! 316: server.range-requests = "disable"
! 317: }
! 318:
! 319: ##
! 320: ## url handling modules (rewrite, redirect)
! 321: ##
! 322: #url.rewrite = ( "^/$" => "/server-status" )
! 323: #url.redirect = ( "^/wishlist/(.+)" => "http://www.example.com/$1" )
! 324:
! 325: ##
! 326: ## both rewrite/redirect support back reference to regex conditional using %n
! 327: ##
! 328: #$HTTP["host"] =~ "^www\.(.*)" {
! 329: # url.redirect = ( "^/(.*)" => "http://%1/$1" )
! 330: #}
! 331:
! 332: ##
! 333: ## which extensions should not be handle via static-file transfer
! 334: ##
! 335: ## .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
! 336: ##
! 337: static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".scgi" )
! 338:
! 339: ##
! 340: ## error-handler for status 404
! 341: ##
! 342: #server.error-handler-404 = "/error-handler.html"
! 343: #server.error-handler-404 = "/error-handler.php"
! 344:
! 345: ##
! 346: ## Format: <errorfile-prefix><status-code>.html
! 347: ## -> ..../status-404.html for 'File not found'
! 348: ##
! 349: #server.errorfile-prefix = "/srv/www/htdocs/errors/status-"
! 350:
! 351: ##
! 352: ## mimetype mapping
! 353: ##
! 354: include "conf.d/mime.conf"
! 355:
! 356: ##
! 357: ## directory listing configuration
! 358: ##
! 359: include "conf.d/dirlisting.conf"
! 360:
! 361: ##
! 362: ## Should lighttpd follow symlinks?
! 363: ##
! 364: server.follow-symlink = "enable"
! 365:
! 366: ##
! 367: ## force all filenames to be lowercase?
! 368: ##
! 369: #server.force-lowercase-filenames = "disable"
! 370:
! 371: ##
! 372: ## defaults to /var/tmp as we assume it is a local harddisk
! 373: ##
! 374: server.upload-dirs = ( "/var/tmp" )
! 375:
! 376: ##
! 377: #######################################################################
! 378:
! 379:
! 380: #######################################################################
! 381: ##
! 382: ## SSL Support
! 383: ## -------------
! 384: ##
! 385: ## To enable SSL for the whole server you have to provide a valid
! 386: ## certificate and have to enable the SSL engine.::
! 387: ##
! 388: ## ssl.engine = "enable"
! 389: ## ssl.pemfile = "/path/to/server.pem"
! 390: ##
! 391: ## The HTTPS protocol does not allow you to use name-based virtual
! 392: ## hosting with SSL. If you want to run multiple SSL servers with
! 393: ## one lighttpd instance you must use IP-based virtual hosting: ::
! 394: ##
! 395: ## Mitigate CVE-2009-3555 by disabling client triggered renegotation
! 396: ## This is enabled by default.
! 397: ##
! 398: ## IMPORTANT: this setting can only be used in the global scope.
! 399: ## It does *not* work inside conditionals
! 400: ##
! 401: # ssl.disable-client-renegotiation = "enable"
! 402: ##
! 403: ## $SERVER["socket"] == "10.0.0.1:443" {
! 404: ## ssl.engine = "enable"
! 405: ## ssl.pemfile = "/etc/ssl/private/www.example.com.pem"
! 406: ## #
! 407: ## # Mitigate BEAST attack:
! 408: ## #
! 409: ## # A stricter base cipher suite. For details see:
! 410: ## # http://blog.ivanristic.com/2011/10/mitigating-the-beast-attack-on-tls.html
! 411: ## #
! 412: ## ssl.cipher-list = "ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM"
! 413: ## #
! 414: ## # Make the server prefer the order of the server side cipher suite instead of the client suite.
! 415: ## # This is necessary to mitigate the BEAST attack (unless you disable all non RC4 algorithms).
! 416: ## # This option is enabled by default, but only used if ssl.cipher-list is set.
! 417: ## #
! 418: ## # ssl.honor-cipher-order = "enable"
! 419: ## #
! 420: ## server.name = "www.example.com"
! 421: ##
! 422: ## server.document-root = "/srv/www/vhosts/example.com/www/"
! 423: ## }
! 424: ##
! 425:
! 426: ## If you have a .crt and a .key file, cat them together into a
! 427: ## single PEM file:
! 428: ## $ cat /etc/ssl/private/lighttpd.key /etc/ssl/certs/lighttpd.crt \
! 429: ## > /etc/ssl/private/lighttpd.pem
! 430: ##
! 431: #ssl.pemfile = "/etc/ssl/private/lighttpd.pem"
! 432:
! 433: ##
! 434: ## optionally pass the CA certificate here.
! 435: ##
! 436: ##
! 437: #ssl.ca-file = ""
! 438:
! 439: ##
! 440: #######################################################################
! 441:
! 442: #######################################################################
! 443: ##
! 444: ## custom includes like vhosts.
! 445: ##
! 446: #include "conf.d/config.conf"
! 447: #include_shell "cat /usr/local/etc/lighttpd/vhosts.d/*.conf"
! 448: ##
! 449: #######################################################################
! 450:
! 451: # IPv4 listening socket
! 452: $SERVER["socket"] == "0.0.0.0:80" { }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>