Lighttpd 1.4.42 added.
This commit is contained in:
parent
80f06b6f34
commit
eee0c8b15a
|
@ -0,0 +1 @@
|
||||||
|
DIST lighttpd-1.4.42.tar.xz 652140 SHA256 b2c9069ed0bade9362c27b469a9b884641786aea1c3d686f9fd9f01d15e2a15f SHA512 eb43a53f1fe7a115d0cf60ed8b79a22472a4fef939937401a475bdfd7244e53efa3aae1f66cd709989e77064aadd40004455b167ea3c4efc07ced261c18bd773 WHIRLPOOL 2886d02c477ffe4a36a4d33656c69c34df65b563e6ee81dad7be957ab472197fb91087e1e494b23f4e83a35939f102494140d34737fd280692503e54b3676fe7
|
|
@ -0,0 +1,330 @@
|
||||||
|
###############################################################################
|
||||||
|
# Default lighttpd.conf for Gentoo.
|
||||||
|
# $Id$
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
# {{{ variables
|
||||||
|
var.basedir = "/var/www/localhost"
|
||||||
|
var.logdir = "/var/log/lighttpd"
|
||||||
|
var.statedir = "/var/lib/lighttpd"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ modules
|
||||||
|
# At the very least, mod_access and mod_accesslog should be enabled.
|
||||||
|
# All other modules should only be loaded if necessary.
|
||||||
|
# NOTE: the order of modules is important.
|
||||||
|
server.modules = (
|
||||||
|
# "mod_rewrite",
|
||||||
|
# "mod_redirect",
|
||||||
|
# "mod_alias",
|
||||||
|
"mod_access",
|
||||||
|
# "mod_cml",
|
||||||
|
# "mod_trigger_b4_dl",
|
||||||
|
# "mod_auth",
|
||||||
|
# "mod_status",
|
||||||
|
# "mod_setenv",
|
||||||
|
# "mod_proxy",
|
||||||
|
# "mod_simple_vhost",
|
||||||
|
# "mod_evhost",
|
||||||
|
# "mod_userdir",
|
||||||
|
# "mod_compress",
|
||||||
|
# "mod_ssi",
|
||||||
|
# "mod_usertrack",
|
||||||
|
# "mod_expire",
|
||||||
|
# "mod_secdownload",
|
||||||
|
# "mod_rrdtool",
|
||||||
|
# "mod_webdav",
|
||||||
|
"mod_accesslog"
|
||||||
|
)
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ includes
|
||||||
|
include "mime-types.conf"
|
||||||
|
# fcgi and cgi are included below
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ server settings
|
||||||
|
server.username = "lighttpd"
|
||||||
|
server.groupname = "lighttpd"
|
||||||
|
|
||||||
|
server.document-root = var.basedir + "/htdocs"
|
||||||
|
server.pid-file = "/var/run/lighttpd.pid"
|
||||||
|
|
||||||
|
server.errorlog = var.logdir + "/error.log"
|
||||||
|
# log errors to syslog instead
|
||||||
|
# server.errorlog-use-syslog = "enable"
|
||||||
|
|
||||||
|
server.indexfiles = ("index.php", "index.html",
|
||||||
|
"index.htm", "default.htm")
|
||||||
|
|
||||||
|
# server.tag = "lighttpd"
|
||||||
|
|
||||||
|
server.follow-symlink = "enable"
|
||||||
|
|
||||||
|
# event handler (defaults to "poll")
|
||||||
|
# see performance.txt
|
||||||
|
#
|
||||||
|
# for >= linux-2.4
|
||||||
|
# server.event-handler = "linux-rtsig"
|
||||||
|
# for >= linux-2.6
|
||||||
|
# server.event-handler = "linux-sysepoll"
|
||||||
|
# for FreeBSD
|
||||||
|
# server.event-handler = "freebsd-kqueue"
|
||||||
|
|
||||||
|
# chroot to directory (defaults to no chroot)
|
||||||
|
# server.chroot = "/"
|
||||||
|
|
||||||
|
# bind to port (defaults to 80)
|
||||||
|
# server.port = 81
|
||||||
|
|
||||||
|
# bind to name (defaults to all interfaces)
|
||||||
|
# server.bind = "grisu.home.kneschke.de"
|
||||||
|
|
||||||
|
# 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 = var.basedir + "/error/status-"
|
||||||
|
|
||||||
|
# FAM support for caching stat() calls
|
||||||
|
# requires that lighttpd be built with USE=fam
|
||||||
|
# server.stat-cache-engine = "fam"
|
||||||
|
|
||||||
|
# If lighttpd was build with IPv6 support, and you would like to listen on IPv6,
|
||||||
|
# uncomment the following:
|
||||||
|
# server.use-ipv6 = "enable"
|
||||||
|
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_staticfile
|
||||||
|
|
||||||
|
# which extensions should not be handled via static-file transfer
|
||||||
|
# (extensions that are usually handled by mod_cgi, mod_fastcgi, etc).
|
||||||
|
static-file.exclude-extensions = (".php", ".pl", ".cgi", ".fcgi")
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_accesslog
|
||||||
|
accesslog.filename = var.logdir + "/access.log"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_dirlisting
|
||||||
|
# enable directory listings
|
||||||
|
# dir-listing.activate = "enable"
|
||||||
|
#
|
||||||
|
# don't list hidden files/directories
|
||||||
|
# dir-listing.hide-dotfiles = "enable"
|
||||||
|
#
|
||||||
|
# use a different css for directory listings
|
||||||
|
# dir-listing.external-css = "/path/to/dir-listing.css"
|
||||||
|
#
|
||||||
|
# list of regular expressions. files that match any of the
|
||||||
|
# specified regular expressions will be excluded from directory
|
||||||
|
# listings.
|
||||||
|
# dir-listing.exclude = ("^\.", "~$")
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_access
|
||||||
|
# see access.txt
|
||||||
|
|
||||||
|
url.access-deny = ("~", ".inc")
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_userdir
|
||||||
|
# see userdir.txt
|
||||||
|
#
|
||||||
|
# userdir.path = "public_html"
|
||||||
|
# userdir.exclude-user = ("root")
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_ssi
|
||||||
|
# see ssi.txt
|
||||||
|
#
|
||||||
|
# ssi.extension = (".shtml")
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_ssl
|
||||||
|
# see ssl.txt
|
||||||
|
#
|
||||||
|
# ssl.engine = "enable"
|
||||||
|
# ssl.pemfile = "server.pem"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_status
|
||||||
|
# see status.txt
|
||||||
|
#
|
||||||
|
# status.status-url = "/server-status"
|
||||||
|
# status.config-url = "/server-config"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_simple_vhost
|
||||||
|
# see simple-vhost.txt
|
||||||
|
#
|
||||||
|
# If you want name-based virtual hosting add the next three settings and load
|
||||||
|
# mod_simple_vhost
|
||||||
|
#
|
||||||
|
# document-root =
|
||||||
|
# virtual-server-root + virtual-server-default-host + virtual-server-docroot
|
||||||
|
# or
|
||||||
|
# virtual-server-root + http-host + virtual-server-docroot
|
||||||
|
#
|
||||||
|
# simple-vhost.server-root = "/home/weigon/wwwroot/servers/"
|
||||||
|
# simple-vhost.default-host = "grisu.home.kneschke.de"
|
||||||
|
# simple-vhost.document-root = "/pages/"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_compress
|
||||||
|
# see compress.txt
|
||||||
|
#
|
||||||
|
# compress.cache-dir = var.statedir + "/cache/compress"
|
||||||
|
# compress.filetype = ("text/plain", "text/html")
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_proxy
|
||||||
|
# see proxy.txt
|
||||||
|
#
|
||||||
|
# proxy.server = ( ".php" =>
|
||||||
|
# ( "localhost" =>
|
||||||
|
# (
|
||||||
|
# "host" => "192.168.0.101",
|
||||||
|
# "port" => 80
|
||||||
|
# )
|
||||||
|
# )
|
||||||
|
# )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_auth
|
||||||
|
# see authentication.txt
|
||||||
|
#
|
||||||
|
# auth.backend = "plain"
|
||||||
|
# auth.backend.plain.userfile = "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" => "user=jan"
|
||||||
|
# ),
|
||||||
|
# "/server-info" =>
|
||||||
|
# (
|
||||||
|
# "method" => "digest",
|
||||||
|
# "realm" => "download archiv",
|
||||||
|
# "require" => "valid-user"
|
||||||
|
# )
|
||||||
|
# )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_rewrite
|
||||||
|
# see rewrite.txt
|
||||||
|
#
|
||||||
|
# url.rewrite = (
|
||||||
|
# "^/$" => "/server-status"
|
||||||
|
# )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_redirect
|
||||||
|
# see redirect.txt
|
||||||
|
#
|
||||||
|
# url.redirect = (
|
||||||
|
# "^/wishlist/(.+)" => "http://www.123.org/$1"
|
||||||
|
# )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_evhost
|
||||||
|
# define a pattern for the host url finding
|
||||||
|
# %% => % sign
|
||||||
|
# %0 => domain name + tld
|
||||||
|
# %1 => tld
|
||||||
|
# %2 => domain name without tld
|
||||||
|
# %3 => subdomain 1 name
|
||||||
|
# %4 => subdomain 2 name
|
||||||
|
#
|
||||||
|
# evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_expire
|
||||||
|
# expire.url = (
|
||||||
|
# "/buggy/" => "access 2 hours",
|
||||||
|
# "/asdhas/" => "access plus 1 seconds 2 minutes"
|
||||||
|
# )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_rrdtool
|
||||||
|
# see rrdtool.txt
|
||||||
|
#
|
||||||
|
# rrdtool.binary = "/usr/bin/rrdtool"
|
||||||
|
# rrdtool.db-name = var.statedir + "/lighttpd.rrd"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_setenv
|
||||||
|
# see setenv.txt
|
||||||
|
#
|
||||||
|
# setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" )
|
||||||
|
# setenv.add-response-header = ( "X-Secret-Message" => "42" )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_trigger_b4_dl
|
||||||
|
# see trigger_b4_dl.txt
|
||||||
|
#
|
||||||
|
# trigger-before-download.gdbm-filename = "/home/weigon/testbase/trigger.db"
|
||||||
|
# trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" )
|
||||||
|
# trigger-before-download.trigger-url = "^/trigger/"
|
||||||
|
# trigger-before-download.download-url = "^/download/"
|
||||||
|
# trigger-before-download.deny-url = "http://127.0.0.1/index.html"
|
||||||
|
# trigger-before-download.trigger-timeout = 10
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_cml
|
||||||
|
# see cml.txt
|
||||||
|
#
|
||||||
|
# don't forget to add index.cml to server.indexfiles
|
||||||
|
# cml.extension = ".cml"
|
||||||
|
# cml.memcache-hosts = ( "127.0.0.1:11211" )
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ mod_webdav
|
||||||
|
# see webdav.txt
|
||||||
|
#
|
||||||
|
# $HTTP["url"] =~ "^/dav($|/)" {
|
||||||
|
# webdav.activate = "enable"
|
||||||
|
# webdav.is-readonly = "enable"
|
||||||
|
# }
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ extra rules
|
||||||
|
#
|
||||||
|
# set Content-Encoding and reset Content-Type for browsers that
|
||||||
|
# support decompressing on-thy-fly (requires mod_setenv)
|
||||||
|
# $HTTP["url"] =~ "\.gz$" {
|
||||||
|
# setenv.add-response-header = ("Content-Encoding" => "x-gzip")
|
||||||
|
# mimetype.assign = (".gz" => "text/plain")
|
||||||
|
# }
|
||||||
|
|
||||||
|
# $HTTP["url"] =~ "\.bz2$" {
|
||||||
|
# setenv.add-response-header = ("Content-Encoding" => "x-bzip2")
|
||||||
|
# mimetype.assign = (".bz2" => "text/plain")
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ debug
|
||||||
|
# debug.log-request-header = "enable"
|
||||||
|
# debug.log-response-header = "enable"
|
||||||
|
# debug.log-request-handling = "enable"
|
||||||
|
# debug.log-file-not-found = "enable"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# {{{ cgi includes
|
||||||
|
# uncomment for cgi support
|
||||||
|
# include "mod_cgi.conf"
|
||||||
|
# uncomment for php/fastcgi support
|
||||||
|
# include "mod_fastcgi.conf"
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# vim: set ft=conf foldmethod=marker et :
|
|
@ -0,0 +1,79 @@
|
||||||
|
###############################################################################
|
||||||
|
# Default mime-types.conf for Gentoo.
|
||||||
|
# include'd from lighttpd.conf.
|
||||||
|
# $Id$
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
# {{{ mime types
|
||||||
|
mimetype.assign = (
|
||||||
|
".svg" => "image/svg+xml",
|
||||||
|
".svgz" => "image/svg+xml",
|
||||||
|
".pdf" => "application/pdf",
|
||||||
|
".sig" => "application/pgp-signature",
|
||||||
|
".spl" => "application/futuresplash",
|
||||||
|
".class" => "application/octet-stream",
|
||||||
|
".ps" => "application/postscript",
|
||||||
|
".torrent" => "application/x-bittorrent",
|
||||||
|
".dvi" => "application/x-dvi",
|
||||||
|
".gz" => "application/x-gzip",
|
||||||
|
".pac" => "application/x-ns-proxy-autoconfig",
|
||||||
|
".swf" => "application/x-shockwave-flash",
|
||||||
|
".tar.gz" => "application/x-tgz",
|
||||||
|
".tgz" => "application/x-tgz",
|
||||||
|
".tar" => "application/x-tar",
|
||||||
|
".zip" => "application/zip",
|
||||||
|
".dmg" => "application/x-apple-diskimage",
|
||||||
|
".mp3" => "audio/mpeg",
|
||||||
|
".m3u" => "audio/x-mpegurl",
|
||||||
|
".wma" => "audio/x-ms-wma",
|
||||||
|
".wax" => "audio/x-ms-wax",
|
||||||
|
".ogg" => "application/ogg",
|
||||||
|
".wav" => "audio/x-wav",
|
||||||
|
".gif" => "image/gif",
|
||||||
|
".jpg" => "image/jpeg",
|
||||||
|
".jpeg" => "image/jpeg",
|
||||||
|
".png" => "image/png",
|
||||||
|
".xbm" => "image/x-xbitmap",
|
||||||
|
".xpm" => "image/x-xpixmap",
|
||||||
|
".xwd" => "image/x-xwindowdump",
|
||||||
|
".css" => "text/css",
|
||||||
|
".html" => "text/html",
|
||||||
|
".htm" => "text/html",
|
||||||
|
".js" => "text/javascript",
|
||||||
|
".asc" => "text/plain",
|
||||||
|
".c" => "text/plain",
|
||||||
|
".h" => "text/plain",
|
||||||
|
".cc" => "text/plain",
|
||||||
|
".cpp" => "text/plain",
|
||||||
|
".hh" => "text/plain",
|
||||||
|
".hpp" => "text/plain",
|
||||||
|
".conf" => "text/plain",
|
||||||
|
".log" => "text/plain",
|
||||||
|
".text" => "text/plain",
|
||||||
|
".txt" => "text/plain",
|
||||||
|
".diff" => "text/plain",
|
||||||
|
".patch" => "text/plain",
|
||||||
|
".ebuild" => "text/plain",
|
||||||
|
".eclass" => "text/plain",
|
||||||
|
".rtf" => "application/rtf",
|
||||||
|
".bmp" => "image/bmp",
|
||||||
|
".tif" => "image/tiff",
|
||||||
|
".tiff" => "image/tiff",
|
||||||
|
".ico" => "image/x-icon",
|
||||||
|
".dtd" => "text/xml",
|
||||||
|
".xml" => "text/xml",
|
||||||
|
".mpeg" => "video/mpeg",
|
||||||
|
".mpg" => "video/mpeg",
|
||||||
|
".mov" => "video/quicktime",
|
||||||
|
".qt" => "video/quicktime",
|
||||||
|
".avi" => "video/x-msvideo",
|
||||||
|
".asf" => "video/x-ms-asf",
|
||||||
|
".asx" => "video/x-ms-asf",
|
||||||
|
".wmv" => "video/x-ms-wmv",
|
||||||
|
".bz2" => "application/x-bzip",
|
||||||
|
".tbz" => "application/x-bzip-compressed-tar",
|
||||||
|
".tar.bz2" => "application/x-bzip-compressed-tar"
|
||||||
|
)
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
# vim: set ft=conf foldmethod=marker et :
|
|
@ -0,0 +1,33 @@
|
||||||
|
###############################################################################
|
||||||
|
# mod_cgi.conf
|
||||||
|
# include'd by lighttpd.conf.
|
||||||
|
# $Id$
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
#
|
||||||
|
# see cgi.txt for more information on using mod_cgi
|
||||||
|
#
|
||||||
|
|
||||||
|
server.modules += ("mod_cgi")
|
||||||
|
|
||||||
|
# NOTE: this requires mod_alias
|
||||||
|
alias.url = (
|
||||||
|
"/cgi-bin/" => var.basedir + "/cgi-bin/"
|
||||||
|
)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Note that you'll also want to enable the
|
||||||
|
# cgi-bin alias via mod_alias (above).
|
||||||
|
#
|
||||||
|
|
||||||
|
$HTTP["url"] =~ "^/cgi-bin/" {
|
||||||
|
# disable directory listings
|
||||||
|
dir-listing.activate = "disable"
|
||||||
|
# only allow cgi's in this directory
|
||||||
|
cgi.assign = (
|
||||||
|
".pl" => "/usr/bin/perl",
|
||||||
|
".cgi" => "/usr/bin/perl"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: set ft=conf foldmethod=marker et :
|
|
@ -0,0 +1,17 @@
|
||||||
|
###############################################################################
|
||||||
|
# mod_fastcgi.conf
|
||||||
|
# include'd by lighttpd.conf.
|
||||||
|
# $Id$
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
server.modules += ("mod_fastcgi")
|
||||||
|
fastcgi.server = ( ".php" =>
|
||||||
|
( "localhost" =>
|
||||||
|
(
|
||||||
|
"socket" => "/var/run/lighttpd/lighttpd-fastcgi-php-" + PID + ".socket",
|
||||||
|
"bin-path" => "/usr/bin/php-cgi"
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
# vim: set ft=conf foldmethod=marker et :
|
|
@ -0,0 +1,8 @@
|
||||||
|
# /etc/conf.d/lighttpd
|
||||||
|
|
||||||
|
# Location of a shell used by the 'include_shell' directive
|
||||||
|
# in the lighttpd's configuration file
|
||||||
|
#export SHELL="/bin/bash"
|
||||||
|
|
||||||
|
# Location of the lighttpd configuration file
|
||||||
|
LIGHTTPD_CONF="/etc/lighttpd/lighttpd.conf"
|
|
@ -0,0 +1,80 @@
|
||||||
|
#!/sbin/openrc-run
|
||||||
|
# Copyright 1999-2016 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
extra_started_commands="reload graceful"
|
||||||
|
|
||||||
|
LIGHTTPD_PID="$($(which lighttpd) -pf ${LIGHTTPD_CONF} | grep pid | cut -d '=' -f 2 | tr -d \\\" | tr -d [:space:])"
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
need net
|
||||||
|
use mysql logger spawn-fcgi ldap slapd netmount dns
|
||||||
|
after famd
|
||||||
|
after sshd
|
||||||
|
}
|
||||||
|
|
||||||
|
checkconfig() {
|
||||||
|
if [ ! -f "${LIGHTTPD_CONF}" ] ; then
|
||||||
|
ewarn "${LIGHTTPD_CONF} does not exist."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${LIGHTTPD_PID}" ] ; then
|
||||||
|
eerror "server.pid-file variable in ${LIGHTTPD_CONF}"
|
||||||
|
eerror "is not set. Please set this variable properly"
|
||||||
|
eerror "and try again"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
/usr/sbin/lighttpd -t -f ${LIGHTTPD_CONF} >/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
start() {
|
||||||
|
checkconfig || return 1
|
||||||
|
# Glean lighttpd's credentials from the configuration file
|
||||||
|
# Fixes bug 454366
|
||||||
|
LIGHTTPD_USER="$(awk '/^server.username/{s=$3};{sub("\"","",s)};END{print s}' ${LIGHTTPD_CONF})"
|
||||||
|
LIGHTTPD_GROUP="$(awk '/^server.groupname/{s=$3};{sub("\"","",s)};END{print s}' ${LIGHTTPD_CONF})"
|
||||||
|
checkpath -d -q -m 0750 -o "${LIGHTTPD_USER}":"${LIGHTTPD_GROUP}" /run/lighttpd/
|
||||||
|
|
||||||
|
ebegin "Starting lighttpd"
|
||||||
|
start-stop-daemon --start --quiet --exec /usr/sbin/lighttpd \
|
||||||
|
--pidfile "${LIGHTTPD_PID}" -- -f "${LIGHTTPD_CONF}"
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
local rv=0
|
||||||
|
ebegin "Stopping lighttpd"
|
||||||
|
start-stop-daemon --stop --quiet --pidfile "${LIGHTTPD_PID}"
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
|
|
||||||
|
reload() {
|
||||||
|
if ! service_started "${SVCNAME}" ; then
|
||||||
|
eerror "${SVCNAME} isn't running"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
checkconfig || return 1
|
||||||
|
|
||||||
|
ebegin "Re-opening lighttpd log files"
|
||||||
|
start-stop-daemon --quiet --pidfile "${LIGHTTPD_PID}" \
|
||||||
|
--signal HUP
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
|
|
||||||
|
graceful() {
|
||||||
|
if ! service_started "${SVCNAME}" ; then
|
||||||
|
eerror "${SVCNAME} isn't running"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
checkconfig || return 1
|
||||||
|
|
||||||
|
ebegin "Gracefully stopping lighttpd"
|
||||||
|
start-stop-daemon --quiet --pidfile "${LIGHTTPD_PID}" \
|
||||||
|
--signal INT
|
||||||
|
if eend $? ; then
|
||||||
|
rm -f "${LIGHTTPD_PID}"
|
||||||
|
start
|
||||||
|
fi
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
# $Id$
|
||||||
|
# lighttpd logrotate script for Gentoo
|
||||||
|
|
||||||
|
/var/log/lighttpd/*.log {
|
||||||
|
daily
|
||||||
|
missingok
|
||||||
|
copytruncate
|
||||||
|
rotate 7
|
||||||
|
compress
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
test -e /run/openrc/softlevel && /etc/init.d/lighttpd reload 1>/dev/null || true
|
||||||
|
test -e /run/systemd/system && systemctl reload lighttpd.service || true
|
||||||
|
endscript
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Lightning Fast Webserver With Light System Requirements
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf
|
||||||
|
ExecReload=/bin/kill -HUP $MAINPID
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
|
@ -0,0 +1 @@
|
||||||
|
d /var/run/lighttpd 0750 lighttpd lighttpd -
|
|
@ -0,0 +1,217 @@
|
||||||
|
# Copyright 1999-2016 Gentoo Foundation
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
EAPI="5"
|
||||||
|
inherit base autotools eutils readme.gentoo user systemd
|
||||||
|
|
||||||
|
DESCRIPTION="Lightweight high-performance web server"
|
||||||
|
HOMEPAGE="http://www.lighttpd.net/"
|
||||||
|
SRC_URI="http://download.lighttpd.net/lighttpd/releases-1.4.x/${P}.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="BSD GPL-2"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
|
||||||
|
IUSE="bzip2 doc fam gdbm ipv6 kerberos ldap libev libressl lua minimal mmap memcache mysql pcre php rrdtool selinux ssl test webdav xattr zlib"
|
||||||
|
|
||||||
|
REQUIRED_USE="kerberos? ( ssl !libressl )"
|
||||||
|
|
||||||
|
CDEPEND="
|
||||||
|
bzip2? ( app-arch/bzip2 )
|
||||||
|
fam? ( virtual/fam )
|
||||||
|
gdbm? ( sys-libs/gdbm )
|
||||||
|
ldap? ( >=net-nds/openldap-2.1.26 )
|
||||||
|
libev? ( >=dev-libs/libev-4.01 )
|
||||||
|
lua? ( >=dev-lang/lua-5.1:= )
|
||||||
|
memcache? ( dev-libs/libmemcache )
|
||||||
|
mysql? ( >=virtual/mysql-4.0 )
|
||||||
|
pcre? ( >=dev-libs/libpcre-3.1 )
|
||||||
|
php? ( dev-lang/php:*[cgi] )
|
||||||
|
rrdtool? ( net-analyzer/rrdtool )
|
||||||
|
ssl? (
|
||||||
|
!libressl? ( >=dev-libs/openssl-0.9.7:0=[kerberos?] )
|
||||||
|
libressl? ( dev-libs/libressl:= )
|
||||||
|
)
|
||||||
|
webdav? (
|
||||||
|
dev-libs/libxml2
|
||||||
|
>=dev-db/sqlite-3
|
||||||
|
sys-fs/e2fsprogs
|
||||||
|
)
|
||||||
|
xattr? ( kernel_linux? ( sys-apps/attr ) )
|
||||||
|
zlib? ( >=sys-libs/zlib-1.1 )"
|
||||||
|
|
||||||
|
DEPEND="${CDEPEND}
|
||||||
|
virtual/pkgconfig
|
||||||
|
doc? ( dev-python/docutils )
|
||||||
|
test? (
|
||||||
|
virtual/perl-Test-Harness
|
||||||
|
dev-libs/fcgi
|
||||||
|
)"
|
||||||
|
|
||||||
|
RDEPEND="${CDEPEND}
|
||||||
|
selinux? ( sec-policy/selinux-apache )
|
||||||
|
"
|
||||||
|
|
||||||
|
# update certain parts of lighttpd.conf based on conditionals
|
||||||
|
update_config() {
|
||||||
|
local config="${D}/etc/lighttpd/lighttpd.conf"
|
||||||
|
|
||||||
|
# enable php/mod_fastcgi settings
|
||||||
|
use php && { sed -i -e 's|#.*\(include.*fastcgi.*$\)|\1|' ${config} || die; }
|
||||||
|
|
||||||
|
# enable stat() caching
|
||||||
|
use fam && { sed -i -e 's|#\(.*stat-cache.*$\)|\1|' ${config} || die; }
|
||||||
|
|
||||||
|
# automatically listen on IPv6 if built with USE=ipv6. Bug #234987
|
||||||
|
use ipv6 && { sed -i -e 's|# server.use-ipv6|server.use-ipv6|' ${config} || die; }
|
||||||
|
}
|
||||||
|
|
||||||
|
# remove non-essential stuff (for USE=minimal)
|
||||||
|
remove_non_essential() {
|
||||||
|
local libdir="${D}/usr/$(get_libdir)/${PN}"
|
||||||
|
|
||||||
|
# text docs
|
||||||
|
use doc || rm -fr "${D}"/usr/share/doc/${PF}/txt
|
||||||
|
|
||||||
|
# non-essential modules
|
||||||
|
rm -f \
|
||||||
|
${libdir}/mod_{compress,evhost,expire,proxy,scgi,secdownload,simple_vhost,status,setenv,trigger*,usertrack}.*
|
||||||
|
|
||||||
|
# allow users to keep some based on USE flags
|
||||||
|
use pcre || rm -f ${libdir}/mod_{ssi,re{direct,write}}.*
|
||||||
|
use webdav || rm -f ${libdir}/mod_webdav.*
|
||||||
|
use mysql || rm -f ${libdir}/mod_mysql_vhost.*
|
||||||
|
use lua || rm -f ${libdir}/mod_{cml,magnet}.*
|
||||||
|
use rrdtool || rm -f ${libdir}/mod_rrdtool.*
|
||||||
|
use zlib || rm -f ${libdir}/mod_compress.*
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
if ! use pcre ; then
|
||||||
|
ewarn "It is highly recommended that you build ${PN}"
|
||||||
|
ewarn "with perl regular expressions support via USE=pcre."
|
||||||
|
ewarn "Otherwise you lose support for some core options such"
|
||||||
|
ewarn "as conditionals and modules such as mod_re{write,direct}"
|
||||||
|
ewarn "and mod_ssi."
|
||||||
|
fi
|
||||||
|
if use mmap; then
|
||||||
|
ewarn "You have enabled the mmap option. This option may allow"
|
||||||
|
ewarn "local users to trigger SIGBUG crashes. Use this option"
|
||||||
|
ewarn "with EXTRA care."
|
||||||
|
fi
|
||||||
|
enewgroup lighttpd
|
||||||
|
enewuser lighttpd -1 -1 /var/www/localhost/htdocs lighttpd
|
||||||
|
|
||||||
|
DOC_CONTENTS="IPv6 migration guide:\n
|
||||||
|
http://redmine.lighttpd.net/projects/lighttpd/wiki/IPv6-Config"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
base_src_prepare
|
||||||
|
#dev-python/docutils installs rst2html.py not rst2html
|
||||||
|
sed -i -e 's|\(rst2html\)|\1.py|g' doc/outdated/Makefile.am || \
|
||||||
|
die "sed doc/Makefile.am failed"
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
econf --libdir=/usr/$(get_libdir)/${PN} \
|
||||||
|
--enable-lfs \
|
||||||
|
$(use_enable ipv6) \
|
||||||
|
$(use_enable mmap) \
|
||||||
|
$(use_with bzip2) \
|
||||||
|
$(use_with fam) \
|
||||||
|
$(use_with gdbm) \
|
||||||
|
$(use_with kerberos kerberos5) \
|
||||||
|
$(use_with ldap) \
|
||||||
|
$(use_with libev) \
|
||||||
|
$(use_with lua) \
|
||||||
|
$(use_with memcache) \
|
||||||
|
$(use_with mysql) \
|
||||||
|
$(use_with pcre) \
|
||||||
|
$(use_with ssl openssl) \
|
||||||
|
$(use_with webdav webdav-props) \
|
||||||
|
$(use_with webdav webdav-locks) \
|
||||||
|
$(use_with xattr attr) \
|
||||||
|
$(use_with zlib)
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
emake
|
||||||
|
|
||||||
|
if use doc ; then
|
||||||
|
einfo "Building HTML documentation"
|
||||||
|
cd doc || die
|
||||||
|
emake html
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
if [[ ${EUID} -eq 0 ]]; then
|
||||||
|
default_src_test
|
||||||
|
else
|
||||||
|
ewarn "test skipped, please re-run as root if you wish to test ${PN}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
emake DESTDIR="${D}" install
|
||||||
|
|
||||||
|
# init script stuff
|
||||||
|
newinitd "${FILESDIR}"/lighttpd.initd lighttpd
|
||||||
|
newconfd "${FILESDIR}"/lighttpd.confd lighttpd
|
||||||
|
use fam && has_version app-admin/fam && \
|
||||||
|
{ sed -i 's/after famd/need famd/g' "${D}"/etc/init.d/lighttpd || die; }
|
||||||
|
|
||||||
|
# configs
|
||||||
|
insinto /etc/lighttpd
|
||||||
|
doins "${FILESDIR}"/conf/lighttpd.conf
|
||||||
|
doins "${FILESDIR}"/conf/mime-types.conf
|
||||||
|
doins "${FILESDIR}"/conf/mod_cgi.conf
|
||||||
|
doins "${FILESDIR}"/conf/mod_fastcgi.conf
|
||||||
|
|
||||||
|
# update lighttpd.conf directives based on conditionals
|
||||||
|
update_config
|
||||||
|
|
||||||
|
# docs
|
||||||
|
dodoc AUTHORS README NEWS doc/scripts/*.sh
|
||||||
|
newdoc doc/config//lighttpd.conf lighttpd.conf.distrib
|
||||||
|
use ipv6 && readme.gentoo_create_doc
|
||||||
|
|
||||||
|
use doc && dohtml -r doc/*
|
||||||
|
|
||||||
|
docinto txt
|
||||||
|
dodoc doc/outdated/*.txt
|
||||||
|
|
||||||
|
# logrotate
|
||||||
|
insinto /etc/logrotate.d
|
||||||
|
newins "${FILESDIR}"/lighttpd.logrotate-r1 lighttpd
|
||||||
|
|
||||||
|
keepdir /var/l{ib,og}/lighttpd /var/www/localhost/htdocs
|
||||||
|
fowners lighttpd:lighttpd /var/l{ib,og}/lighttpd
|
||||||
|
fperms 0750 /var/l{ib,og}/lighttpd
|
||||||
|
|
||||||
|
#spawn-fcgi may optionally be installed via www-servers/spawn-fcgi
|
||||||
|
rm -f "${D}"/usr/bin/spawn-fcgi "${D}"/usr/share/man/man1/spawn-fcgi.*
|
||||||
|
|
||||||
|
use minimal && remove_non_essential
|
||||||
|
|
||||||
|
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||||
|
systemd_dotmpfilesd "${FILESDIR}/${PN}.tmpfiles.conf"
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst () {
|
||||||
|
use ipv6 && readme.gentoo_print_elog
|
||||||
|
|
||||||
|
if [[ -f ${ROOT}etc/conf.d/spawn-fcgi.conf ]] ; then
|
||||||
|
einfo "spawn-fcgi is now provided by www-servers/spawn-fcgi."
|
||||||
|
einfo "spawn-fcgi's init script configuration is now located"
|
||||||
|
einfo "at /etc/conf.d/spawn-fcgi."
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -f ${ROOT}etc/lighttpd.conf ]] ; then
|
||||||
|
elog "Gentoo has a customized configuration,"
|
||||||
|
elog "which is now located in /etc/lighttpd. Please migrate your"
|
||||||
|
elog "existing configuration."
|
||||||
|
fi
|
||||||
|
}
|
Loading…
Reference in New Issue