summaryrefslogtreecommitdiff
path: root/package/lighttpd
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2011-03-01 19:51:32 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2011-03-01 19:51:32 +0100
commitb56c73c95f08099803c60d9e2f2584f231220d47 (patch)
tree704b5c66e0d233af904afdfa00e1dd9c2205d02d /package/lighttpd
parent09381f08db60bd52ab7135bd084fa2bb197a98c2 (diff)
misc patches needed for allmodconfig for ibm-x40-eglibc on Darwin OS
* fix *.pc / *-config file handling.
Diffstat (limited to 'package/lighttpd')
-rw-r--r--package/lighttpd/Makefile23
-rw-r--r--package/lighttpd/files/lighttpd.conf593
-rw-r--r--package/lighttpd/files/lighttpd.conffiles2
-rw-r--r--package/lighttpd/files/lighttpd.postinst2
4 files changed, 415 insertions, 205 deletions
diff --git a/package/lighttpd/Makefile b/package/lighttpd/Makefile
index 922297112..351797045 100644
--- a/package/lighttpd/Makefile
+++ b/package/lighttpd/Makefile
@@ -4,12 +4,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:= lighttpd
-PKG_VERSION:= 1.4.25
+PKG_VERSION:= 1.4.28
PKG_RELEASE:= 1
-PKG_MD5SUM:= 87e936ec272ddaba8a2fdfecd8c6b704
+PKG_MD5SUM:= 202d36efc6324adb95a3600d2826ec6a
PKG_DESCR:= a lightweight web server
PKG_SECTION:= www
-PKG_DEPENDS:= libxml2 libsqlite libpcre libopenssl
+PKG_DEPENDS:= libpcre libxml2 libsqlite libopenssl
PKG_BUILDDEP:= pcre libxml2 sqlite openssl
PKG_URL:= http://www.lighttpd.net/
PKG_SITES:= http://download.lighttpd.net/lighttpd/releases-1.4.x/
@@ -70,8 +70,7 @@ $(eval $(call PKG_mod_template,LIGHTTPD_MOD_WEBDAV,webdav))
TARGET_CPPFLAGS+= -I$(STAGING_TARGET_DIR)/usr/include/libxml2
CONFIGURE_ENV+= PCRE_LIB="-lpcre"
-CONFIGURE_ARGS+= \
- --libdir=/usr/lib/lighttpd \
+CONFIGURE_ARGS+= --libdir=/usr/lib/lighttpd \
--sysconfdir=/etc/lighttpd \
--without-attr \
--without-bzip2 \
@@ -81,19 +80,21 @@ CONFIGURE_ARGS+= \
--without-lua \
--without-memcache \
--without-mysql \
- --with-pcre \
--without-valgrind \
+ --with-pcre \
--with-webdav-props \
--with-openssl='${STAGING_TARGET_DIR}/usr'
post-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m}
- install -m0755 -d $(IDIR_LIGHTTPD)/etc
- install -m0644 ./files/lighttpd.conf $(IDIR_LIGHTTPD)/etc/
- install -m0755 -d $(IDIR_LIGHTTPD)/usr/lib/lighttpd
+ ${INSTALL_DIR} $(IDIR_LIGHTTPD)/etc/lighttpd/conf.d
+ ${INSTALL_DATA} ./files/lighttpd.conf $(IDIR_LIGHTTPD)/etc/lighttpd
+ ${CP} ${WRKBUILD}/doc/config/conf.d/*.conf \
+ $(IDIR_LIGHTTPD)/etc/lighttpd/conf.d
+ ${INSTALL_DIR} $(IDIR_LIGHTTPD)/usr/lib/lighttpd
for m in dirlisting indexfile staticfile; do \
$(CP) $(WRKINST)/usr/lib/lighttpd/mod_$$m.so $(IDIR_LIGHTTPD)/usr/lib/lighttpd/ ; \
done
- install -m0755 -d $(IDIR_LIGHTTPD)/usr/sbin
- $(CP) $(WRKINST)/usr/sbin/lighttpd $(IDIR_LIGHTTPD)/usr/sbin/
+ ${INSTALL_DIR} $(IDIR_LIGHTTPD)/usr/sbin
+ $(INSTALL_BIN) $(WRKINST)/usr/sbin/lighttpd $(IDIR_LIGHTTPD)/usr/sbin
include ${TOPDIR}/mk/pkg-bottom.mk
diff --git a/package/lighttpd/files/lighttpd.conf b/package/lighttpd/files/lighttpd.conf
index b97b39120..efe96be4f 100644
--- a/package/lighttpd/files/lighttpd.conf
+++ b/package/lighttpd/files/lighttpd.conf
@@ -1,217 +1,426 @@
-# lighttpd configuration file
-#
-## modules to load
-# all other module should only be loaded if really neccesary
-# - saves some time
-# - saves memory
-#server.modules = (
-# "mod_rewrite",
-# "mod_redirect",
-# "mod_alias",
-# "mod_auth",
-# "mod_status",
-# "mod_setenv",
-# "mod_fastcgi",
-# "mod_proxy",
-# "mod_simple_vhost",
-# "mod_cgi",
-# "mod_ssi",
-# "mod_usertrack",
-# "mod_expire"
-#)
-
-## a static document-root, for virtual-hosting take look at the
-## server.virtual-* options
-server.document-root = "/tmp/"
-
-## where to send error-messages to
-#server.errorlog = "/var/log/lighttpd/error.log"
+#######################################################################
+##
+## /etc/lighttpd/lighttpd.conf
+##
+## check /etc/lighttpd/conf.d/*.conf for the configuration of modules.
+##
+#######################################################################
-## files to check for if .../ is requested
-index-file.names = ( "index.html", "default.html", "index.htm", "default.htm" )
+#######################################################################
+##
+## Some Variable definition which will make chrooting easier.
+##
+## if you add a variable here. Add the corresponding variable in the
+## chroot example aswell.
+##
+var.log_root = "/var/log/lighttpd"
+var.server_root = "/srv/www"
+var.state_dir = "/var/run"
+var.home_dir = "/var/lib/lighttpd"
+var.conf_dir = "/etc/lighttpd"
-## mimetype mapping
-mimetype.assign = (
- ".pdf" => "application/pdf",
- ".class" => "application/octet-stream",
- ".pac" => "application/x-ns-proxy-autoconfig",
- ".swf" => "application/x-shockwave-flash",
- ".wav" => "audio/x-wav",
- ".gif" => "image/gif",
- ".jpg" => "image/jpeg",
- ".jpeg" => "image/jpeg",
- ".png" => "image/png",
- ".css" => "text/css",
- ".html" => "text/html",
- ".htm" => "text/html",
- ".js" => "text/javascript",
- ".txt" => "text/plain",
- ".dtd" => "text/xml",
- ".xml" => "text/xml"
- )
-
-## Use the "Content-Type" extended attribute to obtain mime type if possible
-#mimetypes.use-xattr = "enable"
-
-## send a different Server: header
-## be nice and keep it at lighttpd
-#server.tag = "lighttpd"
+##
+## run the server chrooted.
+##
+## This requires root permissions during startup.
+##
+## If you run Chrooted set the the variables to directories relative to
+## the chroot dir.
+##
+## example chroot configuration:
+##
+#var.log_root = "/logs"
+#var.server_root = "/"
+#var.state_dir = "/run"
+#var.home_dir = "/lib/lighttpd"
+#var.vhosts_dir = "/vhosts"
+#var.conf_dir = "/etc"
+#
+#server.chroot = "/srv/www"
-$HTTP["url"] =~ "\.pdf$" {
- server.range-requests = "disable"
-}
+##
+## Some additional variables to make the configuration easier
+##
##
-# which extensions should not be handle via static-file transfer
-#
-# .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
-static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
+## Base directory for all virtual hosts
+##
+## used in:
+## conf.d/evhost.conf
+## conf.d/simple_vhost.conf
+## vhosts.d/vhosts.template
+##
+var.vhosts_dir = server_root + "/vhosts"
-######### Options that are good to be but not neccesary to be changed #######
+##
+## Cache for mod_compress
+##
+## used in:
+## conf.d/compress.conf
+##
+var.cache_dir = "/var/cache/lighttpd"
-## bind to port (default: 80)
-#server.port = 81
+##
+## Base directory for sockets.
+##
+## used in:
+## conf.d/fastcgi.conf
+## conf.d/scgi.conf
+##
+var.socket_dir = home_dir + "/sockets"
+
+##
+#######################################################################
+
+#######################################################################
+##
+## Load the modules.
+include "modules.conf"
+
+##
+#######################################################################
+
+#######################################################################
+##
+## Basic Configuration
+## ---------------------
+##
+server.port = 80
-## bind to localhost (default: all interfaces)
+##
+## Use IPv6?
+##
+server.use-ipv6 = "enable"
+
+##
+## bind to a specific IP
+##
#server.bind = "localhost"
-## error-handler for status 404
-#server.error-handler-404 = "/error-handler.html"
-#server.error-handler-404 = "/error-handler.php"
+##
+## Run as a different username/groupname.
+## This requires root permissions during startup.
+##
+server.username = "lighttpd"
+server.groupname = "lighttpd"
+
+##
+## enable core files.
+##
+#server.core-files = "disable"
+
+##
+## Document root
+##
+server.document-root = server_root + "/htdocs"
-## to help the rc.scripts
-server.pid-file = "/var/run/lighttpd.pid"
+##
+## The value for the "Server:" response field.
+##
+## It would be nice to keep it at "lighttpd".
+##
+#server.tag = "lighttpd"
+##
+## store a pid file
+##
+server.pid-file = state_dir + "/lighttpd.pid"
+
+##
+#######################################################################
-###### virtual hosts
+#######################################################################
##
-## If you want name-based virtual hosting add the next three settings and load
-## mod_simple_vhost
+## Logging Options
+## ------------------
##
-## document-root =
-## virtual-server-root + virtual-server-default-host + virtual-server-docroot or
-## virtual-server-root + http-host + virtual-server-docroot
+## all logging options can be overwritten per vhost.
##
-#simple-vhost.server-root = "/home/weigon/wwwroot/servers/"
-#simple-vhost.default-host = "grisu.home.kneschke.de"
-#simple-vhost.document-root = "/pages/"
+## Path to the error log file
+##
+server.errorlog = log_root + "/error.log"
+##
+## If you want to log to syslog you have to unset the
+## server.errorlog setting and uncomment the next line.
+##
+#server.errorlog-use-syslog = "enable"
+##
+## Access log config
##
-## Format: <errorfile-prefix><status>.html
-## -> ..../status-404.html for 'File not found'
-#server.errorfile-prefix = "/www/error-"
+include "conf.d/access_log.conf"
-## virtual directory listings
-#server.dir-listing = "enable"
+##
+## The debug options are moved into their own file.
+## see conf.d/debug.conf for various options for request debugging.
+##
+include "conf.d/debug.conf"
-## send unhandled HTTP-header headers to error-log
-#debug.dump-unknown-headers = "enable"
+##
+#######################################################################
-### only root can use these options
-#
-# chroot() to directory (default: no chroot() )
-#server.chroot = "/"
-
-## change uid to <uid> (default: don't care)
-#server.username = "nobody"
-
-## change uid to <uid> (default: don't care)
-#server.groupname = "nobody"
-
-#### compress module
-#compress.cache-dir = "/dev/null/"
-#compress.filetype = ("text/plain", "text/html")
-
-#### proxy module
-## read proxy.txt for more info
-#proxy.server = (
-# ".php" => (
-# "localhost" => (
-# "host" => "192.168.0.101",
-# "port" => 80
-# )
-# )
-#)
-
-#### fastcgi module
-## read fastcgi.txt for more info
-#fastcgi.server = (
-# ".php" => (
-# "localhost" => (
-# "socket" => "/tmp/php-fastcgi.socket",
-# "bin-path" => "/usr/local/bin/php"
-# )
-# )
-#)
-
-#### CGI module
-#cgi.assign = ( ".pl" => "/usr/bin/perl", ".cgi" => "/usr/bin/perl" )
-
-#### SSL engine
-#ssl.engine = "enable"
-#ssl.pemfile = "server.pem"
-
-#### status module
-#status.status-url = "/server-status"
-#status.config-url = "/server-config"
-
-#### auth module
-## read authentification.txt for more info
-#auth.backend = "plain"
-#auth.backend.plain.userfile = "lighttpd.user"
-#auth.backend.plain.groupfile = "lighttpd.group"
-#auth.require = (
-# "/server-status" => (
-# "method" => "digest",
-# "realm" => "download archiv",
-# "require" => "group=www|user=jan|host=192.168.2.10"
-# ),
-# "/server-info" => (
-# "method" => "digest",
-# "realm" => "download archiv",
-# "require" => "group=www|user=jan|host=192.168.2.10"
-# )
-#)
-
-#### url handling modules (rewrite, redirect, access)
-#url.rewrite = ( "^/$" => "/server-status" )
-#url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )
-
-#### both rewrite/redirect support back reference to regex conditional using %n
+#######################################################################
+##
+## Tuning/Performance
+## --------------------
+##
+## corresponding documentation:
+## http://www.lighttpd.net/documentation/performance.html
+##
+## set the event-handler (read the performance section in the manual)
+##
+## possible options on linux are:
+##
+## select
+## poll
+## linux-sysepoll
+##
+## linux-sysepoll is recommended on kernel 2.6.
+##
+server.event-handler = "linux-sysepoll"
+
+##
+## The basic network interface for all platforms at the syscalls read()
+## and write(). Every modern OS provides its own syscall to help network
+## servers transfer files as fast as possible
+##
+## linux-sendfile - is recommended for small files.
+## writev - is recommended for sending many large files
+##
+server.network-backend = "linux-sendfile"
+
+##
+## As lighttpd is a single-threaded server, its main resource limit is
+## the number of file descriptors, which is set to 1024 by default (on
+## most systems).
+##
+## If you are running a high-traffic site you might want to increase this
+## limit by setting server.max-fds.
+##
+## Changing this setting requires root permissions on startup. see
+## server.username/server.groupname.
+##
+## By default lighttpd would not change the operation system default.
+## But setting it to 2048 is a better default for busy servers.
+##
+server.max-fds = 2048
+
+##
+## Stat() call caching.
+##
+## lighttpd can utilize FAM/Gamin to cache stat call.
+##
+## possible values are:
+## disable, simple or fam.
+##
+server.stat-cache-engine = "simple"
+
+##
+## Fine tuning for the request handling
+##
+## max-connections == max-fds/2 (maybe /3)
+## means the other file handles are used for fastcgi/files
+##
+server.max-connections = 1024
+
+##
+## How many seconds to keep a keep-alive connection open,
+## until we consider it idle.
+##
+## Default: 5
+##
+#server.max-keep-alive-idle = 5
+
+##
+## How many keep-alive requests until closing the connection.
+##
+## Default: 16
+##
+#server.max-keep-alive-requests = 16
+
+##
+## Maximum size of a request in kilobytes.
+## By default it is unlimited (0).
+##
+## Uploads to your server cant be larger than this value.
+##
+#server.max-request-size = 0
+
+##
+## Time to read from a socket before we consider it idle.
+##
+## Default: 60
+##
+#server.max-read-idle = 60
+
+##
+## Time to write to a socket before we consider it idle.
+##
+## Default: 360
+##
+#server.max-write-idle = 360
+
+##
+## Traffic Shaping
+## -----------------
+##
+## see /usr/share/doc/lighttpd/traffic-shaping.txt
+##
+## Values are in kilobyte per second.
+##
+## Keep in mind that a limit below 32kB/s might actually limit the
+## traffic to 32kB/s. This is caused by the size of the TCP send
+## buffer.
+##
+## per server:
+##
+#server.kbytes-per-second = 128
+
+##
+## per connection:
+##
+#connection.kbytes-per-second = 32
+
+##
+#######################################################################
+
+#######################################################################
+##
+## Filename/File handling
+## ------------------------
+
+##
+## files to check for if .../ is requested
+## index-file.names = ( "index.php", "index.rb", "index.html",
+## "index.htm", "default.htm" )
+##
+index-file.names += (
+ "index.xhtml", "index.html", "index.htm", "default.htm", "index.php"
+)
+
+##
+## deny access the file-extensions
+##
+## ~ is for backupfiles from vi, emacs, joe, ...
+## .inc is often used for code includes which should in general not be part
+## of the document-root
+url.access-deny = ( "~", ".inc" )
+
+##
+## disable range requests for pdf files
+## workaround for a bug in the Acrobat Reader plugin.
+##
+$HTTP["url"] =~ "\.pdf$" {
+ server.range-requests = "disable"
+}
+
+##
+## url handling modules (rewrite, redirect)
+##
+#url.rewrite = ( "^/$" => "/server-status" )
+#url.redirect = ( "^/wishlist/(.+)" => "http://www.example.com/$1" )
+
+##
+## both rewrite/redirect support back reference to regex conditional using %n
+##
#$HTTP["host"] =~ "^www\.(.*)" {
-# url.redirect = ( "^/(.*)" => "http://%1/$1" )
+# url.redirect = ( "^/(.*)" => "http://%1/$1" )
#}
-#### expire module
-#expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")
-
-#### ssi
-#ssi.extension = ( ".shtml" )
-
-#### setenv
-#setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
-#setenv.add-response-header = ( "X-Secret-Message" => "42" )
-
-#### variable usage:
-## variable name without "." is auto prefixed by "var." and becomes "var.bar"
-#bar = 1
-#var.mystring = "foo"
-
-## integer add
-#bar += 1
-## string concat, with integer cast as string, result: "www.foo1.com"
-#server.name = "www." + mystring + var.bar + ".com"
-## array merge
-#index-file.names = (foo + ".php") + index-file.names
-#index-file.names += (foo + ".php")
-
-#### include
-#include /etc/lighttpd/lighttpd-inc.conf
-## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf"
-#include "lighttpd-inc.conf"
-
-#### include_shell
-#include_shell "echo var.a=1"
-## the above is same as:
-#var.a=1
+##
+## which extensions should not be handle via static-file transfer
+##
+## .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
+##
+static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".scgi" )
+
+##
+## error-handler for status 404
+##
+#server.error-handler-404 = "/error-handler.html"
+#server.error-handler-404 = "/error-handler.php"
+
+##
+## Format: <errorfile-prefix><status-code>.html
+## -> ..../status-404.html for 'File not found'
+##
+#server.errorfile-prefix = "/srv/www/htdocs/errors/status-"
+
+##
+## mimetype mapping
+##
+include "conf.d/mime.conf"
+
+##
+## directory listing configuration
+##
+include "conf.d/dirlisting.conf"
+
+##
+## Should lighttpd follow symlinks?
+##
+server.follow-symlink = "enable"
+
+##
+## force all filenames to be lowercase?
+##
+#server.force-lowercase-filenames = "disable"
+
+##
+## defaults to /var/tmp as we assume it is a local harddisk
+##
+server.upload-dirs = ( "/var/tmp" )
+
+##
+#######################################################################
+
+
+#######################################################################
+##
+## SSL Support
+## -------------
+##
+## To enable SSL for the whole server you have to provide a valid
+## certificate and have to enable the SSL engine.::
+##
+## ssl.engine = "enable"
+## ssl.pemfile = "/path/to/server.pem"
+##
+## The HTTPS protocol does not allow you to use name-based virtual
+## hosting with SSL. If you want to run multiple SSL servers with
+## one lighttpd instance you must use IP-based virtual hosting: ::
+##
+## $SERVER["socket"] == "10.0.0.1:443" {
+## ssl.engine = "enable"
+## ssl.pemfile = "/etc/ssl/private/www.example.com.pem"
+## server.name = "www.example.com"
+##
+## server.document-root = "/srv/www/vhosts/example.com/www/"
+## }
+##
+
+## If you have a .crt and a .key file, cat them together into a
+## single PEM file:
+## $ cat /etc/ssl/private/lighttpd.key /etc/ssl/certs/lighttpd.crt \
+## > /etc/ssl/private/lighttpd.pem
+##
+#ssl.pemfile = "/etc/ssl/private/lighttpd.pem"
+
+##
+## optionally pass the CA certificate here.
+##
+##
+#ssl.ca-file = ""
+
+##
+#######################################################################
+
+#######################################################################
+##
+## custom includes like vhosts.
+##
+#include "conf.d/config.conf"
+#include_shell "cat /etc/lighttpd/vhosts.d/*.conf"
+##
+#######################################################################
diff --git a/package/lighttpd/files/lighttpd.conffiles b/package/lighttpd/files/lighttpd.conffiles
index e90f8e19d..29b503c6c 100644
--- a/package/lighttpd/files/lighttpd.conffiles
+++ b/package/lighttpd/files/lighttpd.conffiles
@@ -1 +1 @@
-/etc/lighttpd.conf
+/etc/lighttpd/lighttpd.conf
diff --git a/package/lighttpd/files/lighttpd.postinst b/package/lighttpd/files/lighttpd.postinst
index dbf355c4b..e77dadeee 100644
--- a/package/lighttpd/files/lighttpd.postinst
+++ b/package/lighttpd/files/lighttpd.postinst
@@ -1,4 +1,4 @@
#!/bin/sh
. $IPKG_INSTROOT/etc/functions.sh
add_rcconf lighttpd lighttpd NO
-add_rcconf lighttpd_flags lighttpd_flags "-f /etc/lighttpd.conf"
+add_rcconf lighttpd_flags lighttpd_flags "-f /etc/lighttpd/lighttpd.conf"