diff options
author | Arno Töll <arno@debian.org> | 2012-11-21 23:04:05 +0100 |
---|---|---|
committer | Arno Töll <arno@debian.org> | 2012-11-21 23:04:05 +0100 |
commit | e787ca6640e45e5c28913d149b0ecd9810930b8a (patch) | |
tree | 0864b0dfde2872cf629fc0402f9dd2b8ef6c5f9c /doc | |
parent | 6c8b72678daa33f7e9df2a97d6404380e1b2e8ca (diff) | |
download | lighttpd-e787ca6640e45e5c28913d149b0ecd9810930b8a.tar.gz |
Imported Upstream version 1.4.8upstream/1.4.8
Diffstat (limited to 'doc')
-rw-r--r-- | doc/Makefile.am | 98 | ||||
-rw-r--r-- | doc/Makefile.in | 670 | ||||
-rw-r--r-- | doc/access.txt (renamed from doc/outdated/access.txt) | 6 | ||||
-rw-r--r-- | doc/accesslog.txt (renamed from doc/outdated/accesslog.txt) | 46 | ||||
-rw-r--r-- | doc/alias.txt (renamed from doc/outdated/alias.txt) | 8 | ||||
-rw-r--r-- | doc/authentication.txt (renamed from doc/outdated/authentication.txt) | 124 | ||||
-rw-r--r-- | doc/cgi.txt (renamed from doc/outdated/cgi.txt) | 8 | ||||
-rw-r--r-- | doc/cml.txt (renamed from doc/outdated/cml.txt) | 93 | ||||
-rw-r--r-- | doc/compress.txt | 66 | ||||
-rw-r--r-- | doc/config/Makefile.am | 2 | ||||
-rw-r--r-- | doc/config/Makefile.in | 604 | ||||
-rw-r--r-- | doc/config/conf.d/Makefile.am | 25 | ||||
-rw-r--r-- | doc/config/conf.d/Makefile.in | 426 | ||||
-rw-r--r-- | doc/config/conf.d/access_log.conf | 27 | ||||
-rw-r--r-- | doc/config/conf.d/auth.conf | 27 | ||||
-rw-r--r-- | doc/config/conf.d/cgi.conf | 33 | ||||
-rw-r--r-- | doc/config/conf.d/cml.conf | 27 | ||||
-rw-r--r-- | doc/config/conf.d/compress.conf | 31 | ||||
-rw-r--r-- | doc/config/conf.d/debug.conf | 47 | ||||
-rw-r--r-- | doc/config/conf.d/dirlisting.conf | 55 | ||||
-rw-r--r-- | doc/config/conf.d/evhost.conf | 22 | ||||
-rw-r--r-- | doc/config/conf.d/expire.conf | 22 | ||||
-rw-r--r-- | doc/config/conf.d/fastcgi.conf | 135 | ||||
-rw-r--r-- | doc/config/conf.d/geoip.conf | 26 | ||||
-rw-r--r-- | doc/config/conf.d/magnet.conf | 22 | ||||
-rw-r--r-- | doc/config/conf.d/mime.conf | 77 | ||||
-rw-r--r-- | doc/config/conf.d/mod.template | 16 | ||||
-rw-r--r-- | doc/config/conf.d/mysql_vhost.conf | 47 | ||||
-rw-r--r-- | doc/config/conf.d/proxy.conf | 35 | ||||
-rw-r--r-- | doc/config/conf.d/rrdtool.conf | 21 | ||||
-rw-r--r-- | doc/config/conf.d/scgi.conf | 51 | ||||
-rw-r--r-- | doc/config/conf.d/secdownload.conf | 35 | ||||
-rw-r--r-- | doc/config/conf.d/simple_vhost.conf | 28 | ||||
-rw-r--r-- | doc/config/conf.d/ssi.conf | 16 | ||||
-rw-r--r-- | doc/config/conf.d/status.conf | 24 | ||||
-rw-r--r-- | doc/config/conf.d/trigger_b4_dl.conf | 70 | ||||
-rw-r--r-- | doc/config/conf.d/userdir.conf | 37 | ||||
-rw-r--r-- | doc/config/conf.d/webdav.conf | 33 | ||||
-rw-r--r-- | doc/config/lighttpd.conf | 445 | ||||
-rw-r--r-- | doc/config/modules.conf | 172 | ||||
-rw-r--r-- | doc/config/vhosts.d/Makefile.am | 1 | ||||
-rw-r--r-- | doc/config/vhosts.d/Makefile.in | 401 | ||||
-rw-r--r-- | doc/config/vhosts.d/vhosts.template | 33 | ||||
-rw-r--r-- | doc/configuration.txt (renamed from doc/outdated/configuration.txt) | 324 | ||||
-rw-r--r-- | doc/expire.txt (renamed from doc/outdated/expire.txt) | 12 | ||||
-rw-r--r-- | doc/fastcgi-state.dot (renamed from doc/outdated/fastcgi-state.dot) | 0 | ||||
-rw-r--r-- | doc/fastcgi-state.txt (renamed from doc/outdated/fastcgi-state.txt) | 10 | ||||
-rw-r--r-- | doc/fastcgi.txt | 637 | ||||
-rw-r--r-- | doc/features.txt (renamed from doc/outdated/features.txt) | 62 | ||||
-rw-r--r-- | doc/initscripts/Makefile.am | 1 | ||||
-rw-r--r-- | doc/initscripts/Makefile.in | 401 | ||||
-rw-r--r-- | doc/lighttpd.1 | 18 | ||||
-rw-r--r-- | doc/lighttpd.8 | 70 | ||||
-rw-r--r-- | doc/lighttpd.conf | 321 | ||||
-rw-r--r-- | doc/lighttpd.user | 1 | ||||
-rw-r--r-- | doc/mysqlvhost.txt (renamed from doc/outdated/mysqlvhost.txt) | 19 | ||||
-rw-r--r-- | doc/outdated/Makefile.am | 96 | ||||
-rw-r--r-- | doc/outdated/Makefile.in | 496 | ||||
-rw-r--r-- | doc/outdated/compress.txt | 192 | ||||
-rw-r--r-- | doc/outdated/dirlisting.txt | 126 | ||||
-rw-r--r-- | doc/outdated/evhost.txt | 46 | ||||
-rw-r--r-- | doc/outdated/extforward.txt | 105 | ||||
-rw-r--r-- | doc/outdated/fastcgi.txt | 601 | ||||
-rw-r--r-- | doc/outdated/magnet.txt | 429 | ||||
-rw-r--r-- | doc/outdated/performance.txt | 239 | ||||
-rw-r--r-- | doc/outdated/status.txt | 111 | ||||
-rw-r--r-- | doc/performance.txt | 226 | ||||
-rw-r--r-- | doc/plugins.txt (renamed from doc/outdated/plugins.txt) | 108 | ||||
-rw-r--r-- | doc/proxy.txt (renamed from doc/outdated/proxy.txt) | 40 | ||||
-rwxr-xr-x | doc/rc.lighttpd (renamed from doc/initscripts/rc.lighttpd) | 15 | ||||
-rwxr-xr-x | doc/rc.lighttpd.redhat (renamed from doc/initscripts/rc.lighttpd.redhat) | 0 | ||||
-rw-r--r-- | doc/redirect.txt (renamed from doc/outdated/redirect.txt) | 14 | ||||
-rw-r--r-- | doc/rewrite.txt (renamed from doc/outdated/rewrite.txt) | 55 | ||||
-rwxr-xr-x | doc/rrdtool-graph.sh (renamed from doc/scripts/rrdtool-graph.sh) | 0 | ||||
-rw-r--r-- | doc/rrdtool.txt (renamed from doc/outdated/rrdtool.txt) | 18 | ||||
-rw-r--r-- | doc/scgi.txt (renamed from doc/outdated/scgi.txt) | 8 | ||||
-rw-r--r-- | doc/scripts/Makefile.am | 3 | ||||
-rw-r--r-- | doc/scripts/Makefile.in | 404 | ||||
-rw-r--r-- | doc/secdownload.txt (renamed from doc/outdated/secdownload.txt) | 98 | ||||
-rw-r--r-- | doc/security.txt (renamed from doc/outdated/security.txt) | 8 | ||||
-rw-r--r-- | doc/setenv.txt (renamed from doc/outdated/setenv.txt) | 8 | ||||
-rw-r--r-- | doc/simple-vhost.txt (renamed from doc/outdated/simple-vhost.txt) | 56 | ||||
-rw-r--r-- | doc/skeleton.txt (renamed from doc/outdated/skeleton.txt) | 4 | ||||
-rw-r--r-- | doc/spawn-fcgi.1 | 13 | ||||
-rwxr-xr-x | doc/spawn-php.sh (renamed from doc/scripts/spawn-php.sh) | 16 | ||||
-rw-r--r-- | doc/ssi.txt (renamed from doc/outdated/ssi.txt) | 12 | ||||
-rw-r--r-- | doc/ssl.txt (renamed from doc/outdated/ssl.txt) | 27 | ||||
-rw-r--r-- | doc/state.dot (renamed from doc/outdated/state.dot) | 0 | ||||
-rw-r--r-- | doc/state.txt (renamed from doc/outdated/state.txt) | 42 | ||||
-rw-r--r-- | doc/status.txt | 35 | ||||
-rw-r--r-- | doc/sysconfig.lighttpd (renamed from doc/initscripts/sysconfig.lighttpd) | 0 | ||||
-rw-r--r-- | doc/systemd/Makefile.am | 1 | ||||
-rw-r--r-- | doc/systemd/Makefile.in | 401 | ||||
-rw-r--r-- | doc/systemd/lighttpd.service | 10 | ||||
-rw-r--r-- | doc/traffic-shaping.txt (renamed from doc/outdated/traffic-shaping.txt) | 32 | ||||
-rw-r--r-- | doc/trigger_b4_dl.txt (renamed from doc/outdated/trigger_b4_dl.txt) | 18 | ||||
-rw-r--r-- | doc/userdir.txt (renamed from doc/outdated/userdir.txt) | 28 | ||||
-rw-r--r-- | doc/webdav.txt (renamed from doc/outdated/webdav.txt) | 22 |
98 files changed, 2238 insertions, 7993 deletions
diff --git a/doc/Makefile.am b/doc/Makefile.am index 8ba0016..043e570 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,6 +1,96 @@ -SUBDIRS=config scripts initscripts systemd outdated -dist_man8_MANS=lighttpd.8 +dist_man1_MANS=lighttpd.1 spawn-fcgi.1 -EXTRA_DIST= \ + +DOCS=accesslog.txt \ +authentication.txt \ +cgi.txt \ +compress.txt \ +configuration.txt \ +fastcgi-state.txt \ +fastcgi.txt \ +features.txt \ +performance.txt \ +plugins.txt \ +proxy.txt \ +redirect.txt \ +rewrite.txt \ +secdownload.txt \ +security.txt \ +simple-vhost.txt \ +skeleton.txt \ +ssi.txt \ +ssl.txt \ +state.txt \ +rrdtool.txt \ +alias.txt \ +userdir.txt \ +mysqlvhost.txt \ +access.txt \ +traffic-shaping.txt \ +setenv.txt \ +status.txt \ +scgi.txt \ +cml.txt \ +trigger_b4_dl.txt \ +webdav.txt \ +expire.txt + +HTMLDOCS=accesslog.html \ + authentication.html \ + cgi.html \ + compress.html \ + configuration.html \ + fastcgi-state.html \ + fastcgi.html \ + features.html \ + performance.html \ + plugins.html \ + proxy.html \ + redirect.html \ + rewrite.html \ + secdownload.html \ + security.html \ + simple-vhost.html \ + skeleton.html \ + ssi.html \ + ssl.html \ + state.html \ + rrdtool.html \ + alias.html \ + userdir.html \ + mysqlvhost.html \ + access.html \ + traffic-shaping.html \ + setenv.html \ + status.html \ + scgi.html \ + cml.html \ + trigger_b4_dl.html \ + webdav.html \ + expire.html + +EXTRA_DIST=lighttpd.conf lighttpd.user \ + rc.lighttpd rc.lighttpd.redhat sysconfig.lighttpd \ + rrdtool-graph.sh \ + state.dot fastcgi-state.dot \ + spawn-php.sh \ newstyle.css \ - oldstyle.css + oldstyle.css \ + $(DOCS) + +%.html: %.txt + rst2html $^ > $@ + + +html: $(HTMLDOCS) + +#%.ps.gz: %.ps +# gzip $^ + +#%.ps: %.dot +# dot -Tps -o $@ $^ + +clean-local: + rm -f *.html + + diff --git a/doc/Makefile.in b/doc/Makefile.in index 01ac18e..219b2f2 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -1,9 +1,8 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -14,12 +13,15 @@ # PARTICULAR PURPOSE. @SET_MAKE@ +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -35,102 +37,26 @@ build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = doc -DIST_COMMON = $(dist_man8_MANS) $(srcdir)/Makefile.am \ +DIST_COMMON = $(dist_man1_MANS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac +am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ SOURCES = DIST_SOURCES = -RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ - html-recursive info-recursive install-data-recursive \ - install-dvi-recursive install-exec-recursive \ - install-html-recursive install-info-recursive \ - install-pdf-recursive install-ps-recursive install-recursive \ - installcheck-recursive installdirs-recursive pdf-recursive \ - ps-recursive uninstall-recursive -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -man8dir = $(mandir)/man8 -am__installdirs = "$(DESTDIR)$(man8dir)" +man1dir = $(mandir)/man1 +am__installdirs = "$(DESTDIR)$(man1dir)" NROFF = nroff -MANS = $(dist_man8_MANS) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ - $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ - distdir -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) +MANS = $(dist_man1_MANS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" ACLOCAL = @ACLOCAL@ +AMDEP_FALSE = @AMDEP_FALSE@ +AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ ATTR_LIB = @ATTR_LIB@ AUTOCONF = @AUTOCONF@ @@ -141,73 +67,69 @@ BZ_LIB = @BZ_LIB@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ +CHECK_WITH_FASTCGI_FALSE = @CHECK_WITH_FASTCGI_FALSE@ +CHECK_WITH_FASTCGI_TRUE = @CHECK_WITH_FASTCGI_TRUE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ +CROSS_COMPILING_FALSE = @CROSS_COMPILING_FALSE@ +CROSS_COMPILING_TRUE = @CROSS_COMPILING_TRUE@ CRYPT_LIB = @CRYPT_LIB@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ +ECHO = @ECHO@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ +F77 = @F77@ FAM_CFLAGS = @FAM_CFLAGS@ FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ +FFLAGS = @FFLAGS@ GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LBER_LIB = @LBER_LIB@ -LD = @LD@ LDAP_LIB = @LDAP_LIB@ LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ +LUACONFIG = @LUACONFIG@ LUA_CFLAGS = @LUA_CFLAGS@ LUA_LIBS = @LUA_LIBS@ +MAINT = @MAINT@ +MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ +MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ MYSQL_CONFIG = @MYSQL_CONFIG@ MYSQL_INCLUDE = @MYSQL_INCLUDE@ MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ +NO_RDYNAMIC_FALSE = @NO_RDYNAMIC_FALSE@ +NO_RDYNAMIC_TRUE = @NO_RDYNAMIC_TRUE@ OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PCRECONFIG = @PCRECONFIG@ PCRE_LIB = @PCRE_LIB@ PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ -SED = @SED@ SENDFILE_LIB = @SENDFILE_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ @@ -216,18 +138,20 @@ SQLITE_LIBS = @SQLITE_LIBS@ SSL_LIB = @SSL_LIB@ STRIP = @STRIP@ U = @U@ -UUID_LIBS = @UUID_LIBS@ VERSION = @VERSION@ XML_CFLAGS = @XML_CFLAGS@ XML_LIBS = @XML_LIBS@ Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_F77 = @ac_ct_F77@ +ac_ct_RANLIB = @ac_ct_RANLIB@ +ac_ct_STRIP = @ac_ct_STRIP@ +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ +am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ +am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -239,65 +163,125 @@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ -builddir = @builddir@ datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ -htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ -localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ -psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -SUBDIRS = config scripts initscripts systemd outdated -dist_man8_MANS = lighttpd.8 -EXTRA_DIST = \ +dist_man1_MANS = lighttpd.1 spawn-fcgi.1 +DOCS = accesslog.txt \ +authentication.txt \ +cgi.txt \ +compress.txt \ +configuration.txt \ +fastcgi-state.txt \ +fastcgi.txt \ +features.txt \ +performance.txt \ +plugins.txt \ +proxy.txt \ +redirect.txt \ +rewrite.txt \ +secdownload.txt \ +security.txt \ +simple-vhost.txt \ +skeleton.txt \ +ssi.txt \ +ssl.txt \ +state.txt \ +rrdtool.txt \ +alias.txt \ +userdir.txt \ +mysqlvhost.txt \ +access.txt \ +traffic-shaping.txt \ +setenv.txt \ +status.txt \ +scgi.txt \ +cml.txt \ +trigger_b4_dl.txt \ +webdav.txt \ +expire.txt + +HTMLDOCS = accesslog.html \ + authentication.html \ + cgi.html \ + compress.html \ + configuration.html \ + fastcgi-state.html \ + fastcgi.html \ + features.html \ + performance.html \ + plugins.html \ + proxy.html \ + redirect.html \ + rewrite.html \ + secdownload.html \ + security.html \ + simple-vhost.html \ + skeleton.html \ + ssi.html \ + ssl.html \ + state.html \ + rrdtool.html \ + alias.html \ + userdir.html \ + mysqlvhost.html \ + access.html \ + traffic-shaping.html \ + setenv.html \ + status.html \ + scgi.html \ + cml.html \ + trigger_b4_dl.html \ + webdav.html \ + expire.html + +EXTRA_DIST = lighttpd.conf lighttpd.user \ + rc.lighttpd rc.lighttpd.redhat sysconfig.lighttpd \ + rrdtool-graph.sh \ + state.dot fastcgi-state.dot \ + spawn-php.sh \ newstyle.css \ - oldstyle.css + oldstyle.css \ + $(DOCS) -all: all-recursive +all: all-am .SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ + && exit 0; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu doc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -311,381 +295,201 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs -install-man8: $(dist_man8_MANS) + +distclean-libtool: + -rm -f libtool +uninstall-info-am: +install-man1: $(man1_MANS) $(man_MANS) @$(NORMAL_INSTALL) - test -z "$(man8dir)" || $(MKDIR_P) "$(DESTDIR)$(man8dir)" - @list='$(dist_man8_MANS)'; test -n "$(man8dir)" || exit 0; \ - { for i in $$list; do echo "$$i"; done; \ - } | while read p; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; echo "$$p"; \ - done | \ - sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ - sed 'N;N;s,\n, ,g' | { \ - list=; while read file base inst; do \ - if test "$$base" = "$$inst"; then list="$$list $$file"; else \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst" || exit $$?; \ - fi; \ + test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)" + @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ + l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ + for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ done; \ - for i in $$list; do echo "$$i"; done | $(am__base_list) | \ - while read files; do \ - test -z "$$files" || { \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man8dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(man8dir)" || exit $$?; }; \ - done; } - -uninstall-man8: + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + case "$$ext" in \ + 1*) ;; \ + *) ext='1' ;; \ + esac; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed -e 's/^.*\///'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ + done +uninstall-man1: @$(NORMAL_UNINSTALL) - @list='$(dist_man8_MANS)'; test -n "$(man8dir)" || exit 0; \ - files=`{ for i in $$list; do echo "$$i"; done; \ - } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ - dir='$(DESTDIR)$(man8dir)'; $(am__uninstall_files_from_dir) - -# This directory's subdirectories are mostly independent; you can cd -# into them and run `make' without going through this Makefile. -# To change the values of `make' variables: instead of editing Makefiles, -# (1) if the variable is set in `config.status', edit `config.status' -# (which will cause the Makefiles to be regenerated when you run `make'); -# (2) otherwise, pass the desired values on the `make' command line. -$(RECURSIVE_TARGETS): - @fail= failcom='exit 1'; \ - for f in x $$MAKEFLAGS; do \ - case $$f in \ - *=* | --[!k]*);; \ - *k*) failcom='fail=yes';; \ + @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ + l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ + for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ esac; \ done; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -$(RECURSIVE_CLEAN_TARGETS): - @fail= failcom='exit 1'; \ - for f in x $$MAKEFLAGS; do \ - case $$f in \ - *=* | --[!k]*);; \ - *k*) failcom='fail=yes';; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + case "$$ext" in \ + 1*) ;; \ + *) ext='1' ;; \ esac; \ - done; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - rev=''; for subdir in $$list; do \ - if test "$$subdir" = "."; then :; else \ - rev="$$subdir $$rev"; \ - fi; \ - done; \ - rev="$$rev ."; \ - target=`echo $@ | sed s/-recursive//`; \ - for subdir in $$rev; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done && test -z "$$fail" -tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ - done -ctags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed -e 's/^.*\///'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ + rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique tags: TAGS +TAGS: -TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi ctags: CTAGS -CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +CTAGS: + distdir: $(DISTFILES) - @list='$(MANS)'; if test -n "$$list"; then \ - list=`for p in $$list; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ - if test -n "$$list" && \ - grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ - echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ - grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ - echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ - echo " typically \`make maintainer-clean' will remove them" >&2; \ - exit 1; \ - else :; fi; \ - else :; fi - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ + list='$(DISTFILES)'; for file in $$list; do \ + case $$file in \ + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkdir_p) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done check-am: all-am -check: check-recursive +check: check-am all-am: Makefile $(MANS) -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(man8dir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ +installdirs: + for dir in "$(DESTDIR)$(man1dir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ done -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -installcheck: installcheck-recursive +installcheck: installcheck-am install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive +clean: clean-am -clean-am: clean-generic clean-libtool mostlyclean-am +clean-am: clean-generic clean-libtool clean-local mostlyclean-am -distclean: distclean-recursive +distclean: distclean-am -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-tags +distclean-am: clean-am distclean-generic distclean-libtool -dvi: dvi-recursive +dvi: dvi-am dvi-am: -html: html-recursive - -html-am: - -info: info-recursive +info: info-am info-am: install-data-am: install-man -install-dvi: install-dvi-recursive - -install-dvi-am: - install-exec-am: -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: install-man8 +install-info: install-info-am -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: +install-man: install-man1 installcheck-am: -maintainer-clean: maintainer-clean-recursive +maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic -mostlyclean: mostlyclean-recursive +mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool -pdf: pdf-recursive +pdf: pdf-am pdf-am: -ps: ps-recursive +ps: ps-am ps-am: -uninstall-am: uninstall-man +uninstall-am: uninstall-info-am uninstall-man + +uninstall-man: uninstall-man1 + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + clean-local distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-exec \ + install-exec-am install-info install-info-am install-man \ + install-man1 install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am uninstall-info-am \ + uninstall-man uninstall-man1 + -uninstall-man: uninstall-man8 +%.html: %.txt + rst2html $^ > $@ -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ - install-am install-strip tags-recursive +html: $(HTMLDOCS) -.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ - all all-am check check-am clean clean-generic clean-libtool \ - ctags ctags-recursive distclean distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-man8 install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs installdirs-am \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags tags-recursive uninstall uninstall-am uninstall-man \ - uninstall-man8 +#%.ps.gz: %.ps +# gzip $^ +#%.ps: %.dot +# dot -Tps -o $@ $^ +clean-local: + rm -f *.html # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff --git a/doc/outdated/access.txt b/doc/access.txt index 042da01..acfdcb7 100644 --- a/doc/outdated/access.txt +++ b/doc/access.txt @@ -12,10 +12,10 @@ Module: mod_access :abstract: The access module is used to deny access to files with given trailing path names. - + .. meta:: :keywords: lighttpd, trailing path access control - + .. contents:: Table of Contents Description @@ -32,7 +32,7 @@ url.access-deny Default: empty Example: :: - + url.access-deny = ( "~", ".inc") will deny access to all files ended with a diacritical mark (~) or .inc diff --git a/doc/outdated/accesslog.txt b/doc/accesslog.txt index 889a4da..36584cf 100644 --- a/doc/outdated/accesslog.txt +++ b/doc/accesslog.txt @@ -11,11 +11,11 @@ Module: mod_accesslog :Revision: $Revision: 1.2 $ :abstract: - The accesslog module ... - + The accesslog module ... + .. meta:: :keywords: lighttpd, accesslog, CLF - + .. contents:: Table of Contents Description @@ -28,30 +28,30 @@ Options accesslog.use-syslog send the accesslog to syslog - + Default: disabled accesslog.filename name of the file where the accesslog should be written too if syslog is not used. - + if the name starts with a '|' the rest of the name is taken as the name of a process which will be spawn and will get the output - + e.g.: :: - + accesslog.filename = "/var/log/lighttpd.log" - + $HTTP["host"] == "mail.example.org" { accesslog.filename = "|/usr/bin/cronolog" } - + Default: disabled accesslog.format the format of the logfile - + ====== ================================ Option Description ====== ================================ @@ -60,8 +60,8 @@ accesslog.format %l ident name (not supported) %u authenticated user %t timestamp for the request-start - %r request-line - %s status code + %r request-line + %s status code %b bytes sent for the body %i HTTP-header field %a remote address @@ -86,16 +86,16 @@ accesslog.format %I bytes incomming %O bytes outgoing ====== ================================ - + If %s is written %>s or %<s the < and the > are ignored. They are support - for compat with apache. - + for compat with apache. + %i and %o expect the name of the field which should be written in curly brackets. - + e.g.: :: - + accesslog.format = "%h %l %u %t \"%r\" %b %>s \"%{User-Agent}i\" \"%{Referer}i\"" - + Default: CLF compatible output Response Header @@ -109,18 +109,18 @@ If you want to log it into the accesslog just specify the field-name within a %{...}o like :: accesslog.format = "%h %l %u %t \"%r\" %b %>s \"%{User-Agent}i\" \"%{Referer}i\" \"%{X-LIGHTTPD-SID}o\"" - + The prefix ``X-LIGHTTPD-`` is special as every response header starting with this prefix is assumed to be special for lighttpd and won't be sent out -to the client. +to the client. An example the use this functionality is provided below: :: <?php - + session_start(); - + header("X-LIGHTTPD-SID: ".session_id()); - + ?> diff --git a/doc/outdated/alias.txt b/doc/alias.txt index 1315f93..15012e3 100644 --- a/doc/outdated/alias.txt +++ b/doc/alias.txt @@ -11,11 +11,11 @@ Module: mod_alias :Revision: $Revision: 1.1 $ :abstract: - The alias module ... - + The alias module ... + .. meta:: :keywords: lighttpd, alias - + .. contents:: Table of Contents Description @@ -32,5 +32,5 @@ alias.url Default: empty Example: :: - + alias.url = ( "/cgi-bin/" => "/var/www/servers/www.example.org/cgi-bin/" ) diff --git a/doc/outdated/authentication.txt b/doc/authentication.txt index edc2b2b..20c06bd 100644 --- a/doc/outdated/authentication.txt +++ b/doc/authentication.txt @@ -7,15 +7,15 @@ Module: mod_auth ---------------- :Author: Jan Kneschke -:Date: $Date$ -:Revision: $Revision$ +:Date: $Date: 2005-09-16 14:45:15 +0200 (Fri, 16 Sep 2005) $ +:Revision: $Revision: 712 $ :abstract: The auth module provides ... - + .. meta:: :keywords: lighttpd, authentication - + .. contents:: Table of Contents Description @@ -24,115 +24,103 @@ Description Supported Methods ----------------- -lighttpd supportes both authentication method described by -RFC 2617: +lighttpd supportes both authentication method described by +RFC 2617: basic ````` -The Basic method transfers the username and the password in -cleartext over the network (base64 encoded) and might result -in security problems if not used in conjunction with a crypted +The Basic method transfers the username and the password in +cleartext over the network (base64 encoded) and might result +in security problems if not used in conjunction with a crypted channel between client and server. digest `````` -The Digest method only transfers a hashed value over the -network which performs a lot of work to harden the +The Digest method only transfers a hashed value over the +network which performs a lot of work to harden the authentication process in insecure networks. Backends -------- -Depending on the method lighttpd provides various way to store +Depending on the method lighttpd provides various way to store the credentials used for the authentication. for basic auth: - plain_ -- htpasswd_ +- htpasswd_ - htdigest_ - ldap_ - + for digest auth: - plain_ - htdigest_ - + plain ````` -A file which contains username and the cleartext password -seperated by a colon. Each entry is terminated by a single +A file which contains username and the cleartext password +seperated by a colon. Each entry is terminated by a single newline.:: e.g.: agent007:secret - + htpasswd ```````` -A file which contains username and the crypt()'ed password -seperated by a colon. Each entry is terminated by a single +A file which contains username and the crypt()'ed password +seperated by a colon. Each entry is terminated by a single newline. :: e.g.: agent007:XWY5JwrAVBXsQ -You can use htpasswd from the apache distribution to manage +You can use htpasswd from the apache distribution to manage those files. :: - - $ htpasswd lighttpd.user.htpasswd agent007 - - + + $ htpasswd lighttpd.user.digest agent007 + + htdigest ```````` -A file which contains username, realm and the md5()'ed -password seperated by a colon. Each entry is terminated +A file which contains username, realm and the md5()'ed +password seperated by a colon. Each entry is terminated by a single newline. :: - + e.g.: agent007:download area:8364d0044ef57b3defcfa141e8f77b65 - -You can use htdigest from the apache distribution to manage + +You can use htdigest from the apache distribution to manage those files. :: - $ htdigest lighttpd.user.htdigest 'download area' agent007 - + $ htdigest src/lighttpd.user.digest 'download area' agent007 + Using md5sum can also generate the password-hash: :: - - #!/bin/sh - user=$1 - realm=$2 - pass=$3 - - hash=`echo -n "$user:$realm:$pass" | md5sum | cut -b -32` - - echo "$user:$realm:$hash" - -To use it: - - $ htdigest.sh 'agent007' 'download area' 'secret' - agent007:download area:8364d0044ef57b3defcfa141e8f77b65 - - - + + $ echo -n "agent007:download area:secret" | md5sum - + 8364d0044ef57b3defcfa141e8f77b65 - + + ldap ```` -the ldap backend is basically performing the following steps +the ldap backend is basically performing the following steps to authenticate a user - + 1. connect anonymously (at plugin init) 2. get DN for filter = username 3. auth against ldap server 4. disconnect - -if all 4 steps are performed without any error the user is + +if all 4 steps are performed without any error the user is authenticated Configuration @@ -143,28 +131,28 @@ Configuration ## debugging # 0 for off, 1 for 'auth-ok' messages, 2 for verbose debugging auth.debug = 0 - - ## type of backend + + ## type of backend # plain, htpasswd, ldap or htdigest auth.backend = "htpasswd" - # filename of the password storage for + # filename of the password storage for # plain auth.backend.plain.userfile = "lighttpd-plain.user" - + ## for htpasswd auth.backend.htpasswd.userfile = "lighttpd-htpasswd.user" - + ## for htdigest auth.backend.htdigest.userfile = "lighttpd-htdigest.user" ## for ldap - # the $ in auth.backend.ldap.filter is replaced by the + # the $ in auth.backend.ldap.filter is replaced by the # 'username' from the login dialog auth.backend.ldap.hostname = "localhost" auth.backend.ldap.base-dn = "dc=my-domain,dc=com" auth.backend.ldap.filter = "(uid=$)" - # if enabled, startTLS needs a valid (base64-encoded) CA + # if enabled, startTLS needs a valid (base64-encoded) CA # certificate auth.backend.ldap.starttls = "enable" auth.backend.ldap.ca-file = "/etc/CAcertificate.pem" @@ -178,20 +166,20 @@ Configuration # "require" => "user=<username>" ) # ) # - # <realm> is a string to display in the dialog - # presented to the user and is also used for the - # digest-algorithm and has to match the realm in the + # <realm> is a string to display in the dialog + # presented to the user and is also used for the + # digest-algorithm and has to match the realm in the # htdigest file (if used) # - auth.require = ( "/download/" => - ( + auth.require = ( "/download/" => + ( "method" => "digest", "realm" => "download archiv", "require" => "user=agent007|user=agent008" ), - "/server-info" => - ( + "/server-info" => + ( "method" => "digest", "realm" => "download archiv", "require" => "valid-user" @@ -201,7 +189,7 @@ Configuration Limitations ============ -- The implementation of digest method is currently not +- The implementation of digest method is currently not completely compliant with the standard as it still allows a replay attack. diff --git a/doc/outdated/cgi.txt b/doc/cgi.txt index 95d187c..081d795 100644 --- a/doc/outdated/cgi.txt +++ b/doc/cgi.txt @@ -12,10 +12,10 @@ Module: mod_cgi :abstract: The cgi module provides a CGI-conforming interface. - + .. meta:: :keywords: lighttpd, cgi - + .. contents:: Table of Contents Description @@ -32,7 +32,7 @@ cgi.assign file-extensions that are handled by a CGI program e.g.: :: - + cgi.assign = ( ".pl" => "/usr/bin/perl", ".cgi" => "/usr/bin/perl" ) @@ -43,7 +43,7 @@ To setup a executable which doesn't need the help of a external program you just don't specify a handler for the extension. :: cgi.assign = ( ".sh" => "" ) - + If the file has no extension keep in mind that lighttpd matches not the extension itself but the right part of the URL: :: diff --git a/doc/outdated/cml.txt b/doc/cml.txt index 10fac70..f7752d4 100644 --- a/doc/outdated/cml.txt +++ b/doc/cml.txt @@ -12,10 +12,10 @@ Module: mod_cml :abstract: CML is a Meta language to describe the dependencies of a page at one side and building a page from its fragments on the other side using LUA. - + .. meta:: :keywords: lighttpd, cml, lua - + .. contents:: Table of Contents Description @@ -31,7 +31,7 @@ CML (Cache Meta Language) wants to solves several problems: Cache Decision -------------- -A simple example should show how to a content caching the very simple way in PHP. +A simple example should show how to a content caching the very simple way in PHP. jan.kneschke.de has a very simple design: @@ -39,7 +39,7 @@ jan.kneschke.de has a very simple design: * the menu is generated from a menu.csv file * the content is coming from files on the local directory named content-1, content-2 and so on -The page content is static as long non of the those tree items changes. A change in the layout +The page content is static as long non of the those tree items changes. A change in the layout is affecting all pages, a change of menu.csv too, a change of content-x file only affects the cached page itself. @@ -58,7 +58,7 @@ If we model this in PHP we get: :: } foreach($content as $k => $v) { - if (isset($v["file"]) && + if (isset($v["file"]) && filemtime($v["file"]) > $cachemtime) { return 0; } @@ -71,7 +71,7 @@ If we model this in PHP we get: :: return 0; } } - + if (is_cachable(...), $cachefile) { readfile($cachefile); exit(); @@ -81,7 +81,7 @@ If we model this in PHP we get: :: ?> Quite simple. No magic involved. If the one of the files is new than the cached -content, the content is dirty and has to be regenerated. +content, the content is dirty and has to be regenerated. Now let take a look at the numbers: @@ -92,9 +92,9 @@ As you can see the increase is not as good as it could be. The main reason as th of the PHP interpreter to start up (a byte-code cache has been used here). Moving these decisions out of the PHP script into a server module will remove the need -to start PHP for a cache-hit. +to start PHP for a cache-hit. -To transform this example into a CML you need 'index.cml' in the list of indexfiles +To transform this example into a CML you need 'index.cml' in the list of indexfiles and the following index.cml file: :: output_contenttype = "text/html" @@ -110,7 +110,7 @@ and the following index.cml file: :: file_mtime(b .. "templates/jk.tmpl") > file_mtime(cwd .. "_cache.html") or file_mtime(b .. "content.html") > file_mtime(cwd .. "_cache.html") then return CACHE_MISS - else + else return CACHE_HIT end @@ -132,77 +132,30 @@ Sometimes the different fragment are already generated externally. You have to c readfile("spacer2.html"); readfile("news.html"); readfile("footer.html"); - ?> + ?> -We we can do the same several times faster directly in the webserver. +We we can do the same several times faster directly in the webserver. Don't forget: Webserver are built to send out static content, that is what they can do best. The index.cml for this looks like: :: - output_contenttype = "text/html" - + output_content_type = "text/html" + cwd = request["CWD"] - - output_include = { cwd .. "head.html", + + output_include = { cwd .. "head.html", cwd .. "menu.html", cwd .. "spacer.html", cwd .. "db-content.html", cwd .. "spacer2.html", cwd .. "news.html", cwd .. "footer.html" } - + return CACHE_HIT Now we get about 10000 req/s instead of 600 req/s. -Power Magnet ------------- - -Next to all the features about Cache Decisions CML can do more. Starting -with lighttpd 1.4.9 a power-magnet was added which attracts each request -and allows you to manipulate the request for your needs. - -We want to display a maintainance page by putting a file in a specified -place: - -We enable the power magnet: :: - - cml.power-magnet = "/home/www/power-magnet.cml" - -and create /home/www/power-magnet.cml with: :: - - dr = request["DOCUMENT_ROOT"] - - if file_isreg(dr .. 'maintainance.html') then - output_include = { 'maintainance.html' } - return CACHE_HIT - end - - return CACHE_MISS - -For each requested file the /home/www/power-magnet.cml is executed which -checks if maintainance.html exists in the docroot and displays it -instead of handling the usual request. - -Another example, create thumbnail for requested image and serve it instead -of sending the big image: :: - - ## image-url is /album/baltic_winter_2005.jpg - ## no params -> 640x480 is served - ## /album/baltic_winter_2005.jpg/orig for full size - ## /album/baltic_winter_2005.jpg/thumb for thumbnail - - dr = request["DOCUMENT_ROOT"] - sn = request["SCRIPT_NAME"] - - ## to be continued :) ... - - trigger_handler = '/gen_image.php' - - return CACHE_MISS - - Installation ============ @@ -217,19 +170,17 @@ To use the plugin you have to load it: :: Options ======= -:cml.extension: +:cml.extension: the file extension that is bound to the cml-module :cml.memcache-hosts: hosts for the memcache.* functions :cml.memcache-namespace: (not used yet) -:cml.power-magnet: - a cml file that is executed for each request Language ======== -The language used for CML is provided by `LUA <http://www.lua.org/>`_. +The language used for CML is provided by `LUA <http://www.lua.org/>`_. Additionally to the functions provided by lua mod_cml provides: :: @@ -252,10 +203,10 @@ Additionally to the functions provided by lua mod_cml provides: :: number file_mtime(string) string memcache_get_string(string) number memcache_get_long(string) - boolean memcache_exists(string) + boolean memcache_exists(string) -What ever your script does, it has to return either CACHE_HIT or CACHE_MISS. -It case a error occures check the error-log, the user will get a error 500. If you don't like +What ever your script does, it has to return either 0 or 1 for ``cache-hit`` or ``cache-miss``. +It case a error occures check the error-log, the user will get a error 500. If you don't like the standard error-page use ``server.errorfile-prefix``. diff --git a/doc/compress.txt b/doc/compress.txt new file mode 100644 index 0000000..7b083e9 --- /dev/null +++ b/doc/compress.txt @@ -0,0 +1,66 @@ +================== +Output Compression +================== + +-------------------- +Module: mod_compress +-------------------- + +:Author: Jan Kneschke +:Date: $Date: 2004/08/29 09:43:49 $ +:Revision: $Revision: 1.1 $ + +:abstract: + a nice, short abstrace about the module + +.. meta:: + :keywords: lighttpd, compress + +.. contents:: Table of Contents + +Description +=========== + +Output compression reduces the network load and can improve the overall +throughput of the webserver. + +Only static content is supported up to now. + +The server negotiates automaticly which compression method is used. +Supported are gzip, deflate, bzip. + +Options +======= + +compress.cache-dir + name of the directory where compressed content will be cached + + e.g.: :: + + compress.cache-dir = "/var/www/cache/" + + # even better with virt-hosting + $HTTP["host"] == "docs.example.org" { + compress.cache-dir = "/var/www/cache/docs.example.org/" + } + + Default: not set, compress the file for every request + +compress.filetype + mimetypes where might get compressed + + e.g.: :: + + compress.filetype = ("text/plain", "text/html") + + Default: not set + + +Compressing Dynamic Content +=========================== + +To compress dynamic content with PHP please enable :: + + zlib.output_compression = 1 + +in the php.ini as PHP provides compression support by itself. diff --git a/doc/config/Makefile.am b/doc/config/Makefile.am deleted file mode 100644 index 57bf101..0000000 --- a/doc/config/Makefile.am +++ /dev/null @@ -1,2 +0,0 @@ -SUBDIRS=conf.d vhosts.d -EXTRA_DIST=lighttpd.conf modules.conf diff --git a/doc/config/Makefile.in b/doc/config/Makefile.in deleted file mode 100644 index 869a407..0000000 --- a/doc/config/Makefile.in +++ /dev/null @@ -1,604 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/config -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ - html-recursive info-recursive install-data-recursive \ - install-dvi-recursive install-exec-recursive \ - install-html-recursive install-info-recursive \ - install-pdf-recursive install-ps-recursive install-recursive \ - installcheck-recursive installdirs-recursive pdf-recursive \ - ps-recursive uninstall-recursive -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ - $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ - distdir -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -SUBDIRS = conf.d vhosts.d -EXTRA_DIST = lighttpd.conf modules.conf -all: all-recursive - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/config/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/config/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -# This directory's subdirectories are mostly independent; you can cd -# into them and run `make' without going through this Makefile. -# To change the values of `make' variables: instead of editing Makefiles, -# (1) if the variable is set in `config.status', edit `config.status' -# (which will cause the Makefiles to be regenerated when you run `make'); -# (2) otherwise, pass the desired values on the `make' command line. -$(RECURSIVE_TARGETS): - @fail= failcom='exit 1'; \ - for f in x $$MAKEFLAGS; do \ - case $$f in \ - *=* | --[!k]*);; \ - *k*) failcom='fail=yes';; \ - esac; \ - done; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -$(RECURSIVE_CLEAN_TARGETS): - @fail= failcom='exit 1'; \ - for f in x $$MAKEFLAGS; do \ - case $$f in \ - *=* | --[!k]*);; \ - *k*) failcom='fail=yes';; \ - esac; \ - done; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - rev=''; for subdir in $$list; do \ - if test "$$subdir" = "."; then :; else \ - rev="$$subdir $$rev"; \ - fi; \ - done; \ - rev="$$rev ."; \ - target=`echo $@ | sed s/-recursive//`; \ - for subdir in $$rev; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done && test -z "$$fail" -tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ - done -ctags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ - done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: CTAGS -CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-recursive -all-am: Makefile -installdirs: installdirs-recursive -installdirs-am: -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-recursive - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -html-am: - -info: info-recursive - -info-am: - -install-data-am: - -install-dvi: install-dvi-recursive - -install-dvi-am: - -install-exec-am: - -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: - -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: - -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ - install-am install-strip tags-recursive - -.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ - all all-am check check-am clean clean-generic clean-libtool \ - ctags ctags-recursive distclean distclean-generic \ - distclean-libtool distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ - uninstall uninstall-am - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/config/conf.d/Makefile.am b/doc/config/conf.d/Makefile.am deleted file mode 100644 index 165c17e..0000000 --- a/doc/config/conf.d/Makefile.am +++ /dev/null @@ -1,25 +0,0 @@ -EXTRA_DIST=access_log.conf \ - auth.conf \ - cgi.conf \ - cml.conf \ - compress.conf \ - debug.conf \ - dirlisting.conf \ - evhost.conf \ - expire.conf \ - fastcgi.conf \ - geoip.conf \ - magnet.conf \ - mime.conf \ - mod.template \ - mysql_vhost.conf \ - proxy.conf \ - rrdtool.conf \ - scgi.conf \ - secdownload.conf \ - simple_vhost.conf \ - ssi.conf \ - status.conf \ - trigger_b4_dl.conf \ - userdir.conf \ - webdav.conf diff --git a/doc/config/conf.d/Makefile.in b/doc/config/conf.d/Makefile.in deleted file mode 100644 index 1b3fc95..0000000 --- a/doc/config/conf.d/Makefile.in +++ /dev/null @@ -1,426 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/config/conf.d -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -EXTRA_DIST = access_log.conf \ - auth.conf \ - cgi.conf \ - cml.conf \ - compress.conf \ - debug.conf \ - dirlisting.conf \ - evhost.conf \ - expire.conf \ - fastcgi.conf \ - geoip.conf \ - magnet.conf \ - mime.conf \ - mod.template \ - mysql_vhost.conf \ - proxy.conf \ - rrdtool.conf \ - scgi.conf \ - secdownload.conf \ - simple_vhost.conf \ - ssi.conf \ - status.conf \ - trigger_b4_dl.conf \ - userdir.conf \ - webdav.conf - -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/config/conf.d/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/config/conf.d/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/config/conf.d/access_log.conf b/doc/config/conf.d/access_log.conf deleted file mode 100644 index 6c1e7e3..0000000 --- a/doc/config/conf.d/access_log.conf +++ /dev/null @@ -1,27 +0,0 @@ -####################################################################### -## -## Corresponding documentation: -## -## http://www.lighttpd.net/documentation/access.html -## -server.modules += ( "mod_accesslog" ) - -## -## Default access log. -## -accesslog.filename = log_root + "/access.log" - -## -## The default format produces CLF compatible output. -## For available parameters see access.txt -## -#accesslog.format = "%h %l %u %t \"%r\" %b %>s \"%{User-Agent}i\" \"%{Referer}i\"" - -## -## If you want to log to syslog you have to unset the -## accesslog.use-syslog setting and uncomment the next line. -## -#accesslog.use-syslog = "enable" - -# -####################################################################### diff --git a/doc/config/conf.d/auth.conf b/doc/config/conf.d/auth.conf deleted file mode 100644 index 1d3d69c..0000000 --- a/doc/config/conf.d/auth.conf +++ /dev/null @@ -1,27 +0,0 @@ -####################################################################### -## -## Authentication Module -## ----------------------- -## -## See http://www.lighttpd.net/documentation/authentification.html -## for more info. -## - -#auth.backend = "plain" -#auth.backend.plain.userfile = "/etc/lighttpd/lighttpd.user" -#auth.backend.plain.groupfile = "/etc/lighttpd/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" => "Server Status", -# "require" => "valid-user" -# ), -# ) - -## -####################################################################### diff --git a/doc/config/conf.d/cgi.conf b/doc/config/conf.d/cgi.conf deleted file mode 100644 index ed27799..0000000 --- a/doc/config/conf.d/cgi.conf +++ /dev/null @@ -1,33 +0,0 @@ -####################################################################### -## -## CGI modules -## --------------- -## -## http://www.lighttpd.net/documentation/cgi.html -## -server.modules += ( "mod_cgi" ) - -## -## Plain old CGI handling -## -## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini. -## -cgi.assign = ( ".pl" => "/usr/bin/perl", - ".cgi" => "/usr/bin/perl", - ".rb" => "/usr/bin/ruby", - ".erb" => "/usr/bin/eruby", - ".py" => "/usr/bin/python" ) - -## -## to get the old cgi-bin behavior of apache -## -## Note: make sure that mod_alias is loaded if you uncomment the -## next line. (see modules.conf) -## -#alias.url += ( "/cgi-bin" => server_root + "/cgi-bin" ) -#$HTTP["url"] =~ "^/cgi-bin" { -# cgi.assign = ( "" => "" ) -#} - -## -####################################################################### diff --git a/doc/config/conf.d/cml.conf b/doc/config/conf.d/cml.conf deleted file mode 100644 index 8054ea6..0000000 --- a/doc/config/conf.d/cml.conf +++ /dev/null @@ -1,27 +0,0 @@ -####################################################################### -## -## CML Module -## --------------- -## -## see http://www.lighttpd.net/documentation/cml.html -## -server.modules += ( "mod_cml" ) -index-file.names += ( "index.cml" ) - -## -## The file extension that is bound to the cml-module. -## -cml.extension = ".cml" - -## -## Memcached hosts used for memcache* functions. -## -#cml.memcache-hosts = ( "127.0.0.1:11211" ) - -## -## A cml file that is executed for each request. -## -#cml.power-magnet = server_root + "/htdocs/powermagnet.cml" - -## -####################################################################### diff --git a/doc/config/conf.d/compress.conf b/doc/config/conf.d/compress.conf deleted file mode 100644 index 8ea4248..0000000 --- a/doc/config/conf.d/compress.conf +++ /dev/null @@ -1,31 +0,0 @@ -####################################################################### -## -## Output Compression -## -------------------- -## -## see http://www.lighttpd.net/documentation/compress.html -## -server.modules += ( "mod_compress" ) - -## -## where should the compressed files be cached? -## see the base config for the declaration of the variable. -## -## This directory should be changed per vhost otherwise you can -## run into trouble with overlapping filenames -## -compress.cache-dir = cache_dir + "/compress" - -## -## FileTypes to compress. -## -compress.filetype = ("text/plain", "text/html") - -## -## Maximum filesize that will be compressed. -## Default is 0, which means unlimited file size. -## -#compress.max-filesize = 0 - -## -####################################################################### diff --git a/doc/config/conf.d/debug.conf b/doc/config/conf.d/debug.conf deleted file mode 100644 index 80bbea0..0000000 --- a/doc/config/conf.d/debug.conf +++ /dev/null @@ -1,47 +0,0 @@ -####################################################################### -## -## Debug options -## --------------- -## -## Enable those options for debugging the behavior -## -## The settings can be set per location/vhost. -## - -## -## log-request-handling allows you to track the request -## handing inside lighttpd. -## -#debug.log-request-handling = "enable" - -## -## log all request headers. -## -#debug.log-request-header = "enable" - -## -## similar to log-request-header. -## but only logs if we encountered an error. -## (return codes 400 and 5xx) -## -#debug.log-request-header-on-error = "enable" - -## -## log the header we send out to the client. -## -#debug.log-response-header = "enable" - -## -## log if a file wasnt found in the error log. -## -#debug.log-file-not-found = "enable" - -## -## debug conditionals handling -## -#debug.log-condition-handling = "enable" - -# -####################################################################### - - diff --git a/doc/config/conf.d/dirlisting.conf b/doc/config/conf.d/dirlisting.conf deleted file mode 100644 index 53a18a2..0000000 --- a/doc/config/conf.d/dirlisting.conf +++ /dev/null @@ -1,55 +0,0 @@ -####################################################################### -## -## Dirlisting Module -## ------------------- -## -## See http://www.lighttpd.net/documentation/dirlisting.html -## - -## -## Enabled Directory listing -## -dir-listing.activate = "disable" - -## -## Hide dot files from the listing? -## By default they are listed. -## -dir-listing.hide-dotfiles = "disable" - -## -## list of regular expressions. Files that match any of the specified -## regular expressions will be excluded from directory listings. -## -dir-listing.exclude = ( "~$" ) - -## -## set a encoding for the generated directory listing -## -## If you file-system is not using ASCII you have to set the encoding of -## the filenames as they are put into the HTML listing AS IS (with XML -## encoding) -## -dir-listing.encoding = "UTF-8" - -## -## Specify the url to an optional CSS file. -## -#dir-listing.external-css = "/dirindex.css" - -## -## Include HEADER.txt files above the directory listing. -## You can disable showing the HEADER.txt in the listing. -## -dir-listing.hide-header-file = "disable" -dir-listing.show-header = "disable" - -## -## Include README.txt files above the directory listing. -## You can disable showing the README.txt in the listing. -## -dir-listing.hide-readme-file = "disable" -dir-listing.show-readme = "disable" - -## -####################################################################### diff --git a/doc/config/conf.d/evhost.conf b/doc/config/conf.d/evhost.conf deleted file mode 100644 index 6da89c1..0000000 --- a/doc/config/conf.d/evhost.conf +++ /dev/null @@ -1,22 +0,0 @@ -####################################################################### -## -## Enhanced virtual hosting -## -------------------------- -## -## See http://www.lighttpd.net/documentation/evhost.html -## -server.modules += ( "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 = vhosts_dir + "/%3/htdocs/" - -## -####################################################################### diff --git a/doc/config/conf.d/expire.conf b/doc/config/conf.d/expire.conf deleted file mode 100644 index 0ca0ab2..0000000 --- a/doc/config/conf.d/expire.conf +++ /dev/null @@ -1,22 +0,0 @@ -####################################################################### -## -## Expire Module -## --------------- -## -## See http://www.lighttpd.net/documentation/expire.html -## -server.modules += ( "mod_expire" ) - -## -## assignes a expiration to all files below the specified path. The -## specification of the time is made up of: -## -## <access|modification> <number> <years|months|days|hours|minutes|seconds> -## -#expire.url = ( -# "/buggy/" => "access 2 hours", -# "/images/" => "access plus 1 seconds 2 minutes" -#) - -## -####################################################################### diff --git a/doc/config/conf.d/fastcgi.conf b/doc/config/conf.d/fastcgi.conf deleted file mode 100644 index 49cff62..0000000 --- a/doc/config/conf.d/fastcgi.conf +++ /dev/null @@ -1,135 +0,0 @@ -####################################################################### -## -## FastCGI Module -## --------------- -## -## http://www.lighttpd.net/documentation/fastcgi.html -## -server.modules += ( "mod_fastcgi" ) - -## -## PHP Example -## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini. -## -## The number of php processes you will get can be easily calculated: -## -## num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN ) -## -## for the php-num-procs example it means you will get 17*5 = 85 php -## processes. you always should need this high number for your very -## busy sites. And if you have a lot of RAM. :) -## -#fastcgi.server = ( ".php" => -# ( "php-local" => -# ( -# "socket" => socket_dir + "/php-fastcgi-1.socket", -# "bin-path" => server_root + "/cgi-bin/php5", -# "max-procs" => 1, -# "broken-scriptfilename" => "enable", -# ) -# ), -# ( "php-tcp" => -# ( -# "host" => "127.0.0.1", -# "port" => 9999, -# "check-local" => "disable", -# "broken-scriptfilename" => "enable", -# ) -# ), -# -# ( "php-num-procs" => -# ( -# "socket" => socket_dir + "/php-fastcgi-2.socket", -# "bin-path" => server_root + "/cgi-bin/php5", -# "bin-environment" => ( -# "PHP_FCGI_CHILDREN" => "16", -# "PHP_FCGI_MAX_REQUESTS" => "10000", -# ), -# "max-procs" => 5, -# "broken-scriptfilename" => "enable", -# ) -# ), -# ) - -## -## Ruby on Rails Example -## -## Normally you only run one Rails application on one vhost. -## -#$HTTP["host"] == "rails1.example.com" { -# server.document-root = server_root + "/rails/someapp/public" -# server.error-handler-404 = "/dispatch.fcgi" -# fastcgi.server = ( ".fcgi" => -# ("someapp" => -# ( "socket" => socket_dir + "/someapp-fcgi.socket", -# "bin-path" => server_root + "/rails/someapp/public/dispatch.fcgi", -# "bin-environment" => ( -# "RAILS_ENV" => "production", -# "TMP" => home_dir + "/rails/someapp", -# ), -# ) -# ) -# ) -#} - -## -## Another example with multiple rails applications on one vhost. -## -## http://blog.lighttpd.net/articles/2005/11/23/lighttpd-1-4-8-and-multiple-rails-apps -## -#$HTTP["host"] == "rails2.example.com" { -# $HTTP["url"] =~ "^/someapp1" { -# server.document-root = server_root + "/rails/someapp1/public" -# server.error-handler-404 = "/dispatch.fcgi" -# fastcgi.server = ( ".fcgi" => -# ("someapp1" => -# ( "socket" => socket_dir + "/someapp1-fcgi.socket", -# "bin-path" => server_root + "/rails/someapp1/public/dispatch.fcgi", -# "bin-environment" => ( -# "RAILS_ENV" => "production", -# "TMP" => home_dir + "/rails/someapp1", -# ), -# "strip-request-uri" => "/someapp1/" -# ) -# ) -# ) -# } -# -# $HTTP["url"] =~ "^/someapp2" { -# server.document-root = server_root + "/rails/someapp2/public" -# server.error-handler-404 = "/dispatch.fcgi" -# fastcgi.server = ( ".fcgi" => -# ("someapp2" => -# ( "socket" => socket_dir + "/someapp2-fcgi.socket", -# "bin-path" => server_root + "/rails/someapp2/public/dispatch.fcgi", -# "bin-environment" => ( -# "RAILS_ENV" => "production", -# "TMP" => home_dir + "/rails/someapp2", -# ), -# "strip-request-uri" => "/someapp2/" -# ) -# ) -# ) -# } -#} - -## chrooted webserver + external PHP -## -## $ spawn-fcgi -f /usr/bin/php-cgi -p 2000 -a 127.0.0.1 -C 8 -## -## webserver chrooted to /srv/www/ -## php running outside the chroot -# -#fastcgi.server = ( -# ".php" => (( -# "host" => "127.0.0.1", -# "port" => "2000", -# "docroot" => "/srv/www/servers/www.example.org/htdocs/" -# ))) -# -#server.chroot = "/srv/www" -#server.document-root = "/servers/wwww.example.org/htdocs/" -# - -## -####################################################################### diff --git a/doc/config/conf.d/geoip.conf b/doc/config/conf.d/geoip.conf deleted file mode 100644 index 5b5b28b..0000000 --- a/doc/config/conf.d/geoip.conf +++ /dev/null @@ -1,26 +0,0 @@ -####################################################################### -## -## GeoIP Module -## --------------- -## -## mod_geoip is a module for fast ip/location lookups. It uses MaxMind -## GeoIP / GeoCity databases. If the ip was found in the database the -## module sets the appropriate environments variables to the request, -## thus making other modules/fcgi be informed. -## -server.modules += ( "mod_geoip" ) - -## -## mod_geoip will determine the database type automatically so if you -## enter GeoCity databse path it will load GeoCity Env. -## -#geoip.db-filename = "/path/to/GeoCityLite.dat" - -## -## If enabled, mod_geoip will load the database binary file to memory -## for very fast lookups. The only penalty is memory usage. -## -#geoip.memory-cache = "disable" - -## -####################################################################### diff --git a/doc/config/conf.d/magnet.conf b/doc/config/conf.d/magnet.conf deleted file mode 100644 index 1ebf529..0000000 --- a/doc/config/conf.d/magnet.conf +++ /dev/null @@ -1,22 +0,0 @@ -####################################################################### -## -## Magnet Module -## --------------- -## -## see http://trac.lighttpd.net/trac/wiki/Docs%3AModMagnet -## -server.modules += ( "mod_magnet" ) - -## -## -## -#magnet.attract-raw-url-to = ( ) - -## -## as an example for that see the mod_magnet docs and -## http://pixel.global-banlist.de./ -## -#magnet.attract-physical-path-to = ( conf_dir + "/cleanurl.lua" ) - -## -####################################################################### diff --git a/doc/config/conf.d/mime.conf b/doc/config/conf.d/mime.conf deleted file mode 100644 index a3c6f0c..0000000 --- a/doc/config/conf.d/mime.conf +++ /dev/null @@ -1,77 +0,0 @@ -####################################################################### -## -## MimeType handling -## ------------------- -## -## http://www.lighttpd.net/documentation/configuration.html#mimetypes -## -## Use the "Content-Type" extended attribute to obtain mime type if -## possible -## -mimetype.use-xattr = "disable" - -## -## mimetype mapping -## -mimetype.assign = ( - ".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", - ".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", - ".cpp" => "text/plain", - ".log" => "text/plain", - ".conf" => "text/plain", - ".text" => "text/plain", - ".txt" => "text/plain", - ".spec" => "text/plain", - ".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", - ".rpm" => "application/x-rpm", - # make the default mime type application/octet-stream. - "" => "application/octet-stream", - ) - - -# -####################################################################### - diff --git a/doc/config/conf.d/mod.template b/doc/config/conf.d/mod.template deleted file mode 100644 index fcfdac4..0000000 --- a/doc/config/conf.d/mod.template +++ /dev/null @@ -1,16 +0,0 @@ -####################################################################### -## -## Foo Module -## --------------- -## -## http://www.lighttpd.net/documentation/Foo.html -## -server.modules += ( "mod_Foo" ) - -## -## foo -## -#foo.bar = 1 - -## -####################################################################### diff --git a/doc/config/conf.d/mysql_vhost.conf b/doc/config/conf.d/mysql_vhost.conf deleted file mode 100644 index 63550c4..0000000 --- a/doc/config/conf.d/mysql_vhost.conf +++ /dev/null @@ -1,47 +0,0 @@ -####################################################################### -## -## Virtual hosting with MySQL -## ---------------------------- -## -## http://www.lighttpd.net/documentation/mysqlvhost.html -## -server.modules += ( "mod_mysql_vhost" ) - -## -## Either set the the socket or host (and port) -## -## Local path to the mysql socket -## -#mysql-vhost.sock = "/var/lib/mysql/mysql.sock" - -## -## Host of the MySQL server. -## -#mysql-vhost.hostname = "localhost" - -## -## Optional: port to use. -## -#mysql-vhost.port = 3306 - -## -## Name of the database -## -mysql-vhost.db = "lighttpd" - -## -## SQL User/Password for the connection -## -mysql-vhost.user = "lighttpd" -mysql-vhost.pass = "secret" - -## -## The query to get the needed informations from the database. -## -## It doesnt matter how you name the fields the first field is always used -## as the document root. -## -mysql-vhost.sql = "SELECT docroot FROM domains WHERE domain='?'" - -## -####################################################################### diff --git a/doc/config/conf.d/proxy.conf b/doc/config/conf.d/proxy.conf deleted file mode 100644 index f0552c2..0000000 --- a/doc/config/conf.d/proxy.conf +++ /dev/null @@ -1,35 +0,0 @@ -####################################################################### -## -## Proxy Module -## --------------- -## -## http://www.lighttpd.net/documentation/proxy.html -## -server.modules += ( "mod_proxy" ) - -## -## a value between 0 and 65535 to set the debug-level in the Proxy module. -## Currently only 0 and 1 are used. Use 1 to enable some debug output, 0 to -## disable it. -## -#proxy.debug = 1 - -## -## might be one of 'hash', 'round-robin' or 'fair' (default). -## -#proxy.balance = "fair" - -## -## Handle all jsp requests via 192.168.0.101 -## -#proxy.server = ( ".jsp" => -# ( "tomcat" => -# ( -# "host" => "192.168.0.101", -# "port" => 80 -# ) -# ) -# ) - -## -####################################################################### diff --git a/doc/config/conf.d/rrdtool.conf b/doc/config/conf.d/rrdtool.conf deleted file mode 100644 index c29013b..0000000 --- a/doc/config/conf.d/rrdtool.conf +++ /dev/null @@ -1,21 +0,0 @@ -####################################################################### -## -## RRD Tool Module -## ----------------- -## -## see http://www.lighttpd.net/documentation/rrdtool.html -## -server.modules += ( "mod_rrdtool" ) - -## -## Path to the rrdtool binary. -## -rrdtool.binary = "/usr/bin/rrdtool" - -## -## Path to the rrdtool database. You can override this in conditionals. -## -rrdtool.db-name = "/var/lib/lighttpd/lighttpd.rrd" - -## -####################################################################### diff --git a/doc/config/conf.d/scgi.conf b/doc/config/conf.d/scgi.conf deleted file mode 100644 index 3fcf280..0000000 --- a/doc/config/conf.d/scgi.conf +++ /dev/null @@ -1,51 +0,0 @@ -####################################################################### -## -## FastCGI Module -## --------------- -## -## http://www.lighttpd.net/documentation/scgi.html -## -server.modules += ( "mod_scgi" ) - -## -## Ruby on Rails Example -## -## Normally you only run one Rails application on one vhost. -## -#$HTTP["host"] == "rails1.example.com" { -# server.document-root = server_root + "/rails/someapp/public" -# server.error-handler-404 = "/dispatch.fcgi" -# scgi.server = ( ".scgi" => -# ("scgi-someapp" => -# ( "socket" => socket_dir + "/someapp-scgi.socket", -# "bin-path" => server_root + "/rails/someapp/public/dispatch.scgi", -# "bin-environment" => ( -# "RAILS_ENV" => "production", -# "TMP" => home_dir + "/rails/someapp", -# ), -# ) -# ) -# ) -#} - -## -## 2nd Ruby on Rails Example -## -## This time we launch the rails application via scgi_rails externally. -## -#$HTTP["host"] == "rails2.example.com" { -# server.document-root = server_root + "/rails/someapp/public" -# server.error-handler-404 = "/dispatch.scgi" -# scgi.server = ( ".scgi" => -# ( "scgi-tcp" => -# ( -# "host" => "127.0.0.1", -# "port" => 9998, -# "check-local" => "disable", -# ) -# ) -# ) -#} - -## -####################################################################### diff --git a/doc/config/conf.d/secdownload.conf b/doc/config/conf.d/secdownload.conf deleted file mode 100644 index 2d4d11a..0000000 --- a/doc/config/conf.d/secdownload.conf +++ /dev/null @@ -1,35 +0,0 @@ -####################################################################### -## -## Secure Download Module -## ------------------------ -## -## see http://www.lighttpd.net/documentation/secdownload.html -## -server.modules += ( "mod_secdownload" ) - -## -## Document root for the download area. -## The directory should not be below your normal -## document root! -## -#secdownload.document-root = server_root + "/downloads" - -## -## Secret string that will be used for the checksum calculation. -## -#secdownload.secret = "" - -## -## How long is the secret valid? -## -## Default: 60 seconds -## -#secdownload.timeout = 60 - -## -## Prefix for the download area. -## -#secdownload.uri-prefix = "/download/" - -## -####################################################################### diff --git a/doc/config/conf.d/simple_vhost.conf b/doc/config/conf.d/simple_vhost.conf deleted file mode 100644 index 220331e..0000000 --- a/doc/config/conf.d/simple_vhost.conf +++ /dev/null @@ -1,28 +0,0 @@ -####################################################################### -## -## Simple Virtual hosting -## ------------------------ -## -## http://www.lighttpd.net/documentation/simple-vhost.html -## -server.modules += ( "mod_simple_vhost" ) - -## 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 = vhosts_dir + "/" -simple-vhost.default-host = "default.example.com" -simple-vhost.document-root = "/htdocs/" - -## -## Print some errors for finding the document-root -## -#simple-vhost.debug = "enable" - -## -####################################################################### diff --git a/doc/config/conf.d/ssi.conf b/doc/config/conf.d/ssi.conf deleted file mode 100644 index a82d1a5..0000000 --- a/doc/config/conf.d/ssi.conf +++ /dev/null @@ -1,16 +0,0 @@ -####################################################################### -## -## Server Side Includes -## ----------------------- -## -## see /usr/share/doc/packages/lighttpd/ssi.html -## -server.modules += ( "mod_ssi" ) - -## -## which extensions should be ran through mod_ssi. -## -ssi.extension = ( ".shtml" ) - -## -####################################################################### diff --git a/doc/config/conf.d/status.conf b/doc/config/conf.d/status.conf deleted file mode 100644 index 946939f..0000000 --- a/doc/config/conf.d/status.conf +++ /dev/null @@ -1,24 +0,0 @@ -####################################################################### -## -## Status Module -## --------------- -## -## see http://www.lighttpd.net/documentation/status.html -## -server.modules += ( "mod_status" ) - -$HTTP["remoteip"] == "127.0.0.0/8" { -## -## configure urls for the various parts of the module. -## - status.status-url = "/server-status" - status.config-url = "/server-config" - status.statistics-url = "/server-statistics" -## -## add JavaScript which allows client-side sorting for the connection -## overview -## - status.enable-sort = "enable" -} -## -####################################################################### diff --git a/doc/config/conf.d/trigger_b4_dl.conf b/doc/config/conf.d/trigger_b4_dl.conf deleted file mode 100644 index 1efd3fd..0000000 --- a/doc/config/conf.d/trigger_b4_dl.conf +++ /dev/null @@ -1,70 +0,0 @@ -####################################################################### -## -## Trigger before download -## --------------- -## -## - if user requests ''download-url'' directly, the request is denied -## and he is redirected to ''deny-url' -## - if user visits ''trigger-url'' before requesting ''download-url'', -## access is granted -## - if user visits ''download-url'' again after ''trigger-timeout'' has -## elapsed, the request is denied and he is redirected to ''deny-url'' -## -## http://www.lighttpd.net/documentation/trigger_b4_dl.html -## -server.modules += ( "mod_mod_trigger_b4_dl" ) - -## -## To store the trigger state you can either use a local GDBM -## file or memcached(s). -## - -## -## Path to the local GDBM file. -## -trigger-before-download.gdbm-filename = home_dir + "/trigger.db" - -## -## List of memcached servers. -## -#trigger-before-download.memcache-hosts = ( "127.0.0.1:11211" ) - -## -## URL prefix a visitor has to visit before downloading is allowed -## -trigger-before-download.trigger-url = "^/trigger/" - -## -## URL Prefix of the proteced area. -## -trigger-before-download.download-url = "^/download/" - -## -## -## The deny url. -## -trigger-before-download.deny-url = "http://www.example.com/index.html" - -## -## How long the "ticket" of the user will be valid. -## -## Value in seconds. -## -trigger-before-download.trigger-timeout = 10 - -## -## Normally the memcached key will be the remote ip of the request -## If you store other data in the memcached aswell and want to avoid -## key collisions you can configure a memcache-namespace. -## -## The key for the request will be memcache-namespace + remote_ip than. -## -#trigger-before-download.memcache-namespace = "t4bdl_" - -## -## If set to 1, the module will log some debug informations. -## -#trigger-before-download.debug = 0 - -## -####################################################################### diff --git a/doc/config/conf.d/userdir.conf b/doc/config/conf.d/userdir.conf deleted file mode 100644 index 1e3691e..0000000 --- a/doc/config/conf.d/userdir.conf +++ /dev/null @@ -1,37 +0,0 @@ -####################################################################### -## -## Userdir Module -## ---------------- -## -## for all details see: -## http://www.lighttpd.net/documentation/userdir.html -## -server.modules += ( "mod_userdir" ) - -## -## usually it should be set to "public_html" to take ~/public_html/ as -## the document root -## Default: empty (document root is the home directory) -## -userdir.path = "public_html" - -## -## If set, don't check /etc/passwd for homedir -## Default: empty -#userdir.basepath = server_root + "/users/" - -## -## list of usernames which may not use this feature -## Default: empty (all users may use it) -## -#userdir.exclude-user = ( "root", "postmaster" ) - -## -## if set, only users from this list may use the feature -## Default: empty (all users may use it) -## -#userdir.include-user = ("user1", "user2") - -## -####################################################################### - diff --git a/doc/config/conf.d/webdav.conf b/doc/config/conf.d/webdav.conf deleted file mode 100644 index 2c37335..0000000 --- a/doc/config/conf.d/webdav.conf +++ /dev/null @@ -1,33 +0,0 @@ -####################################################################### -## -## WebDAV Module -## --------------- -## -## http://www.lighttpd.net/documentation/webdav.html -## -server.modules += ( "mod_webdav" ) - -$HTTP["url"] =~ "^/dav($|/)" { - ## - ## enable webdav for this location - ## - webdav.activate = "enable" - - ## - ## By default the webdav url is writable. - ## Uncomment the following line if you want to make it readonly. - ## - #webdav.is-readonly = "enable" - - ## - ## Log the XML Request bodies for debugging - ## - #webdav.log-xml = "disable" - - ## - ## - ## - webdav.sqlite-db-name = home_dir + "/webdav.db" -} -## -####################################################################### diff --git a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf deleted file mode 100644 index 47d6729..0000000 --- a/doc/config/lighttpd.conf +++ /dev/null @@ -1,445 +0,0 @@ -####################################################################### -## -## /etc/lighttpd/lighttpd.conf -## -## check /etc/lighttpd/conf.d/*.conf for the configuration of modules. -## -####################################################################### - -####################################################################### -## -## 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" - -## -## 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" - -## -## Some additional variables to make the configuration easier -## - -## -## 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" - -## -## Cache for mod_compress -## -## used in: -## conf.d/compress.conf -## -var.cache_dir = "/var/cache/lighttpd" - -## -## 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 - -## -## Use IPv6? -## -server.use-ipv6 = "enable" - -## -## bind to a specific IP -## -#server.bind = "localhost" - -## -## 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" - -## -## 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" - -## -####################################################################### - -####################################################################### -## -## Logging Options -## ------------------ -## -## all logging options can be overwritten per vhost. -## -## 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 -## -include "conf.d/access_log.conf" - -## -## 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" - -## -####################################################################### - -####################################################################### -## -## 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" ) -#} - -## -## 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" -## # -## # Mitigate BEAST attack: -## # -## # A stricter base cipher suite. For details see: -## # http://blog.ivanristic.com/2011/10/mitigating-the-beast-attack-on-tls.html -## # -## ssl.cipher-list = "ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM" -## # -## # Make the server prefer the order of the server side cipher suite instead of the client suite. -## # This is necessary to mitigate the BEAST attack (unless you disable all non RC4 algorithms). -## # This option is enabled by default, but only used if ssl.cipher-list is set. -## # -## # ssl.honor-cipher-order = "enable" -## # -## # Mitigate CVE-2009-3555 by disabling client triggered renegotation -## # This is enabled by default. -## # -## # ssl.disable-client-renegotiation = "enable" -## # -## 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/doc/config/modules.conf b/doc/config/modules.conf deleted file mode 100644 index 99a3c3f..0000000 --- a/doc/config/modules.conf +++ /dev/null @@ -1,172 +0,0 @@ -####################################################################### -## -## Modules to load -## ----------------- -## -## at least mod_access and mod_accesslog should be loaded -## all other module should only be loaded if really neccesary -## -## - saves some time -## - saves memory -## -## the default module set contains: -## -## "mod_indexfile", "mod_dirlisting", "mod_staticfile" -## -## you dont have to include those modules in your list -## -## Modules, which are pulled in via conf.d/*.conf -## -## NOTE: the order of modules is important. -## -## - mod_accesslog -> conf.d/access_log.conf -## - mod_compress -> conf.d/compress.conf -## - mod_status -> conf.d/status.conf -## - mod_webdav -> conf.d/webdav.conf -## - mod_cml -> conf.d/cml.conf -## - mod_evhost -> conf.d/evhost.conf -## - mod_simple_vhost -> conf.d/simple_vhost.conf -## - mod_mysql_vhost -> conf.d/mysql_vhost.conf -## - mod_trigger_b4_dl -> conf.d/trigger_b4_dl.conf -## - mod_userdir -> conf.d/userdir.conf -## - mod_rrdtool -> conf.d/rrdtool.conf -## - mod_ssi -> conf.d/ssi.conf -## - mod_cgi -> conf.d/cgi.conf -## - mod_scgi -> conf.d/scgi.conf -## - mod_fastcgi -> conf.d/fastcgi.conf -## - mod_proxy -> conf.d/proxy.conf -## - mod_secdownload -> conf.d/secdownload.conf -## - mod_expire -> conf.d/expire.conf -## - -server.modules = ( - "mod_access", -# "mod_alias", -# "mod_auth", -# "mod_evasive", -# "mod_redirect", -# "mod_rewrite", -# "mod_setenv", -# "mod_usertrack", -) - -## -####################################################################### - -####################################################################### -## -## Config for various Modules -## - -## -## mod_ssi -## -#include "conf.d/ssi.conf" - -## -## mod_status -## -#include "conf.d/status.conf" - -## -## mod_webdav -## -#include "conf.d/webdav.conf" - -## -## mod_compress -## -#include "conf.d/compress.conf" - -## -## mod_userdir -## -#include "conf.d/userdir.conf" - -## -## mod_magnet -## -#include "conf.d/magnet.conf" - -## -## mod_cml -## -#include "conf.d/cml.conf" - -## -## mod_rrdtool -## -#include "conf.d/rrdtool.conf" - -## -## mod_proxy -## -#include "conf.d/proxy.conf" - -## -## mod_expire -## -#include "conf.d/expire.conf" - -## -## mod_secdownload -## -#include "conf.d/secdownload.conf" - -## -####################################################################### - -####################################################################### -## -## CGI modules -## - -## -## SCGI (mod_scgi) -## -#include "conf.d/scgi.conf" - -## -## FastCGI (mod_fastcgi) -## -#include "conf.d/fastcgi.conf" - -## -## plain old CGI (mod_cgi) -## -#include "conf.d/cgi.conf" - -## -####################################################################### - -####################################################################### -## -## VHost Modules -## -## Only load ONE of them! -## ======================== -## - -## -## You can use conditionals for vhosts aswell. -## -## see http://www.lighttpd.net/documentation/configuration.html -## - -## -## mod_evhost -## -#include "conf.d/evhost.conf" - -## -## mod_simple_vhost -## -#include "conf.d/simple_vhost.conf" - -## -## mod_mysql_vhost -## -#include "conf.d/mysql_vhost.conf" - -## -####################################################################### diff --git a/doc/config/vhosts.d/Makefile.am b/doc/config/vhosts.d/Makefile.am deleted file mode 100644 index 51d9376..0000000 --- a/doc/config/vhosts.d/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -EXTRA_DIST=vhosts.template diff --git a/doc/config/vhosts.d/Makefile.in b/doc/config/vhosts.d/Makefile.in deleted file mode 100644 index a6e536d..0000000 --- a/doc/config/vhosts.d/Makefile.in +++ /dev/null @@ -1,401 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/config/vhosts.d -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -EXTRA_DIST = vhosts.template -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/config/vhosts.d/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/config/vhosts.d/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/config/vhosts.d/vhosts.template b/doc/config/vhosts.d/vhosts.template deleted file mode 100644 index 2c443aa..0000000 --- a/doc/config/vhosts.d/vhosts.template +++ /dev/null @@ -1,33 +0,0 @@ -####################################################################### -## -## For more examples check: -## -## http://www.lighttpd.net/documentation/configuration.html#conditional-configuration -## -$HTTP["host"] == "download.example.com" { - var.server_name = "download.example.com" - - server.name = server_name - ## - ## use trigger before download - ## - include "conf.d/trigger_b4_dl.conf" - - server.document-root = vhosts_dir + "/example.com/download/htdocs" - ## - ## use a seperate access log file - ## At the moment you cant have different error log files. - ## - accesslog.filename = log_root + "/" + server_name "/access.log" -} - -$SERVER["socket"] == "127.0.0.1:443" { - server.name = "localhost" - ssl.pemfile = "/etc/ssl/private/lighttpd-localhost.pem" - ssl.engine = "enable" - - server.document-root = vhosts_dir + "/ssl-localhost/pages/" -} - -## -####################################################################### diff --git a/doc/outdated/configuration.txt b/doc/configuration.txt index 3d49f7f..106b008 100644 --- a/doc/outdated/configuration.txt +++ b/doc/configuration.txt @@ -7,15 +7,15 @@ Module: core ------------ :Author: Jan Kneschke -:Date: $Date$ -:Revision: $Revision$ +:Date: $Date: 2005-11-11 13:43:16 +0100 (Fri, 11 Nov 2005) $ +:Revision: $Revision: 835 $ :abstract: the layout of the configuration file - + .. meta:: :keywords: lighttpd, configuration - + .. contents:: Table of Contents Description @@ -36,25 +36,25 @@ A BNF like notation: :: <array> : "(" [ <string> "=>" ] <value> [, [ <string> "=>" ] <value> ]* ")" INCLUDE : "include" VALUE INCLUDE_SHELL : "include_shell" STRING_VALUE - + Example ------- :: - + # default document-root server.document-root = "/var/www/example.org/pages/" - + # TCP port server.port = 80 - + # selecting modules server.modules = ( "mod_access", "mod_rewrite" ) - + # variables, computed when config is read. var.mymodule = "foo" server.modules += ( "mod_" + var.mymodule ) - # var.PID is initialised to the pid of lighttpd before config is parsed + var.PID is initized to the pid of lighttpd before config is parsed # include, relative to dirname of main config file include "mime.types.conf" @@ -85,31 +85,20 @@ where <field> is one of one of the following: $HTTP["cookie"] match on cookie -$HTTP["scheme"] - match on scheme $HTTP["host"] match on host $HTTP["useragent"] -$HTTP["user-agent"] match on useragent $HTTP["referer"] match on referer -$HTTP["method"] - math on the http method $HTTP["url"] match on url -$HTTP["query-string"] - match on the (not decoded) query-string $HTTP["remoteip"] -$HTTP["remote-ip"] match on the remote IP or a remote Network -$HTTP["language"] - match on the Accept-Language header $SERVER["socket"] - match on socket. Value must be on the format "ip:port" where ip is an IP - address and port a port number. Only equal match (==) is supported. - It also binds the daemon to this socket. Use this if you want to do IP/port- - based virtual hosts. + match on socket. Value must be on the format "$ip:$port" where $ip is an IP + address and $port a port number. Only equal match (==) is supported. + It also binds to this socket. <operator> is one of: @@ -135,22 +124,22 @@ Example $HTTP["url"] =~ "^/download/" { dir-listing.activate = "disable" } - + # handish virtual hosting - # map all domains of a top-level-domain to a single document-root - $HTTP["host"] =~ "(^|\.)example\.org$" { + # map all subdomains to a single document-root + $HTTP["host"] =~ "\.example\.org$" { server.document-root = "/var/www/htdocs/example.org/pages/" } - + # multiple sockets $SERVER["socket"] == "127.0.0.1:81" { server.document-root = "..." } - + $SERVER["socket"] == "127.0.0.1:443" { ssl.pemfile = "/var/www/certs/localhost.pem" ssl.engine = "enable" - + server.document-root = "/var/www/htdocs/secure.example.org/pages/" } @@ -158,88 +147,19 @@ Example $HTTP["useragent"] =~ "Google" { url.access-deny = ( "" ) } - + # deny access for all image stealers $HTTP["referer"] !~ "^($|http://www\.example\.org)" { url.access-deny = ( ".jpg", ".jpeg", ".png" ) } - # deny the access to www.example.org to all user which + # deny the access to www.example.org to all user which # are not in the 10.0.0.0/8 network $HTTP["host"] == "www.example.org" { $HTTP["remoteip"] != "10.0.0.0/8" { url.access-deny = ( "" ) } - } - -Using variables -=============== - -You can set your own variables in the configuration to simplify your config. -:: - - var.basedir = "/home/www/servers/" - $HTTP["host"] == "www.example.org" { - server.name = "www.example.org" - include "incl-base.conf" - } - - in incl-base.conf: - server.document-root = basedir + server.name + "/pages/" - accesslog.filename = basedir + server.name + "/logs/access.log" - -You can also use environement variables or the default variables var.PID and -var.CWD: :: - - var.basedir = env.LIGHTTPDBASE - - $HTTP["host"] == "www.example.org" { - server.name = "www.example.org" - include "incl-base.conf" - include "incl-fastcgi.conf" - } - - in incl-fastcgi.conf: - fastcgi.server = ( ... => (( - "socket" => basedir + server.name + "/tmp/fastcgi-" + PID + ".sock" - )) ) - -Or like the lighttpd script for rails does: - - var.basedir = var.CWD - - server.document-root = basedir + "/public/" - -Global context -============== - -:: - - global { - ... - } - -You don't need it in the main configuration file. But you might have -difficulty setting server wide configuration inside a included-file from -conditionals. - -Example -------- - -:: - - in lighttpd.conf: - server.modules = () - $HTTP["host"] == "www.example.org" { - include "incl-php.conf" - } - - in incl-php.conf: - global { - server.modules += ("mod_fastcgi") - static-file.exclude-extensions += (".php") - } - fastcgi.server = "..." + } Options ======= @@ -258,75 +178,72 @@ server.document-root might have specified with one of the above conditionals. Default: no default, required - + server.bind - IP address, hostname or absolute path to the unix-domain socket the server - listen on. - + hostname of the server + Default: bind to all interfaces - - Example: :: - - server.bind = "127.0.0.1" - server.bind = "www.example.org" - server.bind = "/tmp/lighttpd.socket" - + server.port tcp-port to bind the server to - + .. note:: port belows 1024 require root-permissions - + Default: 80 (443 if ssl is enabled) - + server.use-ipv6 bind to the IPv6 socket - -server.defer-accept - set TCP_DEFER_ACCEPT to the specified value on the socket if the value is > 0 - and TCP_DEFER_ACCEPT is available on the platform (linux2.4+) - - default: 0 - -server.tag - set the string returned by the Server: response header - - Default: lighttpd <current-version> - + server.errorlog pathname of the error-log - + Default: either STDERR or ``server.errorlog-use-syslog`` - + server.errorlog-use-syslog send errorlog to syslog - + Default: disabled - + server.chroot root-directory of the server - - NOTE: requires root-permissions - + server.username username used to run the server - + NOTE: requires root-permissions server.groupname groupname used to run the server - + NOTE: requires root-permissions +dir-listing.activate + enables virtual directory listings if a directory is requested no + index-file was found + +dir-listing.hide-dotfiles + if enabled, does not list hidden files in directory listings generated + by the dir-listing option. + + Default: enabled + +dir-listing.external-css + path to an external css stylesheet for the directory listing + +dir-listing.exclude + list of regular expressions. Files that match any of the specified regular + expressions will be excluded from directory listings. + server.follow-symlink allow to follow-symlinks - + Default: enabled index-file.names list of files to search for if a directory is requested e.g.: :: - index-file.names = ( "index.php", "index.html", + index-file.names = ( "index.php", "index.html", "index.htm", "default.htm" ) if a name starts with slash this file will be used a index generator @@ -334,119 +251,105 @@ index-file.names server.modules modules to load - -.. note:: the order of the modules is important. - - The modules are executed in the order as they are specified. Loading - mod_auth AFTER mod_fastcgi might disable authentication for fastcgi - backends (if check-local is disabled). - - As auth should be done first, move it before all executing modules (like - proxy, fastcgi, scgi and cgi). - - rewrites, redirects and access should be first, followed by auth and - the docroot plugins. - - Afterwards the external handlers like fastcgi, cgi, scgi and proxy and - at the bottom the post-processing plugins like mod_accesslog. - + +.. note:: the order of the modules is somewhat important as the modules are + handled in the way they are specified. mod_rewrite should always be + the first module, mod_accesslog always the last. + e.g.: :: - server.modules = ( "mod_rewrite", - "mod_redirect", + server.modules = ( "mod_rewrite", + "mod_redirect", "mod_alias", - "mod_access", - "mod_auth", - "mod_status", + "mod_access", + "mod_auth", + "mod_status", + "mod_fastcgi", + "mod_proxy", "mod_simple_vhost", "mod_evhost", "mod_userdir", - "mod_secdownload", - "mod_fastcgi", - "mod_proxy", "mod_cgi", - "mod_ssi", "mod_compress", + "mod_ssi", "mod_usertrack", "mod_expire", + "mod_secdownload", "mod_rrdtool", "mod_accesslog" ) Starting with lighttpd 1.4.0 three default modules are loaded automaticly: - - mod_indexfile + - mod_indexfiles - mod_dirlisting - mod_staticfile server.event-handler - set the event handler - + set the event handler + Default: "poll" server.pid-file - set the name of the .pid-file where the PID of the server should be placed. - This option is used in combination with a start-script and the daemon mode - + set the name of the .pid-file where the PID of the server should be placed. + This option is used in combination with a start-script and the deamon mode + Default: not set - + server.max-request-size - maximum size in kbytes of the request (header + body). Only applies to POST - requests. - - Default: 2097152 (2GB) + maximum size in kbytes of the request (header + body) + + Default: 2Gb server.max-worker - number of worker processes to spawn. This is usually only needed on servers - which are fairly loaded and the network handler calls delay often (e.g. new - requests are not handled instantaneously). - + number of worker processes to spawn (works but has no benefit) + Default: 0 - + server.name name of the server/virtual server - + Default: hostname server.max-keep-alive-requests - maximum number of request within a keep-alive session before the server + maximum number of request within a keep-alive session before the server terminates the connection - + Default: 128 server.max-keep-alive-idle maximum number of seconds until a idling keep-alive connection is droped - + Default: 30 server.max-read-idle - maximum number of seconds until a waiting, non keep-alive read times out + maximum number of seconds until a waiting, non keep-alive read times out and closes the connection - + Default: 60 server.max-write-idle maximum number of seconds until a waiting write call times out and closes the connection - + Default: 360 server.error-handler-404 uri to call if the requested file results in a 404 Default: not set - + Example: :: - + server.error-handler-404 = "/error-404.php" server.protocol-http11 defines if HTTP/1.1 is allowed or not. - + Default: enabled server.range-requests defines if range requests are allowed or not. - + Default: enabled @@ -461,9 +364,9 @@ debugging debug.dump-unknown-headers enables listing of internally unhandled HTTP-headers - + e.g. :: - + debug.dump-unknown-headers = "enable" mimetypes @@ -472,20 +375,20 @@ mimetypes mimetype.assign list of known mimetype mappings NOTE: if no mapping is given "application/octet-stream" is used - + e.g.: :: - - mimetype.assign = ( ".png" => "image/png", + + mimetype.assign = ( ".png" => "image/png", ".jpg" => "image/jpeg", ".jpeg" => "image/jpeg", ".html" => "text/html", ".txt" => "text/plain" ) - The list is compared top down and the first match is taken. This is + The list is compared top down and the first match is taken. This is important if you have matches like: :: ".tar.gz" => "application/x-tgz", - ".gz" => "application/x-gzip", + ".gz" => "application/x-gzip", If you want to set another default mimetype use: :: @@ -499,17 +402,17 @@ mimetype.use-xattr retrieve the "Content-Type" attribute on each file, and use that as the mime type. If it's not defined or not available, fall back to the mimetype.assign assignment. - + e.g.: :: - + mimetype.use-xattr = "enable" - + on shell use: - + $ attr -s Content-Type -V image/svg svgfile.svg - + or - + $ attr -s Content-Type -V text/html indexfile @@ -517,16 +420,17 @@ debugging ````````` debug.log-request-header - default: disabled + default: disabled + debug.log-response-header - default: disabled + + default: disabled debug.log-file-not-found - default: disabled + + default: disabled debug.log-request-handling - default: disabled -debug.log-ssl-noise - default: disabled + default: disabled diff --git a/doc/outdated/expire.txt b/doc/expire.txt index ca59c42..2aee938 100644 --- a/doc/outdated/expire.txt +++ b/doc/expire.txt @@ -12,17 +12,17 @@ Module: mod_expire :abstract: mod_expire controls the setting of the the Expire Response header - + .. meta:: :keywords: lighttpd, expire - + .. contents:: Table of Contents Description =========== mod_expire controls the Expire header in the Response Header of HTTP/1.0 -messages. It is usefull to set it for static files which should be cached +messages. It is usefull to set it for static files which should be cached aggressivly like images, stylesheets or similar. Options @@ -35,8 +35,8 @@ expire.url <access|modification> <number> <years|months|days|hours|minutes|seconds> following the syntax used by mod_expire in Apache 1.3.x and later. - + Example: :: - + expire.url = ( "/images/" => "access 1 hour" ) - + diff --git a/doc/outdated/fastcgi-state.dot b/doc/fastcgi-state.dot index 8e3068c..8e3068c 100644 --- a/doc/outdated/fastcgi-state.dot +++ b/doc/fastcgi-state.dot diff --git a/doc/outdated/fastcgi-state.txt b/doc/fastcgi-state.txt index a05d2c2..9e76a6f 100644 --- a/doc/outdated/fastcgi-state.txt +++ b/doc/fastcgi-state.txt @@ -11,13 +11,13 @@ Module: fastcgi :Revision: $Revision: 1.1 $ :abstract: - This is a short summary of the state-engine which is driving the FastCGI + This is a short summary of the state-engine which is driving the FastCGI module. It describes the basic concepts and the way the different parts of the module are connected. - + .. meta:: :keywords: lighttpd, state-engine, fastcgi - + .. contents:: Table of Contents Description @@ -27,7 +27,7 @@ States ------ The state-engine is currently made of 6 states which are walk-through on -the way each connection. +the way each connection. :init: prepare fastcgi-connection @@ -41,7 +41,7 @@ the way each connection. read fastcgi-response from network and push it to the write-queue :close: terminate the connection - + .. image:: fastcgi-state.png Delays diff --git a/doc/fastcgi.txt b/doc/fastcgi.txt new file mode 100644 index 0000000..a9ab948 --- /dev/null +++ b/doc/fastcgi.txt @@ -0,0 +1,637 @@ +===================== +the FastCGI Interface +===================== + +------------------- +Module: mod_fastcgi +------------------- + +:Author: Jan Kneschke +:Date: $Date: 2004/11/03 22:26:05 $ +:Revision: $Revision: 1.3 $ + +:abstract: + The FastCGI interface is the fastest and most secure way + to interface external process-handlers like Perl, PHP and + your self-written applications. + +.. meta:: + :keywords: lighttpd, FastCGI + +.. contents:: Table of Contents + +Description +=========== + +lighttpd provides an interface to a external programs that +support the FastCGI interface. The FastCGI Interface is +defined by http://www.fastcgi.com/ and is a +platform-independent and server independent interface between +a web-application and a webserver. + +This means that FastCGI programs that run with the Apache +Webserver will run seamlessly with lighttpd and vice versa. + + +FastCGI +------- + +FastCGI is removes a lot of the limitations of CGI programs. +CGI programs have the problem that they have to be restarted +by the webserver for every request which leads to really bad +performance values. + +FastCGI removes this limitation by keeping the process running +and handling the requests by this always running process. This +removes the time used for the fork() and the overall startup +and cleanup time which is necessary to create and destroy a +process. + +While CGI programs communicate to the server over pipes, +FastCGI processes use Unix-Domain-Sockets or TCP/IP to talk +with the webserver. This gives you the second advantage over +simple CGI programs: FastCGI don't have to run on the Webserver +itself but everywhere in the network. + +lighttpd takes it a little bit further by providing a internal +FastCGI load-balancer which can be used to balance the load +over multiple FastCGI Servers. In contrast to other solutions +only the FastCGI process has to be on the cluster and not the +whole webserver. That gives the FastCGI process more resources +than a e.g. load-balancer+apache+mod_php solution. + +If you compare FastCGI against a apache+mod_php solution you +should note that FastCGI provides additional security as the +FastCGI process can be run under different permissions that +the webserver and can also live a chroot which might be +different than the one the webserver is running in. + +Options +======= + +lighttpd provides the FastCGI support via the fastcgi-module +(mod_fastcgi) which provides 2 options in the config-file: + +fastcgi.debug + a value between 0 and 65535 to set the debug-level in the + FastCGI module. Currently only 0 and 1 are used. Use 1 to + enable some debug output, 0 to disable it. + +fastcgi.server + tell the module where to send FastCGI requests to. Every + file-extension can have it own handler. Load-Balancing is + done by specifying multiple handles for the same extension. + + structure of fastcgi.server section: :: + + ( <extension> => + ( + ( "host" => <string> , + "port" => <integer> , + "socket" => <string>, # either socket + # or host+port + "bin-path" => <string>, # OPTIONAL + "bin-environment" => <array>, # OPTIONAL + "bin-copy-environment" => <array>, # OPTIONAL + "mode" => <string>, # OPTIONAL + "docroot" => <string> , # OPTIONAL if "mode" + # is not "authorizer" + "check-local" => <string>, # OPTIONAL + "min-procs" => <integer>, # OPTIONAL + "max-procs" => <integer>, # OPTIONAL + "max-load-per-proc" => <integer>, # OPTIONAL + "idle-timeout" => <integer>, # OPTIONAL + "broken-scriptfilename" => <boolean>, # OPTIONAL + "disable-time" => <integer>, # optional + "allow-x-send-file" => <boolean> # optional + ), + ( "host" => ... + ) + ) + ) + + :<extension>: is the file-extension or prefix + (if started with "/") + :"host": is hostname/ip of the FastCGI process + :"port": is tcp-port on the "host" used by the FastCGI + process + :"bin-path": path to the local FastCGI binary which should be + started if no local FastCGI is running + :"socket": path to the unix-domain socket + :"mode": is the FastCGI protocol mode. + Default is "responder", also "authorizer" + mode is implemented. + :"docroot": is optional and is the docroot on the remote + host for default "responder" mode. For + "authorizer" mode it is MANDATORY and it points + to docroot for authorized requests. For security + reasons it is recommended to keep this docroot + outside of server.document-root tree. + :"check-local": is optional and may be "enable" (default) or + "disable". If enabled the server first check + for a file in local server.document-root tree + and return 404 (Not Found) if no such file. + If disabled, the server forward request to + FastCGI interface without this check. + :"broken-scriptfilename": breaks SCRIPT_FILENAME in a wat that + PHP can extract PATH_INFO from it (default: disabled) + :"disable-time": time to wait before a disabled backend is checked + again + :"allow-x-send-file": controls if X-LIGHTTPD-send-file headers + are allowed + + If bin-path is set: + + :"min-procs": sets the minium processes to start + :"max-procs": the upper limit of the processess to start + :"max-load-per-proc": maximum number of waiting processes on + average per process before a new process is + spawned + :"idle-timeout": number of seconds before a unused process + gets terminated + :"bin-environment": put an entry into the environment of + the started process + :"bin-copy-environement": clean up the environment and copy + only the specified entries into the fresh + environment of the spawn process + + +Examples +-------- + + Multiple extensions for the same host :: + + fastcgi.server = ( ".php" => + ( "grisu" => + ( + "host" => "127.0.0.1", + "port" => 1026, + "bin-path" => "/usr/local/bin/php" + ) + ), + ".php4" => + ( "grisu" => + ( + "host" => "127.0.0.1", + "port" => 1026 + ) + ) + ) + + Example with prefix: :: + + fastcgi.server = ( "/remote_scripts/" => + ( "fcg" => + ( + "host" => "192.168.0.3", + "port" => 9000, + "check-local" => "disable", + "docroot" => "/" # remote server may use + # it's own docroot + ) + ) + ) + + The request `http://my.host.com/remote_scripts/test.cgi` will + be forwarded to fastcgi server at 192.168.0.3 and the value + "/remote_scripts/test.cgi" will be used for the SCRIPT_NAME + variable. Remote server may prepend it with its own + document root. The handling of index files si also the + resposibility of remote server for this case. + + In the case that the prefix is not terminated with a slash + the prefix will be handled as file and /test.cgi would become + a PATH_INFO instead of part of SCRIPT_NAME. + + + Example for "authorizer" mode: :: + + fastcgi.server = ( "/remote_scripts/" => + ( "auth" => + ( + "host" => "10.0.0.2", + "port" => 9000, + "docroot" => "/path_to_private_docs", + "mode" => "authorizer" + ) + ) + ) + + Note that if "docroot" is specified then its value will be + used in DOCUMENT_ROOT and SCRIPT_FILENAME variables passed + to FastCGI server. + +Load-Balancing +============== + +The FastCGI plugin provides automaticly a load-balancing between +multiple FastCGI servers. :: + + fastcgi.server = ( ".php" => + ( "server1" => + ( "host" => "10.0.0.3", + "port" => 1030 ), + "server2" => + ( "host" => "10.0.0.3", + "port" => 1030 ) + ) + ) + + + + +To understand how the load-balancing works you can enable the +fastcgi.debug option and will get a similar output as here: :: + + proc: 127.0.0.1 1031 1 1 1 31454 + proc: 127.0.0.1 1028 1 1 1 31442 + proc: 127.0.0.1 1030 1 1 1 31449 + proc: 127.0.0.1 1029 1 1 2 31447 + proc: 127.0.0.1 1026 1 1 2 31438 + got proc: 34 31454 + release proc: 40 31438 + proc: 127.0.0.1 1026 1 1 1 31438 + proc: 127.0.0.1 1028 1 1 1 31442 + proc: 127.0.0.1 1030 1 1 1 31449 + proc: 127.0.0.1 1031 1 1 2 31454 + proc: 127.0.0.1 1029 1 1 2 31447 + +Even if this for multiple FastCGI children on the local machine +the following explaination is valid for remote connections too. + +The output shows: + +- IP, port, unix-socket (is empty here) +- is-local, state (0 - unset, 1 - running, ... ) +- active connections (load) +- PID + +As you can see the list is always sorted by the load field. + +When ever a new connection is requested, the first entry (the one +with the lowest load) is selected, the load is increase (got proc: ...) +and the list is sorted again. + +If a FastCGI request is done or the connection is drop, the load on the +FastCGI proc decreases and the list is sorted again (release proc: ...) + +This behaviour is very light-weight in code and still very efficient +as it keeps the fastcgi-servers equally loaded even if they have different +CPUs. + +Adaptive Process Spawning +========================= + +.. note:: This feature is disabled in 1.3.14 again. min-procs is + ignored in that release + +Starting with 1.3.8 lighttpd can spawn processes on demand if +a bin-path is specified and the FastCGI process runs locally. + +If you want to have a least one FastCGI process running and +more of the number of requests increases you can use min-procs +and max-procs. + +A new process is spawned as soon as the average number of +requests waiting to be handle by a single process increases the +max-load-per-proc setting. + +The idle-timeout specifies how long a fastcgi-process should wait +for a new request before it kills itself. + +Example +------- +:: + + fastcgi.server = ( ".php" => ( "localhost" => + ( "socket" => "/tmp/php.socket", + "bin-path" => "/usr/local/bin/php", + "min-procs" => 1, + "max-procs" => 32, + "max-load-per-proc" => 4, + "idle-timeout" => 20 ) + ) ) + +Disabling Adaptive Spawning +--------------------------- + +Adaptive Spawning is a quite new feature and it might misbehave +for your setup. There are several ways to control how the spawing +is done: + +1. ``"max-load-per-proc" => 1`` + if that works for you, great. + +2. If not set ``min-procs == max-procs``. + +3. For PHP you can also use: :: + + $ PHP_FCGI_CHILDREN=384 ./lighttpd -f ./lighttpd.conf + + fastcgi.server = ( ".php" => ( "localhost" => + ( "socket" => "/tmp/php.socket", + "bin-path" => "/usr/local/bin/php", + "min-procs" => 1, + "max-procs" => 1, + "max-load-per-proc" => 4, + "idle-timeout" => 20 ) + ) ) + + It will create one socket and let's PHP create the 384 processes itself. + +4. If you don't want lighttpd to manage the fastcgi processes, remove the + bin-path and use spawn-fcgi to spawn them itself. + + +FastCGI and Programming Languages +================================= + +Preparing PHP as a FastCGI program +---------------------------------- + +One of the most important application that has a FastCGI +interface is php which can be downloaded from +http://www.php.net/ . You have to recompile the php from +source to enable the FastCGI interface as it is normally +not enabled by default in the distributions. + +If you already have a working installation of PHP on a +webserver execute a small script which just contains :: + + <?php phpinfo(); ?> + +and search for the line in that contains the configure call. +You can use it as the base for the compilation. + +You have to remove all occurences of `--with-apxs`, `--with-apxs2` +and the like which would build PHP with Apache support. Add the +next three switches to compile PHP with FastCGI support:: + + $ ./configure \ + --enable-fastcgi \ + --enable-force-cgi-redirect \ + ... + +After compilation and installation check that your PHP +binary contains FastCGI support by calling: :: + + $ php -v + PHP 4.3.3RC2-dev (cgi-fcgi) (built: Oct 19 2003 23:19:17) + +The important part is the (cgi-fcgi). + + +Starting a FastCGI-PHP +---------------------- + +Starting with version 1.3.6 lighttpd can spawn the FastCGI +processes locally itself if necessary: :: + + fastcgi.server = ( ".php" => + ( "localhost" => + ( "socket" => "/tmp/php-fastcgi.socket", + "bin-path" => "/usr/local/bin/php" + ) + ) + ) + +PHP provides 2 special environment variables which control the number of +spawned workes under the control of a single watching process +(PHP_FCGI_CHILDREN) and the number of requests what a single worker +handles before it kills itself. :: + + fastcgi.server = ( ".php" => + ( "localhost" => + ( "socket" => "/tmp/php-fastcgi.socket", + "bin-path" => "/usr/local/bin/php", + "bin-environment" => ( + "PHP_FCGI_CHILDREN" => "16", + "PHP_FCGI_MAX_REQUESTS" => "10000" + ) + ) + ) + ) + +To increase the security of the started process you should only pass +the necessary environment variables to the FastCGI process. :: + + fastcgi.server = ( ".php" => + ( "localhost" => + ( "socket" => "/tmp/php-fastcgi.socket", + "bin-path" => "/usr/local/bin/php", + "bin-environment" => ( + "PHP_FCGI_CHILDREN" => "16", + "PHP_FCGI_MAX_REQUESTS" => "10000" + ), + "bin-copy-environment" => ( + "PATH", "SHELL", "USER" + ) + ) + ) + ) + +Configuring PHP +--------------- + +If you want to use PATH_INFO and PHP_SELF in you PHP scripts you have to +configure php and lighttpd. The php.ini needs the option: :: + + cgi.fix_pathinfo = 1 + +and the option ``broken-scriptfilename`` in your fastcgi.server config: :: + + fastcgi.server = ( ".php" => + ( "localhost" => + ( "socket" => "/tmp/php-fastcgi.socket", + "bin-path" => "/usr/local/bin/php", + "bin-environment" => ( + "PHP_FCGI_CHILDREN" => "16", + "PHP_FCGI_MAX_REQUESTS" => "10000" + ), + "bin-copy-environment" => ( + "PATH", "SHELL", "USER" + ), + "broken-scriptfilename" => "enable" + ) + ) + ) + +Why this ? the ``cgi.fix_pathinfo = 0`` would give you a working ``PATH_INFO`` +but no ``PHP_SELF``. If you enable it, it turns around. To fix the +``PATH_INFO`` `--enable-discard-path` needs a SCRIPT_FILENAME which is against the CGI spec, a +broken-scriptfilename. With ``cgi.fix_pathinfo = 1`` in php.ini and +``broken-scriptfilename => "enable"`` you get both. + + +External Spawning +----------------- + +Spawning FastCGI processes directly in the webserver has some +disadvantages like + +- FastCGI process can only run locally +- has the same permissions as the webserver +- has the same base-dir as the webserver + +As soon as you are using a seperate FastCGI Server to +take off some load from the webserver you have to control +the FastCGI process by a external program like spawn-fcgi. + +spawn-fcgi is used to start a FastCGI process in its own +environment and set the user-id, group-id and change to +another root-directory (chroot). + +For convenience a wrapper script should be used which takes +care of all the necessary option. Such a script in included +in the lighttpd distribution and is call spawn-php.sh. + +The script has a set of config variables you should take +a look at: :: + + ## ABSOLUTE path to the spawn-fcgi binary + SPAWNFCGI="/usr/local/sbin/spawn-fcgi" + + ## ABSOLUTE path to the PHP binary + FCGIPROGRAM="/usr/local/bin/php" + + ## bind to tcp-port on localhost + FCGIPORT="1026" + + ## bind to unix domain socket + # FCGISOCKET="/tmp/php.sock" + + ## number of PHP childs to spawn + PHP_FCGI_CHILDREN=10 + + ## number of request server by a single php-process until + ## is will be restarted + PHP_FCGI_MAX_REQUESTS=1000 + + ## IP adresses where PHP should access server connections + ## from + FCGI_WEB_SERVER_ADDRS="127.0.0.1,192.168.0.1" + + # allowed environment variables sperated by spaces + ALLOWED_ENV="ORACLE_HOME PATH USER" + + ## if this script is run as root switch to the following user + USERID=wwwrun + GROUPID=wwwrun + +If you have set the variables to values that fit to your +setup you can start it by calling: :: + + $ spawn-php.sh + spawn-fcgi.c.136: child spawned successfully: PID: 6925 + +If you get "child spawned successfully: PID:" the php +processes could be started successfully. You should see them +in your processlist: :: + + $ ps ax | grep php + 6925 ? S 0:00 /usr/local/bin/php + 6928 ? S 0:00 /usr/local/bin/php + ... + +The number of processes should be PHP_FCGI_CHILDREN + 1. +Here the process 6925 is the master of the slaves which +handle the work in parallel. Number of parallel workers can +be set by PHP_FCGI_CHILDREN. A worker dies automaticly of +handling PHP_FCGI_MAX_REQUESTS requests as PHP might have +memory leaks. + +If you start the script as user root php processes will be +running as the user USERID and group GROUPID to drop the +root permissions. Otherwise the php processes will run as +the user you started script as. + +As the script might be started from a unknown stage or even +directly from the command-line it cleans the environment +before starting the processes. ALLOWED_ENV contains all +the external environement variables that should be available +to the php-process. + + + + +Perl +---- + +For Perl you have to install the FCGI module from CPAN. + +TCL +--- + +For TCL ... + + + +Skeleton for remote authorizer +============================== + +The basic functionality of authorizer is as follows (see +http://www.fastcgi.com/devkit/doc/fcgi-spec.html, 6.3 for +details). :: + + #include <fcgi_stdio.h> + #include <stdlib.h> + #include <unistd.h> + int main () { + char* p; + + while (FCGI_Accept() >= 0) { + /* wait for fastcgi authorizer request */ + + printf("Content-type: text/html\r\n"); + + if ((p = getenv("QUERY_STRING")) == NULL) || + <QUERY_STRING is unauthorized>) + printf("Status: 403 Forbidden\r\n\r\n"); + + else printf("\r\n"); + /* default Status is 200 - allow access */ + } + + return 0; + } + +It is possible to use any other variables provided by +FastCGI interface for authorization check. Here is only an +example. + + +Troubleshooting +=============== + +fastcgi.debug should be enabled for troubleshooting. + +If you get: :: + + (fcgi.c.274) connect delayed: 8 + (fcgi.c.289) connect succeeded: 8 + (fcgi.c.745) unexpected end-of-file (perhaps the fastcgi + process died): 8 + +the fastcgi process accepted the connection but closed it +right away. This happens if FCGI_WEB_SERVER_ADDRS doesn't +include the host where you are connection from. + +If you get :: + + (fcgi.c.274) connect delayed: 7 + (fcgi.c.1107) error: unexpected close of fastcgi connection + for /peterp/seite1.php (no fastcgi process on host/port ?) + (fcgi.c.1015) emergency exit: fastcgi: connection-fd: 5 + fcgi-fd: 7 + +the fastcgi process is not running on the host/port you are +connection to. Check your configuration. + +If you get :: + + (fcgi.c.274) connect delayed: 7 + (fcgi.c.289) connect succeeded: 7 + +everything is fine. The connect() call just was delayed a +little bit and is completly normal. + diff --git a/doc/outdated/features.txt b/doc/features.txt index f45fe08..b588546 100644 --- a/doc/outdated/features.txt +++ b/doc/features.txt @@ -7,12 +7,12 @@ progress report :Revision: $Revision: 1.2 $ :abstract: - This document tries to track the requested features and + This document tries to track the requested features and the release when they have been implemented. - + .. meta:: :keywords: lighttpd, features - + .. contents:: Table of Contents Description @@ -29,55 +29,55 @@ It is used to see what is still missing and what is already done. :: > considering installing and testing the latest version. From a > quick glance, it seems to support most/all of the features of > Premium thttpd and Zeus. - + If you think it compares to Zeus, then you've obviously never used Zeus. - + lighttpd is currently the only non-blocking open source web server to support FastCGI responders and that's worthwhile. - + The documentation is lacking. Comments in the configuration file do not make up for a complete manual. - + Constantly improving. :: - - The configuration syntax is overly complex, like Apache. There is no .htaccess + + The configuration syntax is overly complex, like Apache. There no .htaccess support. .htaccess support is not planed yet. :: There is only one server. You cannot have a separate configuration for each - virtual server. This would seem to be especially problematic when doing + virtual server. This would seem to be especially problamatic when doing SSL. Works since 1.3.0. :: - + There is no SSI support. Zeus has full recursive SSI support. Output from a FastCGI program can get run through the SSI interpreter. SSI can also do virtual includes recursively. - + SSI works since 1.2.4. :: - + Request logging is not configurable. Zeus supports fully configurable access logging, plus a binary version of CLF that save space. - + 1.2.6 adds Apache-like logfile config. :: - + Access control only allows authentication via username and password. There is no way to allow or deny based in IP address. - + planed for 1.3.x :: - + The request rewriting appears to only allow regex substitutions. Zeus has a simple, yet powerful, request rewrite language. + - - + There is no support for FastCGI authorizers. These are very useful for high traffic sites that require complex authentication schemes or that store authorization information in a central database. - + since 1.1.9. :: - + There is no bandwidth throttling support. Zeus does bandwidth throttling correctly (i.e. unlike past versions of thttpd) and can throttle on a per-subserver (thttpd-style virtual hosts) basis. @@ -88,29 +88,29 @@ since 1.3.8. :: modification of web server behavior. While it isn't strictly necessary for an open source web server, it nice to have a documented, consistent API, rather than having to manually patch the server. - + If someone requests it it might be implemented. :: - + There is no web based interface. Zeus has a complete web based interface for everything, including a powerful feature of configuring multiple virtual servers at once. - + That is something that should be a special feature of Zeus. :) :: - + There is no support for mapping certain URLs to specific filesystem paths. - + since 1.2.6 :: - + There is no referring checking. This is incredibly important to prevent hotlinking of bandwidth intensive media types (images, movies, etc.). - + we have something better: mod_secdownload. And if someone wants referer checking we have a condition in the config for it since 1.2.9 :: - + Zeus has a lot of features that lighttpd doesn't have, but I only mentioned the ones I care about and use. - - -- + + -- David Phillips <david@acz.org> http://david.acz.org/ diff --git a/doc/initscripts/Makefile.am b/doc/initscripts/Makefile.am deleted file mode 100644 index dfed858..0000000 --- a/doc/initscripts/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -EXTRA_DIST=rc.lighttpd rc.lighttpd.redhat sysconfig.lighttpd diff --git a/doc/initscripts/Makefile.in b/doc/initscripts/Makefile.in deleted file mode 100644 index af8b522..0000000 --- a/doc/initscripts/Makefile.in +++ /dev/null @@ -1,401 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/initscripts -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -EXTRA_DIST = rc.lighttpd rc.lighttpd.redhat sysconfig.lighttpd -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/initscripts/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/initscripts/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/lighttpd.1 b/doc/lighttpd.1 new file mode 100644 index 0000000..308ed96 --- /dev/null +++ b/doc/lighttpd.1 @@ -0,0 +1,18 @@ +.TH LIGHTTPD 1 2003-12-21 +.SH NAME +lighttpd - a fast, secure and flexible webserver +.SH SYNOPSIS +lighttpd -D -f <configfile> +.SH DESCRIPTION +.SH FILES +/etc/lighttpd/lighttpd.conf +.SH CONFORMING TO +HTTP/1.0 +HTTP/1.0 +HTTP-Authentification - Basic, Digest +FastCGI +CGI/1.1 +.SH SEE ALSO +spawn-fcgi(1) +.SH AUTHOR +jan@kneschke.de diff --git a/doc/lighttpd.8 b/doc/lighttpd.8 deleted file mode 100644 index a5954ed..0000000 --- a/doc/lighttpd.8 +++ /dev/null @@ -1,70 +0,0 @@ -.TH LIGHTTPD "8" "2009-03-07" "" "" -. -.SH NAME -lighttpd \- a fast, secure and flexible web server -. -.SH SYNOPSIS -\fBlighttpd\fP [\fB\-ptDvVh\fP] \fB\-f\fP \fIconfigfile\fP [\fB\-m\fP \fImoduledir\fP] -. -.SH DESCRIPTION -\fBlighttpd\fP (pronounced 'lighty') is an advanced HTTP daemon that aims -to be secure, fast, compliant and very flexible. It has been optimized for -high performance. Its feature set includes, but is not limited to, FastCGI, -CGI, basic and digest HTTP authentication, output compression, URL rewriting. -.PP -This manual page only lists the command line arguments. For details -on how to configure \fBlighttpd\fP and its modules see the files in the -doc-directory. -. -.SH OPTIONS -The following options are supported: -.TP 8 -\fB\-f\ \fP \fIconfigfile\fP -Load configuration file \fIconfigfile\fP. -.TP 8 -\fB\-m\ \fP \fImoduledir\fP -Use -\fImoduledir\fP -as the directory that contains modules, instead of the default. -.TP 8 -\fB\-p\fP -Print the parsed configuration file in its internal form and exit. -.TP 8 -\fB\-t\fP -Test the configuration file for syntax errors and exit. -.TP 8 -\fB\-D\fP -Do not daemonize (go into background). The default is to daemonize. -.TP 8 -\fB\-v\fP -Show version and exit. -.TP 8 -\fB\-V\fP -Show compile-time features and exit. -.TP 8 -\fB\-h\fP -Show a brief help message and exit. -. -.SH FILES -.TP 8 -/etc/lighttpd/lighttpd.conf -The standard location for the configuration file. -.TP 8 -/var/run/lighttpd.pid -The standard location for the PID of the running \fBlighttpd\fP process. -. -.SH SEE ALSO -Online Documentation: http://wiki.lighttpd.net/ -.PP -spawn-fcgi(1) -.PP -\fIHypertext Transfer Protocol -- HTTP/1.1\fP, RFC 2616. -.PP -\fIHTTP Authentication: Basic and Digest Access Authentication\fP, RFC 2617. -.PP -\fIThe Common Gateway Interface Version 1.1\fP, RFC 3875. -.PP -\fIThe FastCGI specification\fP. -. -.SH AUTHOR -Jan Kneschke <jan@kneschke.de> diff --git a/doc/lighttpd.conf b/doc/lighttpd.conf new file mode 100644 index 0000000..0601841 --- /dev/null +++ b/doc/lighttpd.conf @@ -0,0 +1,321 @@ +# lighttpd configuration file +# +# use a it as base for lighttpd 1.0.0 and above +# +# $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $ + +############ Options you really have to take care of #################### + +## modules to load +# at least mod_access and mod_accesslog should be loaded +# all other module should only be loaded if really neccesary +# - saves some time +# - saves memory +server.modules = ( +# "mod_rewrite", +# "mod_redirect", +# "mod_alias", + "mod_access", +# "mod_cml", +# "mod_trigger_b4_dl", +# "mod_auth", +# "mod_status", +# "mod_setenv", +# "mod_fastcgi", +# "mod_proxy", +# "mod_simple_vhost", +# "mod_evhost", +# "mod_userdir", +# "mod_cgi", +# "mod_compress", +# "mod_ssi", +# "mod_usertrack", +# "mod_expire", +# "mod_secdownload", +# "mod_rrdtool", + "mod_accesslog" ) + +## a static document-root, for virtual-hosting take look at the +## server.virtual-* options +server.document-root = "/www/pages/" + +## where to send error-messages to +server.errorlog = "/www/logs/lighttpd.error.log" + +# files to check for if .../ is requested +index-file.names = ( "index.php", "index.html", + "index.htm", "default.htm" ) + +## set the event-handler (read the performance section in the manual) +# server.event-handler = "freebsd-kqueue" # needed on OS X + +# mimetype mapping +mimetype.assign = ( + ".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", + ".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", + ".cpp" => "text/plain", + ".log" => "text/plain", + ".conf" => "text/plain", + ".text" => "text/plain", + ".txt" => "text/plain", + ".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" + ) + +# Use the "Content-Type" extended attribute to obtain mime type if possible +#mimetype.use-xattr = "enable" + + +## send a different Server: header +## be nice and keep it at lighttpd +# server.tag = "lighttpd" + +#### accesslog module +accesslog.filename = "/www/logs/access.log" + +## 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" ) + +$HTTP["url"] =~ "\.pdf$" { + server.range-requests = "disable" +} + +## +# 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" ) + +######### Options that are good to be but not neccesary to be changed ####### + +## bind to port (default: 80) +#server.port = 81 + +## bind to localhost (default: 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" + +## to help the rc.scripts +#server.pid-file = "/var/run/lighttpd.pid" + + +###### virtual hosts +## +## 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/" + + +## +## Format: <errorfile-prefix><status-code>.html +## -> ..../status-404.html for 'File not found' +#server.errorfile-prefix = "/home/weigon/projects/lighttpd/doc/status-" + +## virtual directory listings +#dir-listing.activate = "enable" + +## enable debugging +#debug.log-request-header = "enable" +#debug.log-response-header = "enable" +#debug.log-request-handling = "enable" +#debug.log-file-not-found = "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 = "wwwrun" + +## change uid to <uid> (default: don't care) +#server.groupname = "wwwrun" + +#### compress module +#compress.cache-dir = "/tmp/lighttpd/cache/compress/" +#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 authentication.txt for more info +#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" +# ) +# ) + +#### 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 +#$HTTP["host"] =~ "^www\.(.*)" { +# url.redirect = ( "^/(.*)" => "http://%1/$1" ) +#} + +# +# 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/" + +#### expire module +#expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes") + +#### ssi +#ssi.extension = ( ".shtml" ) + +#### rrdtool +#rrdtool.binary = "/usr/bin/rrdtool" +#rrdtool.db-name = "/var/www/lighttpd.rrd" + +#### setenv +#setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" ) +#setenv.add-response-header = ( "X-Secret-Message" => "42" ) + +## for mod_trigger_b4_dl +# 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 + +## for mod_cml +## don't forget to add index.cml to server.indexfiles +# cml.extension = ".cml" +# cml.memcache-hosts = ( "127.0.0.1:11211" ) + +#### 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 diff --git a/doc/lighttpd.user b/doc/lighttpd.user new file mode 100644 index 0000000..727e9c3 --- /dev/null +++ b/doc/lighttpd.user @@ -0,0 +1 @@ +dummy:test123 diff --git a/doc/outdated/mysqlvhost.txt b/doc/mysqlvhost.txt index 9a869a1..93a08dc 100644 --- a/doc/outdated/mysqlvhost.txt +++ b/doc/mysqlvhost.txt @@ -1,5 +1,6 @@ + ==================== -MySQL-based vhosting +MySQL based vhosting ==================== ----------------------- @@ -11,20 +12,20 @@ Module: mod_mysql_vhost :Revision: $Revision: 1.1 $ :abstract: - This module provides virtual hosts (vhosts) based on a MySQL table - + This module provides virtual hosts (vhosts) based on a MySQL table + .. meta:: :keywords: lighttpd, mysql, vhost - + .. contents:: Table of Contents Description =========== -With MySQL-based vhosting you can store the path to a given host's -document root in a MySQL database. +With MySQL based vhosting you can put the information where to look for a +document-root of a given host into a MySQL database. -.. note:: Keep in mind that only one vhost module should be active at a time. +.. note:: Keep in mind that only one vhost-module should be active at a time. Don't mix mod_simple_vhost with mod_mysql_vhost. Options @@ -37,8 +38,8 @@ Example: :: mysql-vhost.pass = "secret" mysql-vhost.sock = "/var/mysql.lighttpd.sock" mysql-vhost.sql = "SELECT docroot FROM domains WHERE domain='?'" - - + + MySQL setup: :: GRANT SELECT ON lighttpd.* TO lighttpd@localhost IDENTIFIED BY 'secret'; diff --git a/doc/outdated/Makefile.am b/doc/outdated/Makefile.am deleted file mode 100644 index 861a6fd..0000000 --- a/doc/outdated/Makefile.am +++ /dev/null @@ -1,96 +0,0 @@ -DOCS=accesslog.txt \ -authentication.txt \ -cgi.txt \ -compress.txt \ -configuration.txt \ -extforward.txt \ -fastcgi-state.txt \ -fastcgi.txt \ -features.txt \ -performance.txt \ -plugins.txt \ -proxy.txt \ -redirect.txt \ -rewrite.txt \ -secdownload.txt \ -security.txt \ -simple-vhost.txt \ -skeleton.txt \ -ssi.txt \ -ssl.txt \ -state.txt \ -rrdtool.txt \ -alias.txt \ -userdir.txt \ -mysqlvhost.txt \ -access.txt \ -traffic-shaping.txt \ -setenv.txt \ -status.txt \ -scgi.txt \ -cml.txt \ -trigger_b4_dl.txt \ -webdav.txt \ -expire.txt \ -dirlisting.txt \ -evhost.txt \ -magnet.txt - -HTMLDOCS=accesslog.html \ - authentication.html \ - cgi.html \ - compress.html \ - configuration.html \ - extforward.html \ - fastcgi-state.html \ - fastcgi.html \ - features.html \ - performance.html \ - plugins.html \ - proxy.html \ - redirect.html \ - rewrite.html \ - secdownload.html \ - security.html \ - simple-vhost.html \ - skeleton.html \ - ssi.html \ - ssl.html \ - state.html \ - rrdtool.html \ - alias.html \ - userdir.html \ - mysqlvhost.html \ - access.html \ - traffic-shaping.html \ - setenv.html \ - status.html \ - scgi.html \ - cml.html \ - trigger_b4_dl.html \ - webdav.html \ - expire.html \ - dirlisting.html \ - evhost.html \ - magnet.html - -EXTRA_DIST= \ - state.dot fastcgi-state.dot \ - $(DOCS) - -.txt.html: - rst2html $^ > $@ - - -html-local: $(HTMLDOCS) - -#%.ps.gz: %.ps -# gzip $^ - -#%.ps: %.dot -# dot -Tps -o $@ $^ - -clean-local: - rm -f *.html - - diff --git a/doc/outdated/Makefile.in b/doc/outdated/Makefile.in deleted file mode 100644 index 1f56f68..0000000 --- a/doc/outdated/Makefile.in +++ /dev/null @@ -1,496 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/outdated -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -DOCS = accesslog.txt \ -authentication.txt \ -cgi.txt \ -compress.txt \ -configuration.txt \ -extforward.txt \ -fastcgi-state.txt \ -fastcgi.txt \ -features.txt \ -performance.txt \ -plugins.txt \ -proxy.txt \ -redirect.txt \ -rewrite.txt \ -secdownload.txt \ -security.txt \ -simple-vhost.txt \ -skeleton.txt \ -ssi.txt \ -ssl.txt \ -state.txt \ -rrdtool.txt \ -alias.txt \ -userdir.txt \ -mysqlvhost.txt \ -access.txt \ -traffic-shaping.txt \ -setenv.txt \ -status.txt \ -scgi.txt \ -cml.txt \ -trigger_b4_dl.txt \ -webdav.txt \ -expire.txt \ -dirlisting.txt \ -evhost.txt \ -magnet.txt - -HTMLDOCS = accesslog.html \ - authentication.html \ - cgi.html \ - compress.html \ - configuration.html \ - extforward.html \ - fastcgi-state.html \ - fastcgi.html \ - features.html \ - performance.html \ - plugins.html \ - proxy.html \ - redirect.html \ - rewrite.html \ - secdownload.html \ - security.html \ - simple-vhost.html \ - skeleton.html \ - ssi.html \ - ssl.html \ - state.html \ - rrdtool.html \ - alias.html \ - userdir.html \ - mysqlvhost.html \ - access.html \ - traffic-shaping.html \ - setenv.html \ - status.html \ - scgi.html \ - cml.html \ - trigger_b4_dl.html \ - webdav.html \ - expire.html \ - dirlisting.html \ - evhost.html \ - magnet.html - -EXTRA_DIST = \ - state.dot fastcgi-state.dot \ - $(DOCS) - -all: all-am - -.SUFFIXES: -.SUFFIXES: .html .txt -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/outdated/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/outdated/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool clean-local mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: html-local - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - clean-local distclean distclean-generic distclean-libtool \ - distdir dvi dvi-am html html-am html-local info info-am \ - install install-am install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am install-man \ - install-pdf install-pdf-am install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - uninstall uninstall-am - - -.txt.html: - rst2html $^ > $@ - -html-local: $(HTMLDOCS) - -#%.ps.gz: %.ps -# gzip $^ - -#%.ps: %.dot -# dot -Tps -o $@ $^ - -clean-local: - rm -f *.html - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/outdated/compress.txt b/doc/outdated/compress.txt deleted file mode 100644 index 14fbc2d..0000000 --- a/doc/outdated/compress.txt +++ /dev/null @@ -1,192 +0,0 @@ -================== -Output Compression -================== - --------------------- -Module: mod_compress --------------------- - - -.. meta:: - :keywords: lighttpd, compress - -.. contents:: Table of Contents - -Description -=========== - -Output compression reduces the network load and can improve the overall -throughput of the webserver. All major http-clients support compression by -announcing it in the Accept-Encoding header. This is used to negotiate the -most suitable compression method. We support deflate, gzip and bzip2. - -deflate (RFC1950, RFC1951) and gzip (RFC1952) depend on zlib while bzip2 -depends on libbzip2. bzip2 is only supported by lynx and some other console -text-browsers. - -We currently limit to compression support to static files. - -Caching -------- - -mod_compress can store compressed files on disk to optimize the compression -on a second request away. As soon as compress.cache-dir is set the files are -compressed. - -(You will need to create the cache directory if it doesn't already exist. The web server will not do this for you. The directory will also need the proper ownership. For Debian/Ubuntu the user and group ids should both be www-data.) - -The names of the cache files are made of the filename, the compression method -and the etag associated to the file. - -Cleaning the cache is left to the user. A cron job deleting files older than -10 days could do it: :: - - find /var/www/cache -type f -mtime +10 | xargs -r rm - -Limitations ------------ - -The module limits the compression of files to files smaller than 128 MByte and -larger than 128 Byte. - -The lower limit is set as small files tend to become larger by compressing due -to the compression headers, the upper limit is set to work sensibly with -memory and cpu-time. - -Directories containing a tilde ('~') are not created automatically (See ticket -#113). To enable compression for user dirs you have to create the directories -by hand in the cache directory. - -Options -======= - -compress.allowed-encodings - override default set of allowed encodings - - e.g.: :: - - compress.allowed-encodings = ("bzip2", "gzip", "deflate") - -compress.cache-dir - name of the directory where compressed content will be cached - - e.g.: :: - - compress.cache-dir = "/var/www/cache/" - - # even better with virt-hosting - $HTTP["host"] == "docs.example.org" { - compress.cache-dir = "/var/www/cache/docs.example.org/" - } - - Default: not set, compress the file for every request - -compress.filetype - mimetypes which might get compressed - - e.g.: :: - - compress.filetype = ("text/plain", "text/html") - - Keep in mind that compressed JavaScript and CSS files are broken in some - browsers. Not setting any filetypes will result in no files being compressed. - - NOTE: You have to specify the full mime-type! If you also define a charset, for example, you have to use "text/plain; charset=utf-8" instead of just "text/plain". - - Default: not set - -compress.max-filesize - maximum size of the original file to be compressed kBytes. - - This is meant to protect the server against DoSing as compressing large - (let's say 1Gbyte) takes a lot of time and would delay the whole operation - of the server. - - There is a hard upper limit of 128Mbyte. - - Default: unlimited (== hard-limit of 128MByte) - -Display compressed files -======================== - -If you enable mod_compress, and you want to force clients to uncompress and display compressed text files, please force mimetype to nothing. -Exemple : -If you want to add headers for uncompress and display diff.gz files , add this section in your conf : :: - - $HTTP["url"] =~ "\.diff\.gz" { - setenv.add-response-header = ( "Content-Encoding" => "gzip" ) - mimetype.assign = () - } - - -Compressing Dynamic Content -=========================== - -PHP ---- - -To compress dynamic content with PHP please enable :: - - zlib.output_compression = 1 - zlib.output_handler = On - -in the php.ini as PHP provides compression support by itself. - -mod_compress of lighttpd 1.5 r1992 may not set correct Content-Encoding with php-fcgi. A solution to that problem would be: - -1.disable mod_compress when request a php file:: - - $HTTP["url"] !~ "\.php$" { - compress.filetype = ("text/plain", "text/html", "text/javascript", "text/css", "text/xml") - } - -2.enable mod_setenv of your lighttpd:: - - server.modules += ( "mod_setenv" ) - -3.manually set Content-Encoding:: - - $HTTP["url"] =~ "\.php$" { - setenv.add-response-header = ( "Content-Encoding" => "gzip") - } - - -TurboGears ----------- - -To compress dynamic content with TurboGears please enable :: - - [/] - gzip_filter.on = True - gzip_filter.mime_types = ["application/x-javascript", "text/javascript", "text/html", "text/css", "text/plain"] - -in the config/app.cfg file in your TurboGears application. The above lines should already be in the file. You just need to remove the comment symbol in front of the lines to make them active. - -Django ------- - -To compress dynamic content with Django please enable the GZipMiddleware :: - - MIDDLEWARE_CLASSES = ( - 'django.middleware.gzip.GZipMiddleware', - ... - ) - -in the settings.py file in your Django project. - -Catalyst --------- - -To compress dynamic content with Perl/Catalyst, simply use the Catalyst::Plugin::Compress::Gzip module available on CPAN :: - - use Catalyst qw( - Compress::Gzip - ... - ); - -in your main package (MyApp.pm). Further configuration is not required. - -}}} - - - diff --git a/doc/outdated/dirlisting.txt b/doc/outdated/dirlisting.txt deleted file mode 100644 index 5dd6873..0000000 --- a/doc/outdated/dirlisting.txt +++ /dev/null @@ -1,126 +0,0 @@ -================== -Directory Listings -================== - ----------------------- -Module: mod_dirlisting ----------------------- - -:Author: Jan Kneschke -:Date: $Date: 2004/11/03 22:26:05 $ -:Revision: $Revision: 1.2 $ - -:abstract: - mod_dirlisting generates HTML based directory listings with full CSS - control - -.. meta:: - :keywords: lighttpd, directory listings, dirlisting - -.. contents:: Table of Contents - -Description -=========== - -mod_dirlisting is one of the modules which is loaded by default and don't have to -be specified on server.modules to work. - -A directory listing is generated if a directory is requested and no index-file -was found in that directory. - -To enable directory listings globally: :: - - dir-listing.activate = "enable" - -If you need it only for a directory, use conditionals: :: - - $HTTP["url"] =~ "^/download($|/)" { - dir-listing.activate = "enable" - } - -You can also use a external generator for directory listings if you use -mod_indexfile. :: - - index-file.names = ( "/dir-generator.php" ) - -If a directory is requested the dir-generator.php is called instead which can -take the REQUEST_URI to see which directory was requested. - -For large folders this is highly recommend. - -Options -======= - -dir-listing.activate - enables virtual directory listings if a directory is requested no - index-file was found - - Default: disabled - -dir-listing.hide-dotfiles - if enabled, does not list hidden files in directory listings generated - by the dir-listing option. - - Default: enabled - -dir-listing.external-css - path to an external css stylesheet for the directory listing - -dir-listing.exclude - list of regular expressions. Files that match any of the specified regular - expressions will be excluded from directory listings. - -dir-listing.encoding - set a encoding for the generated directory listing - - If you file-system is not using ASCII you have to set the encoding of - the filenames as they are put into the HTML listing AS IS (with XML - encoding) - - Example: :: - - dir-listing.encoding = "utf-8" - -dir-listing.show-readme - shows README.txt after the dirlisting if it exists in the directory - - Default: disabled - -dir-listing.hide-readme-file - hides README.txt in the dirlisting - - Default: disabled - -dir-listing.show-header - shows HEADER.txt before the dirlisting if it exists in the directory - - Default: disabled - -dir-listing.hide-header-file - hides HEADER.txt in the dirlisting - - Default: disabled - -dir-listing.set-footer - - Default: empty, uses server.tag instead - -dir-listing.encode-readme - encodes all control characers, '&', '<', '>' and '\x7f' as &#x**; - - Default: enabled - -dir-listing.encode-header - encodes all control characers, '&', '<', '>' and '\x7f' as &#x**; - - Default: enabled - -dir-listing.auto-layout - Disable this if you want your own html header and footer; specify - them in HEADER.txt and README.txt - - you have to enable dir-list.show-readme/header for this of course - - .external-css and .set-footer will be ignored if this is disabled - - Default: enabled diff --git a/doc/outdated/evhost.txt b/doc/outdated/evhost.txt deleted file mode 100644 index c69cc72..0000000 --- a/doc/outdated/evhost.txt +++ /dev/null @@ -1,46 +0,0 @@ -======================== -Enhanced Virtual-Hosting -======================== - ------------------- -Module: mod_evhost ------------------- - -:Author: Jan Kneschke -:Date: $Date: 2004/08/29 09:43:49 $ -:Revision: $Revision: 1.1 $ - -:abstract: - virtual hosting - -.. meta:: - :keywords: lighttpd, virtual hosting - -.. contents:: Table of Contents - -Description -=========== - -mod_evhost builds the document-root based on a pattern which contains -wildcards. Those wildcards can represent parts if the submitted hostname - - -:: - - %% => % sign - %0 => domain name + tld - %1 => tld - %2 => domain name without tld - %3 => subdomain 1 name - %4 => subdomain 2 name - %_ => the complete hostname (without port info) - - evhost.path-pattern = "/home/www/servers/%3/pages/" - -Options -======= - -evhost.path-pattern - pattern with wildcards to be replace to build a documentroot - - diff --git a/doc/outdated/extforward.txt b/doc/outdated/extforward.txt deleted file mode 100644 index 3d0c57c..0000000 --- a/doc/outdated/extforward.txt +++ /dev/null @@ -1,105 +0,0 @@ -============== -mod_extforward -============== - -.. contents:: - -Overview -======== - -Comman Kang <comman.kang at gmail.com> sent me: :: - - Hello jan. - - I've made something rough but similar to mod_extract_forwarded for - Apache. This module will extract the client's "real" ip from - X-Forwarded-For header which is added by squid or other proxies. It might be - useful for servers behind reverse proxy servers. - - However, this module is causing segfault with mod_ssl or - $HTTP{''socket"} directive, crashing in config_check_cond while patching - connection , I do not understand architecture of the lighttpd well, does it - need to call patch_connection in either handle_request_done and - connection_reset ? - -Lionel Elie Mamane <lionel@mamane.lu> improved the patch: :: - - I've taken lighttpd-1.4.10-mod_extforward.c from the wiki and I've - extended it. Here is the result. - - Major changes: - - - IPv6 support - - - Fixed at least one segfault with SERVER['socket'] - - - Arrange things so that a url.access-deny under scope of a - HTTP['remoteip'] condition works well :) - - I've commented the code in some places, mostly where I wasn't sure - what was going on, or I didn't see what the original author meant to - do. - -Options -======= - -extforward.forwarder - Sets trust level of proxy IP's. - - Default: empty - - Example: :: - - extforward.forwarder = ("10.0.0.232" => "trust") - - will translate ip addresses coming from 10.0.0.232 to real ip addresses extracted from "X-Forwarded-For" or "Forwarded-For" HTTP request header. - -extforward.headers - Sets headers to search for finding the originl addresses. - - Example (for use with a Zeus ZXTM loadbalancer): :: - - extforward.headers = ("X-Cluster-Client-Ip") - - Default: empty, results in searching for "X-Forwarded-For" and "Forwarded-For" - -Note -======= - -The effect of this module is variable on $HTTP["remotip"] directives and other module's remote ip dependent actions. -Things done by modules before we change the remoteip or after we reset it will match on the proxy's IP. -Things done in between these two moments will match on the real client's IP. -The moment things are done by a module depends on in which hook it does things and within the same hook -on whether they are before/after us in the module loading order -(order in the server.modules directive in the config file). - -Tested behaviours: - - mod_access: Will match on the real client. - - mod_accesslog: - In order to see the "real" ip address in access log , - you'll have to load mod_extforward after mod_accesslog. - like this: :: - - server.modules = ( - ..... - mod_accesslog, - mod_extforward - ) - -Samples -======= - -Trust proxy 10.0.0.232 and 10.0.0.232 :: - - extforward.forwarder = ( - "10.0.0.232" => "trust", - "10.0.0.233" => "trust", - ) - -Trust all proxies (NOT RECOMMENDED!) :: - - extforward.forwarder = ( "all" => "trust") - -Note that "all" has precedence over specific entries, so "all except" setups will not work. diff --git a/doc/outdated/fastcgi.txt b/doc/outdated/fastcgi.txt deleted file mode 100644 index eee5f79..0000000 --- a/doc/outdated/fastcgi.txt +++ /dev/null @@ -1,601 +0,0 @@ -===================== -the FastCGI Interface -===================== - -------------------- -Module: mod_fastcgi -------------------- - -:Author: Jan Kneschke -:Date: $Date: 2004/11/03 22:26:05 $ -:Revision: $Revision: 1.3 $ - -:abstract: - The FastCGI interface is the fastest and most secure way - to interface external process-handlers like Perl, PHP and - your self-written applications. - -.. meta:: - :keywords: lighttpd, FastCGI - -.. contents:: Table of Contents - -Description -=========== - -lighttpd provides an interface to a external programs that -support the FastCGI interface. The FastCGI Interface is -defined by http://www.fastcgi.com/ and is a -platform-independent and server independent interface between -a web-application and a webserver. - -This means that FastCGI programs that run with the Apache -Webserver will run seamlessly with lighttpd and vice versa. - - -FastCGI -------- - -FastCGI is removes a lot of the limitations of CGI programs. -CGI programs have the problem that they have to be restarted -by the webserver for every request which leads to really bad -performance values. - -FastCGI removes this limitation by keeping the process running -and handling the requests by this always running process. This -removes the time used for the fork() and the overall startup -and cleanup time which is necessary to create and destroy a -process. - -While CGI programs communicate to the server over pipes, -FastCGI processes use Unix-Domain-Sockets or TCP/IP to talk -with the webserver. This gives you the second advantage over -simple CGI programs: FastCGI don't have to run on the Webserver -itself but everywhere in the network. - -lighttpd takes it a little bit further by providing a internal -FastCGI load-balancer which can be used to balance the load -over multiple FastCGI Servers. In contrast to other solutions -only the FastCGI process has to be on the cluster and not the -whole webserver. That gives the FastCGI process more resources -than a e.g. load-balancer+apache+mod_php solution. - -If you compare FastCGI against a apache+mod_php solution you -should note that FastCGI provides additional security as the -FastCGI process can be run under different permissions that -the webserver and can also live a chroot which might be -different than the one the webserver is running in. - -Options -======= - -lighttpd provides the FastCGI support via the fastcgi-module -(mod_fastcgi) which provides 2 options in the config-file: - -fastcgi.debug - a value between 0 and 65535 to set the debug-level in the - FastCGI module. Currently only 0 and 1 are used. Use 1 to - enable some debug output, 0 to disable it. - -fastcgi.map-extensions - map multiple extensions to the same fastcgi server - - Example: :: - - fastcgi.map-extensions = ( ".php3" => ".php" ) - -fastcgi.server - tell the module where to send FastCGI requests to. Every - file-extension can have it own handler. Load-Balancing is - done by specifying multiple handles for the same extension. - - structure of fastcgi.server section: :: - - ( <extension> => - ( - ( "host" => <string> , - "port" => <integer> , - "socket" => <string>, # either socket - # or host+port - "bin-path" => <string>, # OPTIONAL - "bin-environment" => <array>, # OPTIONAL - "bin-copy-environment" => <array>, # OPTIONAL - "mode" => <string>, # OPTIONAL - "docroot" => <string> , # OPTIONAL if "mode" - # is not "authorizer" - "check-local" => <string>, # OPTIONAL - "max-procs" => <integer>, # OPTIONAL - "broken-scriptfilename" => <boolean>, # OPTIONAL - "disable-time" => <integer>, # optional - "allow-x-send-file" => <boolean>, # optional - "kill-signal" => <integer>, # OPTIONAL - "fix-root-scriptname" => <boolean>, - # OPTIONAL - ( "host" => ... - ) - ) - ) - - :<extension>: is the file-extension or prefix - (if started with "/") - :"host": is hostname/ip of the FastCGI process - :"port": is tcp-port on the "host" used by the FastCGI - process - :"bin-path": path to the local FastCGI binary which should be - started if no local FastCGI is running - :"socket": path to the unix-domain socket - :"mode": is the FastCGI protocol mode. - Default is "responder", also "authorizer" - mode is implemented. - :"docroot": is optional and is the docroot on the remote - host for default "responder" mode. For - "authorizer" mode it is MANDATORY and it points - to docroot for authorized requests. For security - reasons it is recommended to keep this docroot - outside of server.document-root tree. - :"check-local": is optional and may be "enable" (default) or - "disable". If enabled the server first check - for a file in local server.document-root tree - and return 404 (Not Found) if no such file. - If disabled, the server forward request to - FastCGI interface without this check. - :"broken-scriptfilename": breaks SCRIPT_FILENAME in a wat that - PHP can extract PATH_INFO from it (default: disabled) - :"disable-time": time to wait before a disabled backend is checked - again - :"allow-x-send-file": controls if X-LIGHTTPD-send-file headers - are allowed - :"fix-root-scriptname": fix broken path-info split for "/" extension ("prefix") - - If bin-path is set: - - :"max-procs": the upper limit of the processess to start - :"bin-environment": put an entry into the environment of - the started process - :"bin-copy-environement": clean up the environment and copy - only the specified entries into the fresh - environment of the spawn process - :"kill-signal": signal to terminate the FastCGI process with, - defauls to SIGTERM - -Examples --------- - - Multiple extensions for the same host :: - - fastcgi.server = ( ".php" => - (( "host" => "127.0.0.1", - "port" => 1026, - "bin-path" => "/usr/local/bin/php" - )), - ".php4" => - (( "host" => "127.0.0.1", - "port" => 1026 - )) - ) - - Example with prefix: :: - - fastcgi.server = ( "/remote_scripts/" => - (( "host" => "192.168.0.3", - "port" => 9000, - "check-local" => "disable", - "docroot" => "/" # remote server may use - # it's own docroot - )) - ) - - The request `http://my.host.com/remote_scripts/test.cgi` will - be forwarded to fastcgi server at 192.168.0.3 and the value - "/remote_scripts/test.cgi" will be used for the SCRIPT_NAME - variable. Remote server may prepend it with its own - document root. The handling of index files is also the - resposibility of remote server for this case. - - In the case that the prefix is not terminated with a slash - the prefix will be handled as file and /test.cgi would become - a PATH_INFO instead of part of SCRIPT_NAME. - - - Example for "authorizer" mode: :: - - fastcgi.server = ( "/remote_scripts/" => - (( "host" => "10.0.0.2", - "port" => 9000, - "docroot" => "/path_to_private_docs", - "mode" => "authorizer" - )) - ) - - Note that if "docroot" is specified then its value will be - used in DOCUMENT_ROOT and SCRIPT_FILENAME variables passed - to FastCGI server. - -Load-Balancing -============== - -The FastCGI plugin provides automaticly a load-balancing between -multiple FastCGI servers. :: - - fastcgi.server = ( ".php" => - (( "host" => "10.0.0.2", "port" => 1030 ), - ( "host" => "10.0.0.3", "port" => 1030 )) - ) - - -To understand how the load-balancing works you can enable the -fastcgi.debug option and will get a similar output as here: :: - - proc: 127.0.0.1 1031 1 1 1 31454 - proc: 127.0.0.1 1028 1 1 1 31442 - proc: 127.0.0.1 1030 1 1 1 31449 - proc: 127.0.0.1 1029 1 1 2 31447 - proc: 127.0.0.1 1026 1 1 2 31438 - got proc: 34 31454 - release proc: 40 31438 - proc: 127.0.0.1 1026 1 1 1 31438 - proc: 127.0.0.1 1028 1 1 1 31442 - proc: 127.0.0.1 1030 1 1 1 31449 - proc: 127.0.0.1 1031 1 1 2 31454 - proc: 127.0.0.1 1029 1 1 2 31447 - -Even if this for multiple FastCGI children on the local machine -the following explaination is valid for remote connections too. - -The output shows: - -- IP, port, unix-socket (is empty here) -- is-local, state (0 - unset, 1 - running, ... ) -- active connections (load) -- PID - -As you can see the list is always sorted by the load field. - -Whenever a new connection is requested, the first entry (the one -with the lowest load) is selected, the load is increased (got proc: ...) -and the list is sorted again. - -If a FastCGI request is done or the connection is dropped, the load on the -FastCGI proc decreases and the list is sorted again (release proc: ...) - -This behaviour is very light-weight in code and still very efficient -as it keeps the fastcgi-servers equally loaded even if they have different -CPUs. - -Adaptive Process Spawning -========================= - -.. note:: This feature is disabled in 1.3.14 again. min-procs is - ignored in that release - -Starting with 1.3.8 lighttpd can spawn processes on demand if -a bin-path is specified and the FastCGI process runs locally. - -If you want to have a least one FastCGI process running and -more of the number of requests increases you can use min-procs -and max-procs. - -A new process is spawned as soon as the average number of -requests waiting to be handle by a single process increases the -max-load-per-proc setting. - -The idle-timeout specifies how long a fastcgi-process should wait -for a new request before it kills itself. - -Example -------- -:: - - fastcgi.server = ( ".php" => - (( "socket" => "/tmp/php.socket", - "bin-path" => "/usr/local/bin/php", - "min-procs" => 1, - "max-procs" => 32, - "max-load-per-proc" => 4, - "idle-timeout" => 20 - )) - ) - -Disabling Adaptive Spawning ---------------------------- - -Adaptive Spawning is a quite new feature and it might misbehave -for your setup. There are several ways to control how the spawing -is done: - -1. ``"max-load-per-proc" => 1`` - if that works for you, great. - -2. If not set ``min-procs == max-procs``. - -3. For PHP you can also use: :: - - $ PHP_FCGI_CHILDREN=384 ./lighttpd -f ./lighttpd.conf - - fastcgi.server = ( ".php" => - (( "socket" => "/tmp/php.socket", - "bin-path" => "/usr/local/bin/php", - "min-procs" => 1, - "max-procs" => 1, - "max-load-per-proc" => 4, - "idle-timeout" => 20 - )) - ) - - It will create one socket and let's PHP create the 384 processes itself. - -4. If you don't want lighttpd to manage the fastcgi processes, remove the - bin-path and use spawn-fcgi to spawn them itself. - - -FastCGI and Programming Languages -================================= - -Preparing PHP as a FastCGI program ----------------------------------- - -One of the most important application that has a FastCGI -interface is php which can be downloaded from -http://www.php.net/ . You have to recompile the php from -source to enable the FastCGI interface as it is normally -not enabled by default in the distributions. - -If you already have a working installation of PHP on a -webserver execute a small script which just contains :: - - <?php phpinfo(); ?> - -and search for the line in that contains the configure call. -You can use it as the base for the compilation. - -You have to remove all occurences of `--with-apxs`, `--with-apxs2` -and the like which would build PHP with Apache support. Add the -next three switches to compile PHP with FastCGI support:: - - $ ./configure \ - --enable-fastcgi \ - --enable-force-cgi-redirect \ - ... - -After compilation and installation check that your PHP -binary contains FastCGI support by calling: :: - - $ php -v - PHP 4.3.3RC2-dev (cgi-fcgi) (built: Oct 19 2003 23:19:17) - -The important part is the (cgi-fcgi). - - -Starting a FastCGI-PHP ----------------------- - -Starting with version 1.3.6 lighttpd can spawn the FastCGI -processes locally itself if necessary: :: - - fastcgi.server = ( ".php" => - (( "socket" => "/tmp/php-fastcgi.socket", - "bin-path" => "/usr/local/bin/php" - )) - ) - -PHP provides 2 special environment variables which control the number of -spawned workes under the control of a single watching process -(PHP_FCGI_CHILDREN) and the number of requests what a single worker -handles before it kills itself. :: - - fastcgi.server = ( ".php" => - (( "socket" => "/tmp/php-fastcgi.socket", - "bin-path" => "/usr/local/bin/php", - "bin-environment" => ( - "PHP_FCGI_CHILDREN" => "16", - "PHP_FCGI_MAX_REQUESTS" => "10000" - ) - )) - ) - -To increase the security of the started process you should only pass -the necessary environment variables to the FastCGI process. :: - - fastcgi.server = ( ".php" => - (( "socket" => "/tmp/php-fastcgi.socket", - "bin-path" => "/usr/local/bin/php", - "bin-environment" => ( - "PHP_FCGI_CHILDREN" => "16", - "PHP_FCGI_MAX_REQUESTS" => "10000" ), - "bin-copy-environment" => ( - "PATH", "SHELL", "USER" ) - )) - ) - -Configuring PHP ---------------- - -If you want to use PATH_INFO and PHP_SELF in you PHP scripts you have to -configure php and lighttpd. The php.ini needs the option: :: - - cgi.fix_pathinfo = 1 - -and the option ``broken-scriptfilename`` in your fastcgi.server config: :: - - fastcgi.server = ( ".php" => - (( "socket" => "/tmp/php-fastcgi.socket", - "bin-path" => "/usr/local/bin/php", - "bin-environment" => ( - "PHP_FCGI_CHILDREN" => "16", - "PHP_FCGI_MAX_REQUESTS" => "10000" ), - "bin-copy-environment" => ( - "PATH", "SHELL", "USER" ), - "broken-scriptfilename" => "enable" - )) - ) - -Why this ? the ``cgi.fix_pathinfo = 0`` would give you a working ``PATH_INFO`` -but no ``PHP_SELF``. If you enable it, it turns around. To fix the -``PATH_INFO`` `--enable-discard-path` needs a SCRIPT_FILENAME which is against the CGI spec, a -broken-scriptfilename. With ``cgi.fix_pathinfo = 1`` in php.ini and -``broken-scriptfilename => "enable"`` you get both. - - -External Spawning ------------------ - -Spawning FastCGI processes directly in the webserver has some -disadvantages like - -- FastCGI process can only run locally -- has the same permissions as the webserver -- has the same base-dir as the webserver - -As soon as you are using a seperate FastCGI Server to -take off some load from the webserver you have to control -the FastCGI process by a external program like spawn-fcgi. - -spawn-fcgi is used to start a FastCGI process in its own -environment and set the user-id, group-id and change to -another root-directory (chroot). - -For convenience a wrapper script should be used which takes -care of all the necessary option. Such a script in included -in the lighttpd distribution and is call spawn-php.sh. - -The script has a set of config variables you should take -a look at: :: - - ## ABSOLUTE path to the spawn-fcgi binary - SPAWNFCGI="/usr/local/sbin/spawn-fcgi" - - ## ABSOLUTE path to the PHP binary - FCGIPROGRAM="/usr/local/bin/php" - - ## bind to tcp-port on localhost - FCGIPORT="1026" - - ## bind to unix domain socket - # FCGISOCKET="/tmp/php.sock" - - ## number of PHP childs to spawn - PHP_FCGI_CHILDREN=10 - - ## number of request server by a single php-process until - ## is will be restarted - PHP_FCGI_MAX_REQUESTS=1000 - - ## IP adresses where PHP should access server connections - ## from - FCGI_WEB_SERVER_ADDRS="127.0.0.1,192.168.0.1" - - # allowed environment variables sperated by spaces - ALLOWED_ENV="ORACLE_HOME PATH USER" - - ## if this script is run as root switch to the following user - USERID=wwwrun - GROUPID=wwwrun - -If you have set the variables to values that fit to your -setup you can start it by calling: :: - - $ spawn-php.sh - spawn-fcgi.c.136: child spawned successfully: PID: 6925 - -If you get "child spawned successfully: PID:" the php -processes could be started successfully. You should see them -in your processlist: :: - - $ ps ax | grep php - 6925 ? S 0:00 /usr/local/bin/php - 6928 ? S 0:00 /usr/local/bin/php - ... - -The number of processes should be PHP_FCGI_CHILDREN + 1. -Here the process 6925 is the master of the slaves which -handle the work in parallel. Number of parallel workers can -be set by PHP_FCGI_CHILDREN. A worker dies automaticly of -handling PHP_FCGI_MAX_REQUESTS requests as PHP might have -memory leaks. - -If you start the script as user root php processes will be -running as the user USERID and group GROUPID to drop the -root permissions. Otherwise the php processes will run as -the user you started script as. - -As the script might be started from a unknown stage or even -directly from the command-line it cleans the environment -before starting the processes. ALLOWED_ENV contains all -the external environement variables that should be available -to the php-process. - - -Perl ----- - -For Perl you have to install the FCGI module from CPAN. - -Skeleton for remote authorizer -============================== - -The basic functionality of authorizer is as follows (see -http://www.fastcgi.com/devkit/doc/fcgi-spec.html, 6.3 for -details). :: - - #include <fcgi_stdio.h> - #include <stdlib.h> - #include <unistd.h> - int main () { - char* p; - - while (FCGI_Accept() >= 0) { - /* wait for fastcgi authorizer request */ - - printf("Content-type: text/html\r\n"); - - if ((p = getenv("QUERY_STRING")) == NULL) || - <QUERY_STRING is unauthorized>) - printf("Status: 403 Forbidden\r\n\r\n"); - - else printf("\r\n"); - /* default Status is 200 - allow access */ - } - - return 0; - } - -It is possible to use any other variables provided by -FastCGI interface for authorization check. Here is only an -example. - - -Troubleshooting -=============== - -fastcgi.debug should be enabled for troubleshooting. - -If you get: :: - - (fcgi.c.274) connect delayed: 8 - (fcgi.c.289) connect succeeded: 8 - (fcgi.c.745) unexpected end-of-file (perhaps the fastcgi - process died): 8 - -the fastcgi process accepted the connection but closed it -right away. This happens if FCGI_WEB_SERVER_ADDRS doesn't -include the host where you are connection from. - -If you get :: - - (fcgi.c.274) connect delayed: 7 - (fcgi.c.1107) error: unexpected close of fastcgi connection - for /peterp/seite1.php (no fastcgi process on host/port ?) - (fcgi.c.1015) emergency exit: fastcgi: connection-fd: 5 - fcgi-fd: 7 - -the fastcgi process is not running on the host/port you are -connection to. Check your configuration. - -If you get :: - - (fcgi.c.274) connect delayed: 7 - (fcgi.c.289) connect succeeded: 7 - -everything is fine. The connect() call just was delayed a -little bit and is completly normal. - diff --git a/doc/outdated/magnet.txt b/doc/outdated/magnet.txt deleted file mode 100644 index 0559174..0000000 --- a/doc/outdated/magnet.txt +++ /dev/null @@ -1,429 +0,0 @@ -{{{ -#!rst -============== -a power-magnet -============== - ------------------- -Module: mod_magnet ------------------- - - - -.. contents:: Table of Contents - -Requirements -============ - -:Version: lighttpd 1.4.12 or higher -:Packages: lua >= 5.1 - -Overview -======== - -mod_magnet is a module to control the request handling in lighty. - -.. note:: - - Keep in mind that the magnet is executed in the core of lighty. EVERY long-running operation is blocking - ALL connections in the server. You are warned. For time-consuming or blocking scripts use mod_fastcgi and friends. - -For performance reasons mod_magnet caches the compiled script. For each script-run the script itself is checked for -freshness and recompile if neccesary. - - -Installation -============ - -mod_magnet needs a lighty which is compiled with the lua-support ( --with-lua). Lua 5.1 or higher are required by -the module. Use "--with-lua=lua5.1" to install on Debian and friends. :: - - server.modules = ( ..., "mod_magnet", ... ) - -Options -======= - -mod_magnet can attract a request in several stages in the request-handling. - -* either at the same level as mod_rewrite, before any parsing of the URL is done -* or at a later stage, when the doc-root is known and the physical-path is already setup - -It depends on the purpose of the script which stage you want to intercept. Usually you want to use -the 2nd stage where the physical-path which relates to your request is known. At this level you -can run checks against lighty.env["physical.path"]. - -:: - - magnet.attract-raw-url-to = ( ... ) - magnet.attract-physical-path-to = ( ... ) - -You can define multiple scripts when separated by a semicolon. The scripts are executed in the specified -order. If one of them a returning a status-code, the following scripts will not be executed. - -Tables -====== - -Most of the interaction between between mod_magnet and lighty is done through tables. Tables in lua are hashes (Perl), dictionaries (Java), arrays (PHP), ... - -Request-Environment -------------------- - -Lighttpd has its internal variables which are exported as read/write to the magnet. - -If "http://example.org/search.php?q=lighty" is requested this results in a request like :: - - GET /search.php?q=lighty HTTP/1.1 - Host: example.org - -When you are using ``attract-raw-url-to`` you can access the following variables: - -* parts of the request-line - - * lighty.env["request.uri"] = "/search.php?q=lighty" - -* HTTP request-headers - - * lighty.request["Host"] = "example.org" - -Later in the request-handling, the URL is splitted, cleaned up and turned into a physical path name: - -* parts of the URI - - * lighty.env["uri.path"] = "/search.php" - * lighty.env["uri.path-raw"] = "/search.php" - * lighty.env["uri.scheme"] = "http" - * lighty.env["uri.authority"] = "example.org" - * lighty.env["uri.query"] = "q=lighty" - -* filenames, pathnames - - * lighty.env["physical.path"] = "/my-docroot/search.php" - * lighty.env["physical.rel-path"] = "/search.php" - * lighty.env["physical.doc-root"] = "/my-docroot" - -All of them are readable, not all of the are writable (or don't have an effect if you write to them). - -As a start, you might want to use those variables for writing: :: - - -- 1. simple rewriting is done via the request.uri - lighty.env["request.uri"] = ... - return lighty.RESTART_REQUEST - - -- 2. changing the physical-path - lighty.env["physical.path"] = ... - - -- 3. changing the query-string - lighty.env["uri.query"] = ... - -Response Headers ----------------- - -If you want to set a response header for your request, you can add a field to the lighty.header[] table: :: - - lighty.header["Content-Type"] = "text/html" - -Sending Content -=============== - -You can generate your own content and send it out to the clients. :: - - lighty.content = { "<pre>", { filename = "/etc/passwd" }, "</pre>" } - lighty.header["Content-Type"] = "text/html" - - return 200 - -The lighty.content[] table is executed when the script is finished. The elements of the array are processed left to right and the elements can either be a string or a table. Strings are included AS IS into the output of the request. - -* Strings - - * are included as is - -* Tables - - * filename = "<absolute-path>" is required - * offset = <number> [default: 0] - * length = <number> [default: size of the file - offset] - -Internally lighty will use the sendfile() call to send out the static files at full speed. - -Status Codes -============ - -You might have seen it already in other examples: In case you are handling the request completly in the magnet you -can return your own status-codes. Examples are: Redirected, Input Validation, ... :: - - if (lighty.env["uri.scheme"] == "http") then - lighty.header["Location"] = "https://" .. lighty.env["uri.authority"] .. lighty.env["request.uri"] - return 302 - end - -You every number above and equal to 100 is taken as final status code and finishes the request. No other modules are -executed after this return. - -A special return-code is lighty.RESTART_REQUEST (currently equal to 99) which is usually used in combination with -changing the request.uri in a rewrite. It restarts the splitting of the request-uri again. - -If you return nothing (or nil) the request-handling just continues. - -Debugging -========= - -To easy debugging we overloaded the print()-function in lua and redirect the output of print() to the error-log. :: - - print("Host: " .. lighty.request["Host"]) - print("Request-URI: " .. lighty.env["request.uri"]) - - -Examples -======== - -Sending text-files as HTML --------------------------- - -This is a bit simplistic, but it illustrates the idea: Take a text-file and cover it in a <pre> tag. - -Config-file :: - - magnet.attract-physical-path-to = server.docroot + "/readme.lua" - -readme.lua :: - - lighty.content = { "<pre>", { filename = "/README" }, "</pre>" } - lighty.header["Content-Type"] = "text/html" - - return 200 - -Maintainance pages ------------------- - -Your side might be on maintainance from time to time. Instead of shutting down the server confusing all -users, you can just send a maintainance page. - -Config-file :: - - magnet.attract-physical-path-to = server.docroot + "/maintainance.lua" - -maintainance.lua :: - - require "lfs" - - if (nil == lfs.attributes(lighty.env["physical.doc-root"] .. "/maintainance.html")) then - lighty.content = ( lighty.env["physical.doc-root"] .. "/maintainance.html" ) - - lighty.header["Content-Type"] = "text/html" - - return 200 - end - -mod_flv_streaming ------------------ - -Config-file :: - - magnet.attract-physical-path-to = server.docroot + "/flv-streaming.lua" - -flv-streaming.lua:: - - if (lighty.env["uri.query"]) then - -- split the query-string - get = {} - for k, v in string.gmatch(lighty.env["uri.query"], "(%w+)=(%w+)") do - get[k] = v - end - - if (get["start"]) then - -- missing: check if start is numeric and positive - - -- send te FLV header + a seek into the file - lighty.content = { "FLV\x1\x1\0\0\0\x9\0\0\0\x9", - { filename = lighty.env["physical.path"], offset = get["start"] } } - lighty.header["Content-Type"] = "video/x-flv" - - return 200 - end - end - - -selecting a random file from a directory ----------------------------------------- - -Say, you want to send a random file (ad-content) from a directory. - -To simplify the code and to improve the performance we define: - -* all images have the same format (e.g. image/png) -* all images use increasing numbers starting from 1 -* a special index-file names the highest number - -Config :: - - server.modules += ( "mod_magnet" ) - magnet.attract-physical-path-to = "random.lua" - -random.lua :: - - dir = lighty.env["physical.path"] - - f = assert(io.open(dir .. "/index", "r")) - maxndx = f:read("*all") - f:close() - - ndx = math.random(maxndx) - - lighty.content = { { filename = dir .. "/" .. ndx }} - lighty.header["Content-Type"] = "image/png" - - return 200 - -denying illegal character sequences in the URL ----------------------------------------------- - -Instead of implementing mod_security, you might just want to apply filters on the content -and deny special sequences that look like SQL injection. - -A common injection is using UNION to extend a query with another SELECT query. - -:: - - if (string.find(lighty.env["request.uri"], "UNION%s")) then - return 400 - end - -Traffic Quotas --------------- - -If you only allow your virtual hosts a certain amount for traffic each month and want to -disable them if the traffic is reached, perhaps this helps: :: - - host_blacklist = { ["www.example.org"] = 0 } - - if (host_blacklist[lighty.request["Host"]]) then - return 404 - end - -Just add the hosts you want to blacklist into the blacklist table in the shown way. - -Complex rewrites ----------------- - -If you want to implement caching on your document-root and only want to regenerate -content if the requested file doesn't exist, you can attract the physical.path: :: - - magnet.attract-physical-path-to = ( server.document-root + "/rewrite.lua" ) - -rewrite.lua :: - - require "lfs" - - attr = lfs.attributes(lighty.env["physical.path"]) - - if (not attr) then - -- we couldn't stat() the file for some reason - -- let the backend generate it - - lighty.env["uri.path"] = "/dispatch.fcgi" - lighty.env["physical.rel-path"] = lighty.env["uri.path"] - lighty.env["physical.path"] = lighty.env["physical.doc-root"] .. lighty.env["physical.rel-path"] - fi - -luafilesystem -+++++++++++++ - -We are requiring the lua-module 'lfs' (http://www.keplerproject.org/luafilesystem/). - -I had to compile lfs myself for lua-5.1 which required a minor patch as compat-5.1 is not needed:: - - $ wget http://luaforge.net/frs/download.php/1487/luafilesystem-1.2.tar.gz - $ wget http://www.lighttpd.net/download/luafilesystem-1.2-lua51.diff - $ gzip -cd luafilesystem-1.2.tar.gz | tar xf - - $ cd luafilesystem-1.2 - $ patch -ls -p1 < ../luafilesystem-1.2-lua51.diff - $ make install - -It will install lfs.so into /usr/lib/lua/5.1/ which is where lua expects the extensions on my system. - -SuSE and Gentoo are known to have their own lfs packages and don't require a compile. - -Usertracking ------------- - -... or how to store data globally in the script-context: - -Each script has its own script-context. When the script is started it only contains the lua-functions -and the special lighty.* name-space. If you want to save data between script runs, you can use the global-script -context: - -:: - - if (nil == _G["usertrack"]) then - _G["usertrack"] = {} - end - if (nil == _G["usertrack"][lighty.request["Cookie"]]) then - _G["usertrack"][lighty.request["Cookie"]] - else - _G["usertrack"][lighty.request["Cookie"]] = _G["usertrack"][lighty.request["Cookie"]] + 1 - end - - print _G["usertrack"][lighty.request["Cookie"]] - -The global-context is per script. If you update the script without restarting the server, the context will still be maintained. - -Counters --------- - -mod_status support a global statistics page and mod_magnet allows to add and update values in the status page: - -Config :: - - status.statistics-url = "/server-counters" - magnet.attract-raw-url-to = server.docroot + "/counter.lua" - -counter.lua :: - - lighty.status["core.connections"] = lighty.status["core.connections"] + 1 - -Result:: - - core.connections: 7 - fastcgi.backend.php-foo.0.connected: 0 - fastcgi.backend.php-foo.0.died: 0 - fastcgi.backend.php-foo.0.disabled: 0 - fastcgi.backend.php-foo.0.load: 0 - fastcgi.backend.php-foo.0.overloaded: 0 - fastcgi.backend.php-foo.1.connected: 0 - fastcgi.backend.php-foo.1.died: 0 - fastcgi.backend.php-foo.1.disabled: 0 - fastcgi.backend.php-foo.1.load: 0 - fastcgi.backend.php-foo.1.overloaded: 0 - fastcgi.backend.php-foo.load: 0 - -Porting mod_cml scripts ------------------------ - -mod_cml got replaced by mod_magnet. - -A CACHE_HIT in mod_cml:: - - output_include = { "file1", "file2" } - - return CACHE_HIT - -becomes:: - - content = { { filename = "/path/to/file1" }, { filename = "/path/to/file2"} } - - return 200 - -while a CACHE_MISS like (CML) :: - - trigger_handler = "/index.php" - - return CACHE_MISS - -becomes (magnet) :: - - lighty.env["request.uri"] = "/index.php" - - return lighty.RESTART_REQUEST - -}}} diff --git a/doc/outdated/performance.txt b/doc/outdated/performance.txt deleted file mode 100644 index 04d48a1..0000000 --- a/doc/outdated/performance.txt +++ /dev/null @@ -1,239 +0,0 @@ -======================== -Performance Improvements -======================== - ------------- -Module: core ------------- - -:Author: Jan Kneschke -:Date: $Date: 2004/11/03 22:26:05 $ -:Revision: $Revision: 1.3 $ - -:abstract: - handling performance issues in lighttpd - -.. meta:: - :keywords: lighttpd, performance - -.. contents:: Table of Contents - -Description -=========== - -Performance Issues ------------------- - -lighttpd is optimized into varying directions. The most important direction is -performance. The operation system has two major facilities to help lighttpd -a deliver its best performance. - -HTTP Keep-Alive ---------------- - -Disabling keep-alive might help your server if you suffer from a large -number of open file descriptors. - -The defaults for the server are: :: - - server.max-keep-alive-requests = 128 - server.max-keep-alive-idle = 30 - server.max-read-idle = 60 - server.max-write-idle = 360 - -handling 128 keep-alive requests in a row on a single connection, waiting 30 seconds -before an unused keep-alive connection gets dropped by lighttpd. - -If you handle several connections at once under a high load (let's assume 500 connections -in parallel for 24h) you might run into the out-of-fd problem described below. :: - - server.max-keep-alive-requests = 4 - server.max-keep-alive-idle = 4 - -would release the connections earlier and would free file descriptors without a -detrimental performance loss. - -Disabling keep-alive completely is the last resort if you are still short on file descriptors: :: - - server.max-keep-alive-requests = 0 - -Event Handlers --------------- - -The first one is the Event Handler which takes care of notifying the server -that one of the connections is ready to send or receive. As you can see, -every OS has at least the select() call which has some limitations. - -============ ========== =============== -OS Method Config Value -============ ========== =============== -all select select -Unix poll poll -Linux 2.4+ rt-signals linux-rtsig -Linux 2.6+ epoll linux-sysepoll -Solaris /dev/poll solaris-devpoll -FreeBSD, ... kqueue freebsd-kqueue -============ ========== =============== - - -For more information on this topic take a look at http://www.kegel.com/c10k.html - -Configuration -````````````` - -The event handler can be set by specifying the 'Config Value' from above -in the ``server.event-handler`` variable - -e.g.: :: - - server.event-handler = "linux-sysepoll" - -Network Handlers ----------------- - -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. - -If you want to send out a file from the webserver, it doesn't make any sense -to copy the file into the webserver just to write() it back into a socket -in the next step. - -sendfile() minimizes the work in the application and pushes a file directly -into the network card (ideally). - -lighttpd supports all major platform-specific calls: - -========== ========== -OS Method -========== ========== -all write -Unix writev -Linux 2.4+ sendfile -Linux 2.6+ sendfile64 -Solaris sendfilev -FreeBSD sendfile -========== ========== - -The best backend is selected at compile time. In case you want to use -another backend set: :: - - server.network-backend = "writev" - -You can find more information about network backend in: - - http://blog.lighttpd.net/articles/2005/11/11/optimizing-lighty-for-high-concurrent-large-file-downloads - - -Max Connections ---------------- - -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 = 2048 - -This only works if lighttpd is started as root. - -Out-of-fd condition -------------------- - -Since file descriptors are used for TCP/IP sockets, files and directories, -a simple request for a PHP page might result in using 3 file descriptors: - -1. the TCP/IP socket to the client -2. the TCP/IP and Unix domain socket to the FastCGI process -3. the filehandle to the file in the document root to check if it exists - -If lighttpd runs out of file descriptors, it will stop accepting new -connections for awhile to use the existing file descriptors to handle the -currently-running requests. - -If more than 90% of the file descriptors are used then the handling of new -connections is disabled. If it drops below 80% again new connections will -be accepted again. - -Under some circumstances you will see :: - - ... accept() failed: Too many open files - -in the error log. This tells you there were too many new requests at once -and lighttpd could not disable the incoming connections soon enough. The -connection was dropped and the client received an error message like 'connection -failed'. This is very rare and might only occur in test setups. - -Increasing the ``server.max-fds`` limit will reduce the probability of this -problem. - -stat() cache -============ - -A stat(2) can be expensive; caching it saves time and context switches. - -Instead of using stat() every time to check for the existence of a file -you can stat() it once and monitor the directory the file is in for -modifications. As long as the directory doesn't change, the files in it -must all still be the same. - -With the help of FAM or gamin you can use kernel events to assure that -your stat cache is up to date. :: - - server.stat-cache-engine = "fam" # either fam, simple or disabled - - -Platform-Specific Notes -======================= - -Linux ------ - -For Linux 2.4.x you should think about compiling lighttpd with the option -``--disable-lfs`` to disable the support for files larger than 2GB. lighttpd will -fall back to the ``writev() + mmap()`` network calls which is ok, but not as -fast as possible but support files larger than 2GB. - -Disabling the TCP options reduces the overhead of each TCP packet and might -help to get the last few percent of performance out of the server. Be aware that -disabling these options most likely decreases performance for high-latency and lossy -links. - -- net.ipv4.tcp_sack = 0 -- net.ipv4.tcp_timestamps = 0 - -Increasing the TCP send and receive buffers will increase the performance a -lot if (and only if) you have a lot of large files to send. - -- net.ipv4.tcp_wmem = 4096 65536 524288 -- net.core.wmem_max = 1048576 - -If you have a lot of large file uploads, increasing the receive buffers will help. - -- net.ipv4.tcp_rmem = 4096 87380 524288 -- net.core.rmem_max = 1048576 - -Keep in mind that every TCP connection uses the configured amount of memory for socket -buffers. If you've got many connections this can quickly drain the available memory. - -See http://www.acc.umu.se/~maswan/linux-netperf.txt for more information on these parameters. - -FreeBSD -------- - -On FreeBSD you might gain some performance by enabling accept filters. Just -compile your kernel with: :: - - options ACCEPT_FILTER_HTTP - -For more ideas about tuning FreeBSD read: tuning(7) - -Reducing the recvspace should always be ok if the server only handles HTTP -requests without large uploads. Increasing the sendspace would reduce the -system load if you have a lot of large files to be sent, but keep in mind that -you have to provide the memory in the kernel for each connection. 1024 * 64KB -would mean 64MB of kernel RAM. Keep this in mind. - -- net.inet.tcp.recvspace = 4096 - diff --git a/doc/outdated/status.txt b/doc/outdated/status.txt deleted file mode 100644 index 5312176..0000000 --- a/doc/outdated/status.txt +++ /dev/null @@ -1,111 +0,0 @@ -============= -Server Status -============= - ------------------- -Module: mod_status ------------------- - -:Author: Jan Kneschke -:Date: $Date: 2004/11/03 22:26:05 $ -:Revision: $Revision: 1.2 $ - -:abstract: - mod_status displays the server's status and configuration - -.. meta:: - :keywords: lighttpd, server status - -.. contents:: Table of Contents - -Description -=========== - -The server status module generates the status overview of the webserver. The -information covers: - -- uptime -- average throughput -- current throughput -- active connections and their state - - -We need to load the module first. :: - - server.modules = ( ..., "mod_ssi", ... ) - -By default the status page is disabled to hide internal information from -unauthorized users. :: - - status.status-url = "/server-status" - -If you want to open the status page just for users from the local network -cover it in a conditional. :: - - $HTTP["remoteip"] == "10.0.0.0/8" { - status.status-url = "/server-status" - } - -Or require authorization: :: - - auth.require = ( "/server-status" => - ( "realm" ... ) ) - - -Please note that when using the server.max-worker directive, the stati of the -childs are not combined yet, so you're going to see different stats with each -request. - - -Output Format -------------- - -By default a nice looking HTML page is generated. If you append ?auto to the -status-url you can get a text version which is simpler to parse. :: - - Total Accesses: 1234 - Total kBytes: 1043 - Uptime: 1234 - BusyServers: 123 - -Total Accesses is the number of handled requests, kBytes the overall outgoing -traffic, Uptime the uptime in seconds and BusyServers the number of currently -active connections. - -The naming is kept compatible to Apache even if we have another concept and -don't start new servers for each connection. - - -Options -======= - -status.status-url - - relative URL which is used to retrieve the status-page - - Default: unset - - Example: status.status-url = "/server-status" - -status.enable-sort - - add JavaScript which allows client-side sorting for the connection overview - - Default: enable - -status.config-url - - relative URL for the config page which displays the loaded modules - - Default: unset - - Example: status.config-url = "/server-config" - -status.statistics-url - - relative URL for a plain-text page containing the internal statistics - - Default: unset - - Example: status.statistics-url = "/server-statistics" - diff --git a/doc/performance.txt b/doc/performance.txt new file mode 100644 index 0000000..06a767b --- /dev/null +++ b/doc/performance.txt @@ -0,0 +1,226 @@ +======================== +Performance Improvements +======================== + +------------ +Module: core +------------ + +:Author: Jan Kneschke +:Date: $Date: 2004/11/03 22:26:05 $ +:Revision: $Revision: 1.3 $ + +:abstract: + handling performance issues in lighttpd + +.. meta:: + :keywords: lighttpd, performance + +.. contents:: Table of Contents + +Description +=========== + +Performance Issues +------------------ + +lighttpd is optimized into various directions. The most important is +performance. The operation system has two major facalities to help lighttpd +a deliver it best performance. + +HTTP Keep-Alive +--------------- + +Disabling keep-alive might help your server if you suffer from a large +number of open file-descriptors. + +The defaults fo the server is: :: + + server.max-keep-alive-requests = 128 + server.max-keep-alive-idle = 30 + server.max-read-idle = 60 + server.max-write-idle = 360 + +handling 128 keep-alive requests in a row on a single connection, waiting 30 seconds +before a unused keep-alive connection get dropped by lighttpd. + +If you handle several connections at once under a high load (let's assume 500 connections +in parallel for 24h) you might run into the out-of-fd problem described below. :: + + server.max-keep-alive-requests = 4 + server.max-keep-alive-idle = 4 + +would release the connections earlier and would free file-descriptors without a to large +performance loss. + +Disabling keep-alive completly is the last choice if you are still short in filedescriptors: :: + + server.max-keep-alive-requests = 0 + +Event Handlers +-------------- + +The first one is the Event Handler which cares about notifying the server +that one of the connections is ready to send or to recieve. As you can see +every OS has at least the select() call which has some limitations. + +============ ========== =============== +OS Method Config-Value +============ ========== =============== +all select select +Unix poll poll +Linux 2.4+ rt-signals linux-rtsig +Linux 2.6+ epoll linux-sysepoll +Solaris /dev/poll solaris-devpoll +FreeBSD, ... kqueue freebsd-kqueue +============ ========== =============== + + +For more infomation in this topic take a look at http://www.kegel.com/c10k.html + +Configuration +````````````` + +The event-handler can be set by specifying the 'Config-Value' from above +in the ``server.event-handler`` variable + +e.g.: :: + + server.event-handler = "linux-sysepoll" + +Network Handlers +---------------- + +The basic network interface for all platforms at the syscalls read() and +write(). Each modern OS provides its own syscall to help network servers +to transfer files as fast as possible. + +If you want to send out a file from the webserver it does make any sense +to copy the file into the webserver just to write() it back into a socket +in the next step. + +sendfile() minimizes the work in the application and pushes a file directly +into the network card (idealy spoken). + +lighttpd supports all major platform specific calls: + +========== ========== +OS Method +========== ========== +all write +Unix writev +Linux 2.4+ sendfile +Linux 2.6+ sendfile64 +Solaris sendfilev +FreeBSD sendfile +========== ========== + +They are selected automaticly on compile-time. If you have problems check +./src/network_backend.h and disable the corresponding USE\_... define. + +Max Connections +--------------- + +As lighttpd is a single-threaded server its main resource limit is the +number of file-descriptors which is (on most systems) set to 1024 by default. + +If you are running a high-traffic site you might want to increase this limit +by setting :: + + server.max-fds = 2048 + +This only works if lighttpd is started as root. + +Out-of-fd condition +------------------- + +As fds are used for tcp/ip sockets, files, directories, ... a simple request +for a PHP page might result in using 3 fds: + +1. the TCP/IP socket to the client +2. the TCP/IP and Unix domain socket to the FastCGI process +3. the filehandle to the file in the document-root to check if it is really existing + +If lighttpd runs out of file-descriptors it will stop accepting new +connections for while to use the currently available fds (file-descriptors) +to handle the currently running requests. + +If more than 90% of the fds are used the the handling of new connections is +disabled, if it dropes below 80% again new connection will accepted again. + +Under some circumstances you will see :: + + ... accept() failed: Too many open files + +in the error-log. This tells you the you had to many new requests at once +and lighttpd could not disable the incomming connections soon enough. The +connection is drop and the client will get a error-message like 'connection +failed'. This is very rare and might only occur in test-setups. + +Increasing the ``server.max-fds`` limit will reduce the propability of this +problem. + +stat() cache +============ + +A stat(2) can be expensive, caching it saves time adn context-switches.. + +Instead of stat() for the existence of the file you can stat() it once and +monitor the directory the file is in for modifications. As long as the +directiry doesn't change, the files in it are all the same. + +With the help of FAM or gamin you can use kernel events to assure that +your stat-cache is up to date. :: + + server.stat-cache-engine = "fam" # either fam, simple or disabled + + +Plattform Specific Notes +======================== + +Linux +----- + +For Linux 2.4.x should should think about compiling lighttpd with the option +``--disable-lfs`` to disable the support for files larger than 2Gb. lighttpd will +fall back to the ``writev() + mmap()`` network calls which is ok, but not as +fast as possible but support files larger than 2Gb. + +Disabling the TCP options reduces the overhead of each TCP packet and might +help to get the last few percent of performance out of the server. + +- net.ipv4.tcp_sack = 0 +- net.ipv4.tcp_timestamps = 0 + +Increasing the TCP send and receive buffers will increase the performance a +lot if (and only if) you have a lot large files to send. + +- net.ipv4.tcp_wmem = 4096 65536 524288 +- net.core.wmem_max = 1048576 + +If you have a lot large file uploads increasing the receive buffers will help. + +- net.ipv4.tcp_rmem = 4096 87380 524288 +- net.core.rmem_max = 1048576 + +Keep in mind that the buffers have to multiplied by server.max-fds and be +allocated in the Kernel area. Be carefull with that. + +FreeBSD +------- + +On FreeBSD you might gain some performance by enabling accept-filters. Just +compile your kernel with: :: + + options ACCEPT_FILTER_HTTP + +For more ideas in tuning FreeBSD read: tuning(7) + +Reducing the recvspace should always be ok if the server only handles HTTP +requests without large uploads. Increasing the sendspace would reduce the +system-load if you have a lot large files to be sent, but keep in mind that +you to provide the memory in kernel for each connection. 1024 * 64k would mean +64M of kernel-ram. Keep this in mind. + +- net.inet.tcp.recvspace = 4096 + diff --git a/doc/outdated/plugins.txt b/doc/plugins.txt index 22dee40..8a755fe 100644 --- a/doc/outdated/plugins.txt +++ b/doc/plugins.txt @@ -11,25 +11,25 @@ Module: core :Revision: $Revision: 1.1 $ :abstract: - The plugin interface is an integral part of lighttpd which - provides a flexible way to add specific functionality to lighttpd. - + The plugin interface is the integral part of lighttpd provide + a flexible way to add specific functionality to lighttpd. + .. meta:: :keywords: lighttpd, plugins - + .. contents:: Table of Contents Description =========== -Plugins allow you to enhance the functionality of lighttpd without -changing the core of the webserver. They can be loaded at startup time -and can change virtually any aspect of the behaviour of the webserver. +Plugins allow you to enhance to functionality of lighttpd without +changing the core of the webserver. They can be loaded at startup-time +and can change hardly any aspect of the behaviour of the webserver. Plugin Entry Points ------------------- -lighttpd has 16 hooks which are used in different states of the +lighttpd has 16 hooks which are used in different states of the execution of the request: Serverwide hooks @@ -49,21 +49,21 @@ Serverwide hooks Connectionwide hooks ```````````````````` -Most of these hooks are called in ``http_response_prepare()`` after some -fields in the connection structure are set. +Most of these hooks are call in ``http_response_prepare()`` after some +field in the connection structure are set. :handle_uri_raw_: called after uri.path_raw, uri.authority and uri.scheme are set :handle_uri_clean_: - called after uri.path (a clean URI without .. and %20) is set + called after uri.path (a clean uri without .. and %20) is set :handle_docroot_: - called at the end of the logical path handle to get a docroot + called at the end of the logical path handle to get a docroot :handle_subrequest_start_: - called if the physical path is set up and checked + called if the physical path is setup and checked :handle_subrequest_: called at the end of ``http_response_prepare()`` :handle_physical_path_: - called after the physical path is created and no other handler is + called after the physical path is created and no other handler is found for this request :handle_request_done_: called when the request is done @@ -73,7 +73,7 @@ fields in the connection structure are set. called after the connection_state_engine is left again and plugin internal handles have to be called :connection_reset_: - called if the connection structure has to be cleaned up + called if the connection structure has to be cleaned up Plugin Interface @@ -82,14 +82,14 @@ Plugin Interface \*_plugin_init `````````````` -Every plugin has a uniquely-named function which is called after the -plugin is loaded. It is used to set up the ``plugin`` structure with -some useful data: +Every plugin has a uniquely named function which is called after the +plugin is loaded. It is used to setup the ``plugin`` structure with +some usefull data: - name of the plugin ``name`` -- all hooks +- all hooks -The field ``data`` and ``lib`` should not be touched in the init function. +The field ``data`` and ``lib`` should not be touched in the init function. ``lib`` is the library handler from dlopen and ``data`` will be the storage of the internal plugin data. @@ -99,9 +99,9 @@ of the internal plugin data. init ```` -The first real call of a plugin function is the init hook which is used -to set up the internal plugin data. The internal plugin is assigned the -``data`` field mentioned in the \*_plugin_init description. +The first real call of a plugin function is the init-hook which is used +to set up the internal plugin data. The internal plugin is assigned the +``data`` field mentioned in the \*_plugin_init description. :returns: a pointer to the internal plugin data. @@ -109,7 +109,7 @@ to set up the internal plugin data. The internal plugin is assigned the cleanup ``````` -The cleanup hook is called just before the plugin is unloaded. It is meant +The cleanup hook is called just before the plugin is unloaded. It is meant to free all buffers allocated in ``init`` or somewhere else in the plugin which are still not freed and to close all handles which were opened and are not closed yet. @@ -120,16 +120,16 @@ are not closed yet. set_defaults ```````````` -set_defaults is your entry point into the configfile parsing. It should +set_defaults is your entry point into the configfile parsing. It should pass a list of options to ``config_insert_values`` and check if -the plugin configuration is valid. If it is not valid yet, it should -set useful defaults or return with HANDLER_ERROR and an error message. +the plugin configuration is valid. If it is not valid yet, it should +set usefull defaults or return with HANDLER_ERROR and an error message. :returns: HANDLER_GO_ON if ok - - HANDLER_ERROR will terminate lighttpd - + + HANDLER_ERROR will terminated lighttpd + connection_reset ```````````````` @@ -137,9 +137,9 @@ called at the end of each request :returns: HANDLER_GO_ON if ok - + HANDLER_ERROR on error - + handle_trigger `````````````` @@ -147,9 +147,9 @@ called once a second :returns: HANDLER_GO_ON if ok - + HANDLER_ERROR on error - + handle_sighup ````````````` @@ -157,9 +157,9 @@ called if a SIGHUP is received (cycling logfiles, ...) :returns: HANDLER_GO_ON if ok - + HANDLER_ERROR on error - + handle_uri_raw `````````````` @@ -168,9 +168,9 @@ called after uri_raw is set :returns: HANDLER_GO_ON if ok HANDLER_FINISHED if the final output is prepared - + HANDLER_ERROR on error - + handle_uri_clean ```````````````` @@ -179,9 +179,9 @@ called after uri.path is set :returns: HANDLER_GO_ON if ok HANDLER_FINISHED if the final output is prepared - + HANDLER_ERROR on error - + handle_docroot `````````````` @@ -190,9 +190,9 @@ called when a docroot is needed :returns: HANDLER_GO_ON if ok HANDLER_FINISHED if the final output is prepared - + HANDLER_ERROR on error - + handle_subrequest_start ``````````````````````` @@ -201,9 +201,9 @@ called after physical.path is set :returns: HANDLER_GO_ON if ok HANDLER_FINISHED if the final output is prepared - + HANDLER_ERROR on error - + handle_subrequest ````````````````` @@ -212,9 +212,9 @@ called if subrequest_start requested a COMEBACK or a WAIT_FOR_EVENT :returns: HANDLER_GO_ON if ok HANDLER_FINISHED if the final output is prepared - + HANDLER_ERROR on error - + handle_physical_path ```````````````````` @@ -223,9 +223,9 @@ called after physical.path is set :returns: HANDLER_GO_ON if ok HANDLER_FINISHED if the final output is prepared - + HANDLER_ERROR on error - + handle_request_done ``````````````````` @@ -234,9 +234,9 @@ called at the end of the request (logging, statistics, ...) :returns: HANDLER_GO_ON if ok - + HANDLER_ERROR on error - + handle_connection_close ``````````````````````` @@ -244,9 +244,9 @@ called if the connection is terminated :returns: HANDLER_GO_ON if ok - + HANDLER_ERROR on error - + handle_joblist `````````````` @@ -254,7 +254,7 @@ called if the state of the connection has changed :returns: HANDLER_GO_ON if ok - + HANDLER_ERROR on error - + diff --git a/doc/outdated/proxy.txt b/doc/proxy.txt index b8a3997..8ff5c3e 100644 --- a/doc/outdated/proxy.txt +++ b/doc/proxy.txt @@ -11,12 +11,12 @@ Module: mod_proxy :Revision: $Revision: 1.1 $ :abstract: - The proxy module a simplest way to connect lighttpd to + The proxy module a simplest way to connect lighttpd to java servers which have a HTTP-interface. - + .. meta:: :keywords: lighttpd, Proxy - + .. contents:: Table of Contents Description @@ -27,17 +27,17 @@ Description Options ======= -lighttpd provides the Proxy support via the proxy-module +lighttpd provides the Proxy support via the proxy-module (mod_proxy) which provides 2 options in the config-file: :proxy.debug: - a value between 0 and 65535 to set the debug-level in the - Proxy module. Currently only 0 and 1 are used. Use 1 to + a value between 0 and 65535 to set the debug-level in the + Proxy module. Currently only 0 and 1 are used. Use 1 to enable some debug output, 0 to disable it. :proxy.balance: might be one of 'hash', 'round-robin' or 'fair' (default). - + 'round-robin' choses another host for each request, 'hash' is generating a hash over the request-uri and makes sure that the same request URI is sent to always the same host. @@ -46,22 +46,22 @@ lighttpd provides the Proxy support via the proxy-module load-based, passive balancing. :proxy.server: - tell the module where to send Proxy requests to. Every - file-extension can have its own handler. Load-Balancing is + tell the module where to send Proxy requests to. Every + file-extension can have its own handler. Load-Balancing is done by specifying multiple handles for the same extension. - + structure of proxy.server section: :: - - ( <extension> => - ( + + ( <extension> => + ( ( "host" => <string> , "port" => <integer> ), ( "host" => <string> , "port" => <integer> ) ), - <extension> => ... + <extension> => ... ) - + :<extension>: is the file-extension or prefix (if started with "/") might empty to match all requests :"host": is ip of the proxy server @@ -69,9 +69,9 @@ lighttpd provides the Proxy support via the proxy-module server (default: 80) e.g.: :: - + proxy.server = ( ".jsp" => - ( ( + ( ( "host" => "10.0.0.242", "port" => 81 ) ) @@ -80,8 +80,8 @@ lighttpd provides the Proxy support via the proxy-module Example: ======== -Using lighttpd + mod_proxy in front of 8 Squids which handle the -caching of dynamic content for you. All requests for the host +Using lighttpd + mod_proxy in front of 8 Squids which handle the +caching of dynamic content for you. All requests for the host www.example.org should be forwarded to the proxy. All proxies listen on port 80 for requests. :: @@ -97,7 +97,7 @@ listen on port 80 for requests. :: ( "host" => "10.0.0.17" ) ) ) } -If one of the hosts goes down the all requests for this one server are +If one of the hosts goes down the all requests for this one server are moved equally to the other servers. If you want to know more about the algorithm used here google for 'Microsoft CARP'. diff --git a/doc/initscripts/rc.lighttpd b/doc/rc.lighttpd index da0d244..91accdd 100755 --- a/doc/initscripts/rc.lighttpd +++ b/doc/rc.lighttpd @@ -11,7 +11,7 @@ # /(usr/)sbin/rcFOO # # LSB compliant service control script; see http://www.linuxbase.org/spec/ -# +# # System startup script for some example service or daemon FOO (template) # ### BEGIN INIT INFO @@ -23,7 +23,7 @@ # Description: Start FOO to allow XY and provide YZ # continued on second line by '#<TAB>' ### END INIT INFO -# +# # Note on Required-Start: It does specify the init script ordering, # not real dependencies. Depencies have to be handled by admin # resp. the configuration tools (s)he uses. @@ -64,7 +64,7 @@ rc_reset # 5 - program is not installed # 6 - program is not configured # 7 - program is not running -# +# # Note that starting an already running service, stopping # or restarting a not-running service as well as the restart # with force-reload (in case signalling is not supported) are @@ -76,7 +76,7 @@ case "$1" in ## Start daemon with startproc(8). If this fails ## the echo return value is set appropriate. - # NOTE: startproc returns 0, even if service is + # NOTE: startproc returns 0, even if service is # already running to match LSB spec. startproc $LIGHTTPD_BIN -f $LIGHTTPD_CONF_PATH @@ -94,7 +94,7 @@ case "$1" in rc_status -v ;; try-restart) - ## Stop the service and if this succeeds (i.e. the + ## Stop the service and if this succeeds (i.e. the ## service was running before), start it again. ## Note: try-restart is not (yet) part of LSB (as of 0.7.5) $0 status >/dev/null && $0 restart @@ -111,7 +111,8 @@ case "$1" in # Remember status and be quiet rc_status ;; - force-reload|reload) + force-reload) + reload) ## Like force-reload, but if daemon does not support ## signalling, do nothing (!) @@ -121,7 +122,7 @@ case "$1" in $0 start touch /var/run/lighttpd.pid rc_status -v - + ## Otherwise if it does not support reload: #rc_failed 3 #rc_status -v diff --git a/doc/initscripts/rc.lighttpd.redhat b/doc/rc.lighttpd.redhat index e22d551..e22d551 100755 --- a/doc/initscripts/rc.lighttpd.redhat +++ b/doc/rc.lighttpd.redhat diff --git a/doc/outdated/redirect.txt b/doc/redirect.txt index ec54731..118ea8e 100644 --- a/doc/outdated/redirect.txt +++ b/doc/redirect.txt @@ -12,10 +12,10 @@ Module: mod_redirect :abstract: url redirection - + .. meta:: :keywords: lighttpd, redirect - + .. contents:: Table of Contents Description @@ -28,9 +28,9 @@ Options url.redirect redirects a set of URLs externally - + e.g. :: - + url.redirect = ( "^/show/([0-9]+)/([0-9]+)$" => "http://www.example.org/show.php?isdn=$1&page$2", "^/get/([0-9]+)/([0-9]+)$" => "http://www.example.org/get.php?isdn=$1&page$2" ) @@ -39,9 +39,3 @@ url.redirect $HTTP["host"] =~ "^www\.(.*)" { url.redirect = ( "^/(.*)" => "http://%1/$1" ) } - -Warning -======= - -Do NOT use mod_redirect to protect specific urls, as the original url passed from the client -is matched against your rules, for example strings like "/abc/../xyz%2f/path". diff --git a/doc/outdated/rewrite.txt b/doc/rewrite.txt index a139069..aed31c6 100644 --- a/doc/outdated/rewrite.txt +++ b/doc/rewrite.txt @@ -12,10 +12,10 @@ Module: mod_rewrite :abstract: url rewrite - + .. meta:: :keywords: lighttpd, rewrite - + .. contents:: Table of Contents Description @@ -28,50 +28,53 @@ Options url.rewrite-once rewrites a set of URLs interally in the webserver BEFORE they are handled. - + e.g. :: - + url.rewrite-once = ( "<regex>" => "<relative-uri>" ) - + url.rewrite-repeat rewrites a set of URLs interally in the webserver BEFORE they are handled - + e.g. :: - + url.rewrite-repeat = ( "<regex>" => "<relative-uri>" ) -The options ``url.rewrite`` and ``url.rewrite-final`` were mapped to ``url.rewrite-once`` +The options ``url.rewrite`` and ``url.rewrite-final`` were mapped to ``url.rewrite-once`` in 1.3.16. -Warning -======= - -Do NOT use mod_rewrite to protect specific urls, as the original url passed from the client -is matched against your rules, for example strings like "/abc/../xyz%2f/path". - Examples ======== -The regex is matching the full REQUEST_URI which is supplied by the user including +The regex is matching the full REQUEST_URI which is supplied by the user including query-string.:: url.rewrite-once = ( "^/id/([0-9]+)$" => "/index.php?id=$1", "^/link/([a-zA-Z]+)" => "/index.php?link=$1" ) - - # the following example, is, however just simulating vhost by rewrite - # * you can never change document-root by mod_rewrite - # use mod_*host instead to make real mass-vhost - - # request: http://any.domain.com/url/ - # before rewrite: REQUEST_URI="/www/htdocs/url/" - # and DOCUMENT_ROOT="/www/htdocs/" %0="www.domain.com" $1="url/" - # after rewrite: REQUEST_URI="/www/htdocs/domain.com/url/" - # still, you have DOCUMENT_ROOT=/www/htdocs/ - + # request: http://www.domain.com/url/ + # or request: http://any.domain.com/url/ + # before write: /www/htdocs/url/ + # after rewrite: /www/htdocs/domain.com/url/ + # document-root=/www/htdocs/ %0=www.domain.com $1=url/ server.document-root = "/www/htdocs/" $HTTP["host"] =~ "^.*\.([^.]+\.com)$" { url.rewrite-once = ( "^/(.*)" => "/%0/$1" ) } + + # request: http://abc.mass-serve-subdomain.com/url/ + # before rewrite: /www/htdocs/url/ + # after rewrite: /www/htdocs/mass-serve-subdomain.com/abc/url/ + $HTTP["host"] =~ "^([^.]+)\.mass-subdomain\.com" { + server.document-root = "/www/htdocs/mass-subdomain.com" + url.rewrite-once = ( "^/(.*)" => "/%1/$1" ) + } + + + # similar effect as above, except that you have multiply mass-subdomain now + server.document-root = "/www/htdocs/" + $HTTP["host"] =~ "^([^.]+)\.(mass-subdomain\.com|mass-subdomain\.net)" { + url.rewrite-once = ( "^/(.*)" => "/%2/%1/$1" ) + } diff --git a/doc/scripts/rrdtool-graph.sh b/doc/rrdtool-graph.sh index 1157a28..1157a28 100755 --- a/doc/scripts/rrdtool-graph.sh +++ b/doc/rrdtool-graph.sh diff --git a/doc/outdated/rrdtool.txt b/doc/rrdtool.txt index 1ad5543..ce0145c 100644 --- a/doc/outdated/rrdtool.txt +++ b/doc/rrdtool.txt @@ -12,17 +12,17 @@ Module: mod_rrdtool :abstract: mod_rrdtool is used to monitor the traffic and load on the webserver - + .. meta:: :keywords: lighttpd, skeleton - + .. contents:: Table of Contents Description =========== RRD_ is a system to store and display time-series data (i.e. network -bandwidth, machine-room temperature, server load average). +bandwidth, machine-room temperature, server load average). .. _RRD: http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ @@ -33,24 +33,24 @@ rrdtool.binary path to the rrdtool binary e.g.: :: - + rrdtool.binary = "/usr/bin/rrdtool" rrdtool.db-name - filename of the rrd-database. Make sure that <rrdtool.db-name> doesn't exist - before the first run, as lighttpd has to create the DB for you. + filename of the rrd-database. Make sure that <rrdtool.db-name> doesn't exists + before the first run as lighttpd has to create the DB for you. e.g.: :: - + rrdtool.db-name = "/var/www/lighttpd.rrd" - + Generating Graphs ================= :: #!/bin/sh - + RRDTOOL=/usr/bin/rrdtool OUTDIR=/var/www/servers/www.example.org/pages/rrd/ INFILE=/var/www/lighttpd.rrd diff --git a/doc/outdated/scgi.txt b/doc/scgi.txt index dbb6371..ff849fe 100644 --- a/doc/outdated/scgi.txt +++ b/doc/scgi.txt @@ -13,10 +13,10 @@ Module: mod_scgi :abstract: SCGI is a fast and simplified CGI interface. It is mostly used by Python + WSGI. - + .. meta:: :keywords: lighttpd, FastCGI - + .. contents:: Table of Contents Description @@ -24,8 +24,8 @@ Description The SCGI module is heavily based on the FastCGI when it comes to configuration. Only the internal protocol between server -and client has been replaced. Please check the documentation -of the FastCGI module for more information. +and client has been replaced. Please check the documentation +of the fastcgi module for more information. History ======= diff --git a/doc/scripts/Makefile.am b/doc/scripts/Makefile.am deleted file mode 100644 index 08aaa25..0000000 --- a/doc/scripts/Makefile.am +++ /dev/null @@ -1,3 +0,0 @@ -EXTRA_DIST= \ - rrdtool-graph.sh \ - spawn-php.sh diff --git a/doc/scripts/Makefile.in b/doc/scripts/Makefile.in deleted file mode 100644 index 009fb20..0000000 --- a/doc/scripts/Makefile.in +++ /dev/null @@ -1,404 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/scripts -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -EXTRA_DIST = \ - rrdtool-graph.sh \ - spawn-php.sh - -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/scripts/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/scripts/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/outdated/secdownload.txt b/doc/secdownload.txt index bf0a481..fb946ed 100644 --- a/doc/outdated/secdownload.txt +++ b/doc/secdownload.txt @@ -11,12 +11,12 @@ Module: mod_secdownload :Revision: $Revision: 1.1 $ :abstract: - authenticated file requests and a countermeasure against + authenticated file requests and a counter measurement against deep-linking can be achieved easily by using mod_secdownload - + .. meta:: :keywords: lighttpd, secure, fast, downloads - + .. contents:: Table of Contents Options @@ -32,77 +32,77 @@ Options Description =========== -there are multiple ways to handle secured download mechanisms: +there are multiple way to handle secured download mechanisms: -1. use the webserver and the internal HTTP authentication -2. use the application to authenticate and send the file +1. use the webserver and the internal HTTP-authentication +2. use the application to authenticate and send the file through the application - -Both ways have limitations: + +Both way have limitations: webserver: -- ``+`` fast download -- ``+`` no additional system load -- ``-`` inflexible authentication handling - +- ``+`` fast download +- ``+`` no additional system load +- ``-`` unflexible authentication handling + application: - ``+`` integrated into the overall layout - ``+`` very flexible permission management -- ``-`` the download occupies an application thread/process - -A simple way to combine the two ways could be: +- ``-`` the download occupies a application thread/process + +A simple way to combine the two way could be: 1. app authenticates user and checks permissions to download the file. -2. app redirects user to the file accessable by the webserver - for further downloading. -3. the webserver transfers the file to the user. +2. app redirectes user the file accessable by the webserver + for further downloading +3. the webserver transfers the file to the user As the webserver doesn't know anything about the permissions -used in the app, the resulting URL would be available to every -user who knows the URL. - -mod_secdownload removes this problem by introducing a way to +used in the app the resulting URL would be available to every +user who knows the URL. + +mod_secdownload removes this problem by introducing a way to authenticate a URL for a specified time. The application has to generate a token and a timestamp which are checked by the -webserver before it allows the file to be downloaded by the +webserver before it allows the file to be downloaded by the webserver. The generated URL has to have the format: <uri-prefix><token>/<timestamp-in-hex><rel-path> -<token> is an MD5 of +<token> is a MD5 of 1. a secret string (user supplied) -2. <rel-path> (starts with /) +2. <rel-path> (startes with /) 3. <timestamp-in-hex> -As you can see, the token is not bound to the user at all. The -only limiting factor is the timestamp which is used to +As you can see the token is not bound to the user at all. The +only limiting factor is the timestamp which is used to invalidate the URL after a given timeout (secdownload.timeout). .. Note:: - Be sure to choose a another secret than the one used in the - examples, as this is the only part of the token that is not - known to the user. - - - -If the user tries to fake the URL by choosing a random token, + Be sure to choose a another secret then used in the examples + as this is the only part of the token that is not known to + the user. + + + +If the user tries to fake the URL by choosing a random token status 403 'Forbidden' will be sent out. -If the timeout is reached, status 408 'Request Timeout' will be -sent. (This does not really conform to the standard, but should -do the trick). +If the timeout is reached status 408 'Request Timeout' will be +sent (this not really standard conforming but should do the +trick). -If token and timeout are valid, the <rel-path> is appended to -the configured (secdownload.document-root) and passed to the -normal internal file transfer functionality. This might lead to -status 200 or 404. +If token and timeout are valid the <rel-path> is taken and +appended at the configured (secdownload.document-root) and +passed to the normal internal file transfer functionality. +This might lead to status 200 or 404. Example ======= @@ -114,19 +114,19 @@ Your application has to generate the correct URLs. The following sample code for PHP should be easily adaptable to any other language: :: <?php - + $secret = "verysecret"; $uri_prefix = "/dl/"; - + # filename $f = "/secret-file.txt"; - + # current timestamp $t = time(); - + $t_hex = sprintf("%08x", $t); $m = md5($secret.$f.$t_hex); - + # generate link printf('<a href="%s%s/%s%s">%s</a>', $uri_prefix, $m, $t_hex, $f, $f); @@ -135,11 +135,11 @@ code for PHP should be easily adaptable to any other language: :: Webserver --------- -The server has to be configured in the same way. The URI prefix and -secret have to match: :: +The server has to configured in the same way. The uri-prefix and secret have +to match: :: server.modules = ( ..., "mod_secdownload", ... ) - + secdownload.secret = "verysecret" secdownload.document-root = "/home/www/servers/download-area/" secdownload.uri-prefix = "/dl/" diff --git a/doc/outdated/security.txt b/doc/security.txt index 766fd34..d4e9147 100644 --- a/doc/outdated/security.txt +++ b/doc/security.txt @@ -12,10 +12,10 @@ Module: core :abstract: lighttpd was developed with security in mind ... - + .. meta:: :keywords: lighttpd, security - + .. contents:: Table of Contents Description @@ -33,7 +33,7 @@ Limiting POST requests System Security --------------- -Running daemons as root with full privileges is a bad idea in general. +Running daemons as root will full privileges is a bad idea in general. lighttpd runs best without any extra privileges and runs perfectly in chroot. Change Root @@ -41,7 +41,7 @@ Change Root server.chroot = "..." -Drop root privileges +Drop root-privileges ```````````````````` server.username = "..." diff --git a/doc/outdated/setenv.txt b/doc/setenv.txt index c03474f..b04b083 100644 --- a/doc/outdated/setenv.txt +++ b/doc/setenv.txt @@ -12,10 +12,10 @@ Module: mod_setenv :abstract: mod_setenv is used to add request - + .. meta:: :keywords: lighttpd, skeleton - + .. contents:: Table of Contents Description @@ -31,7 +31,7 @@ setenv.add-environment setenv.add-response-header - adds a header to the HTTP response sent to the client + add a header to the HTTP-response sent to the client setenv.add-request-header - adds a header to the HTTP request that was received from the client + add a header to the HTTP-request that was received by the client diff --git a/doc/outdated/simple-vhost.txt b/doc/simple-vhost.txt index 4f8338f..b0776f0 100644 --- a/doc/outdated/simple-vhost.txt +++ b/doc/simple-vhost.txt @@ -12,10 +12,10 @@ Module: mod_simple_vhost :abstract: virtual hosting - + .. meta:: :keywords: lighttpd, virtual hosting - + .. contents:: Table of Contents Description @@ -23,25 +23,25 @@ Description Simple assumption: -Every virtual host is in a directory below a base directory in a path that -is the same as the name of the vhost. Below this vhost path might be an -extra directory which is the document root of the vhost. +Every virtual host is in a direction below a base directory in a path that +is the same as the name of the vhost. Below this vhost-path might be a +extra directory which is the document-root of the vhost. -The document root for each vhost is built from three values: +The document-root for each vhost is build from three values: - server-root - hostname - document-root -The complete document root is constructed either by :: +Either the absolute documentroot is build by :: server-root + hostname + document-root - + or if this path does not exist by :: server-root + default-host + document-root - -A small example should make this idea clear: :: + +A small example should make this thinking clean: :: /var/www/ /var/www/logs/ @@ -52,7 +52,7 @@ A small example should make this idea clear: :: /var/www/servers/mail.example.org/ /var/www/servers/mail.example.org/lib/ /var/www/servers/mail.example.org/pages/ - + simple-vhost.server-root = "/var/www/servers/" simple-vhost.default-host = "www.example.org" simple-vhost.document-root = "pages" @@ -62,8 +62,7 @@ You can use symbolic links to map several hostnames to the same directory. Conditionals vs. simple-vhost ----------------------------- -You have to keep in mind that conditionals and simple-vhost interfere -with one another. :: +You have to keep in mind that conditionals and simple-vhost interfere. :: simple-vhost.server-root = "/var/www/servers/" simple-vhost.default-host = "www.example.org" @@ -71,17 +70,16 @@ with one another. :: $HTTP["host"] == "news.example.org" { server.document-root = "/var/www/servers/news2.example.org/pages/" - } + } -When ``news.example.org`` is requested, the ``server.document-root`` -will be set to ``/var/www/servers/news2.example.org/pages/``, but -simple-vhost will overwrite it shortly afterwards. +Even if the ``server.document-root`` will be set to ``/var/www/servers/news2.example.org/pages/`` +if ``news.example.org`` is requested simple-vhost will overwrite ``server.document-root`` shortly +afterwards. -If ``/var/www/servers/news.example.org/pages/`` exists, that will be -used. If not, ``/var/www/servers/www.example.org/pages/`` will be taken -because it is the default. +If ``/var/www/servers/news.example.org/pages/`` exists it will be taken, if not +``/var/www/servers/www.example.org/pages/`` will be taken as it is the default. -To use conditionals together with simple-vhost, you should do this: :: +To get them working in parallel you should use: :: $HTTP["host"] !~ "^(news\.example\.org)$" { simple-vhost.server-root = "/var/www/servers/" @@ -91,19 +89,19 @@ To use conditionals together with simple-vhost, you should do this: :: $HTTP["host"] == "news.example.org" { server.document-root = "/var/www/servers/news2.example.org/pages/" - } + } -It will enable simple vhosting for all hosts other than ``news.example.org``. +It will enable simple-vhosting for all host with are not named ``news.example.org``. Options ======= simple-vhost.server-root - root of the virtual host - + root of the virtual hosting + simple-vhost.default-host - use this hostname if the requested hostname does not have its own directory - + use this hostname if the + simple-vhost.document-root - path below the vhost directory - + path below the vhost-directory + diff --git a/doc/outdated/skeleton.txt b/doc/skeleton.txt index b1b01e6..13c6881 100644 --- a/doc/outdated/skeleton.txt +++ b/doc/skeleton.txt @@ -12,10 +12,10 @@ Module: mod_skeleton :abstract: a nice, short abstrace about the module - + .. meta:: :keywords: lighttpd, skeleton - + .. contents:: Table of Contents Description diff --git a/doc/spawn-fcgi.1 b/doc/spawn-fcgi.1 new file mode 100644 index 0000000..2ad5bd9 --- /dev/null +++ b/doc/spawn-fcgi.1 @@ -0,0 +1,13 @@ +.TH SPAWNFCGI 1 2003-12-21 +.SH NAME +spawn-fcgi \- spawning FastCGI processes +.SH SYNOPSIS +spawn-fcgi -f <fastcgi-binary> [-p <port> | -s <socket>] [-C <num-of-php-procs>] [-c <chroot-dir>] [-u <username>] [-g <groupname>] +spawn-fcgi -v +spawn-fcgi -h +.SH DESCRIPTION +spawn-fcgi is used to spawn remote FastCGI processes. +.SH SEE ALSO +lighttpd(1) +.SH AUTHOR +jan@kneschke.de diff --git a/doc/scripts/spawn-php.sh b/doc/spawn-php.sh index 181eae2..73abf67 100755 --- a/doc/scripts/spawn-php.sh +++ b/doc/spawn-php.sh @@ -6,22 +6,22 @@ SPAWNFCGI="/home/weigon/projects/spawn-fcgi/src/spawn-fcgi" ## ABSOLUTE path to the PHP binary FCGIPROGRAM="/usr/local/bin/php" -## TCP port to which to bind on localhost +## bind to tcp-port on localhost FCGIPORT="1026" -## number of PHP children to spawn +## number of PHP childs to spawn PHP_FCGI_CHILDREN=10 -## maximum number of requests a single PHP process can serve before it is restarted +## number of request server by a single php-process until is will be restarted PHP_FCGI_MAX_REQUESTS=1000 -## IP addresses from which PHP should access server connections +## IP adresses where PHP should access server connections from FCGI_WEB_SERVER_ADDRS="127.0.0.1,192.168.2.10" -# allowed environment variables, separated by spaces +# allowed environment variables sperated by spaces ALLOWED_ENV="ORACLE_HOME PATH USER" -## if this script is run as root, switch to the following user +## if this script is run as root switch to the following user USERID=wwwrun GROUPID=wwwrun @@ -49,6 +49,6 @@ E= for i in $ALLOWED_ENV; do E="$E $i=${!i}" done - -# clean the environment and set up a new one + +# clean environment and set up a new one env - $E $EX diff --git a/doc/outdated/ssi.txt b/doc/ssi.txt index c65e7e1..c5791a2 100644 --- a/doc/outdated/ssi.txt +++ b/doc/ssi.txt @@ -11,12 +11,12 @@ Module: mod_ssi :Revision: $Revision: 1.2 $ :abstract: - The module for server-side includes provides a compatability - layer for NSCA/Apache SSI. - + The module for server-side includes provides a compat layer for + NSCA/Apache SSI. + .. meta:: :keywords: lighttpd, ssi, Server-Side Includes - + .. contents:: Table of Contents Description @@ -60,7 +60,7 @@ Every ''expr'' is interpreted: Flow Control ------------ -if, elif, else and endif can only be used to insert content under special +if, elif, else and endif can be used the insert content only under special conditions. Unsupported Features @@ -73,4 +73,4 @@ which are not supported by this module for various reasons: - nested virtual - config.errmsg - echo.encoding - + diff --git a/doc/outdated/ssl.txt b/doc/ssl.txt index 447da4e..81b9215 100644 --- a/doc/outdated/ssl.txt +++ b/doc/ssl.txt @@ -11,30 +11,30 @@ Module: core :Revision: $Revision: 1.2 $ :abstract: - How to set up SSL in lighttpd - + How to setup SSL in lighttpd + .. meta:: :keywords: lighttpd, ssl - + .. contents:: Table of Contents Description =========== -lighttpd supports SSLv2 and SSLv3 if it is compiled against openssl. +lighttpd support SSLv2 and SSLv3 if it compiled against openssl. Configuration ------------- -To enable SSL for the whole server you have to provide a valid +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: :: + +As SSL and named-based virtual hosting can not work together you +have to use IP-based virtual hosting if you want to run multiple +SSL-servers with one lighttpd: :: $SERVER["socket"] == "10.0.0.1:443" { ssl.engine = "enable" @@ -44,8 +44,7 @@ one lighttpd instance you must use IP-based virtual hosting: :: server.document-root = "/www/servers/www.example.org/pages/" } -If you have a .crt and a .key file, cat them together into a -single PEM file: +If you have a .crt and a .key file cat them together into a single PEM file: :: $ cat host.key host.crt > host.pem @@ -54,9 +53,9 @@ single PEM file: Self-Signed Certificates ------------------------ -A self-signed SSL certificate can be generated like this: :: - +A self-signed SSL cerifitcate can be generated with: :: + $ openssl req -new -x509 \ -keyout server.pem -out server.pem \ -days 365 -nodes - + diff --git a/doc/outdated/state.dot b/doc/state.dot index 551b232..551b232 100644 --- a/doc/outdated/state.dot +++ b/doc/state.dot diff --git a/doc/outdated/state.txt b/doc/state.txt index 5e8277b..d0768bc 100644 --- a/doc/outdated/state.txt +++ b/doc/state.txt @@ -14,10 +14,10 @@ Module: core This is a short summary of the state-engine which is driving the lighttpd webserver. It describes the basic concepts and the way the different parts of the server are connected. - + .. meta:: :keywords: lighttpd, state-engine - + .. contents:: Table of Contents Description @@ -52,72 +52,72 @@ and some may never be hit at all. reset connection (incl. close()) :close: close connection (handle lingering close) - + .. image:: state.png - + A simple GET request (green path) --------------------------------- - + The connection is idling in the 'connect' state waiting for a connection. As soon as the connection is set up we init the read-timer in 'reqstart' and start to read data from the network. As soon as we get the HTTP-request terminator (CRLFCRLF) we forward the header to the parser. - + The parsed request is handled by 'handlereq' and as soon as a decision out the request is made it is sent to 'respstart' to prepare the HTTP-response header. In the 'write' state the prepare content is sent out to the network. When everything is sent 'respend' is entered to log the -request and cleanup the environment. After the close() call the connection +request and cleanup the environment. After the close() call the connection is set back to the 'connect' state again. - + Keep-Alive (blue path) ---------------------- - + The Keep-Alive handling is implemented by going from the 'respend' directly to 'reqstart' without the close() and the accept() calls. - + POST requests (grey path) ------------------------- - + As requests might contain a request-body the state 'readpost' entered as soon as the header is parsed and we know how much data we expect. - + Pipelining ---------- - + HTTP/1.1 supportes pipelining (sending multiple requests without waiting for the response of the first request). This is handled transparently by the 'read' state. - + Unexpected errors (red path) ---------------------------- - + For really hard errors we use the 'error' state which resets the connection and can be call from every state. It is only use if there is no other way to handle the issue (e.g. client-side close of the connection). If possible we should use http-status 500 ('internal server error') and log the issue in the errorlog. - + If we have to take care of some data which is coming in after we ran into the error condition the 'close' state is used the init a half-close and read all the delay packet from the network. - + Sub-Requests (lightblue) ------------------------ - + The FastCGI, CGI, ... intergration is done by introducing a loop in 'handlereq' to handle all aspect which are neccesary to find out what has to be sent back to the client. - + Functions ========= Important functions used by the state-engine - + :state-engine: - ``connection_state_machine()`` - + :connect: - (nothing) diff --git a/doc/status.txt b/doc/status.txt new file mode 100644 index 0000000..3e0acab --- /dev/null +++ b/doc/status.txt @@ -0,0 +1,35 @@ +============= +Server Status +============= + +------------------ +Module: mod_status +------------------ + +:Author: Jan Kneschke +:Date: $Date: 2004/11/03 22:26:05 $ +:Revision: $Revision: 1.2 $ + +:abstract: + mod_status displays server-status and server-config + +.. meta:: + :keywords: lighttpd, server status + +.. contents:: Table of Contents + +Description +=========== + +The server status module generates the ... + +Options +======= + +status.status-url + + Default: unset + +status.config-url + + Default: unset diff --git a/doc/initscripts/sysconfig.lighttpd b/doc/sysconfig.lighttpd index c8154c9..c8154c9 100644 --- a/doc/initscripts/sysconfig.lighttpd +++ b/doc/sysconfig.lighttpd diff --git a/doc/systemd/Makefile.am b/doc/systemd/Makefile.am deleted file mode 100644 index 665f164..0000000 --- a/doc/systemd/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -EXTRA_DIST=lighttpd.service diff --git a/doc/systemd/Makefile.in b/doc/systemd/Makefile.in deleted file mode 100644 index 8f2b107..0000000 --- a/doc/systemd/Makefile.in +++ /dev/null @@ -1,401 +0,0 @@ -# Makefile.in generated by automake 1.11.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = doc/systemd -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -SOURCES = -DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -AR = @AR@ -ATTR_LIB = @ATTR_LIB@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BZ_LIB = @BZ_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CRYPT_LIB = @CRYPT_LIB@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DL_LIB = @DL_LIB@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -FAM_CFLAGS = @FAM_CFLAGS@ -FAM_LIBS = @FAM_LIBS@ -FGREP = @FGREP@ -GDBM_LIB = @GDBM_LIB@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LBER_LIB = @LBER_LIB@ -LD = @LD@ -LDAP_LIB = @LDAP_LIB@ -LDFLAGS = @LDFLAGS@ -LIBEV_CFLAGS = @LIBEV_CFLAGS@ -LIBEV_LIBS = @LIBEV_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -LUA_CFLAGS = @LUA_CFLAGS@ -LUA_LIBS = @LUA_LIBS@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MEMCACHE_LIB = @MEMCACHE_LIB@ -MKDIR_P = @MKDIR_P@ -MYSQL_CONFIG = @MYSQL_CONFIG@ -MYSQL_INCLUDE = @MYSQL_INCLUDE@ -MYSQL_LIBS = @MYSQL_LIBS@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PCRECONFIG = @PCRECONFIG@ -PCRE_LIB = @PCRE_LIB@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -RANLIB = @RANLIB@ -SED = @SED@ -SENDFILE_LIB = @SENDFILE_LIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SQLITE_CFLAGS = @SQLITE_CFLAGS@ -SQLITE_LIBS = @SQLITE_LIBS@ -SSL_LIB = @SSL_LIB@ -STRIP = @STRIP@ -U = @U@ -UUID_LIBS = @UUID_LIBS@ -VERSION = @VERSION@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -Z_LIB = @Z_LIB@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -EXTRA_DIST = lighttpd.service -all: all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/systemd/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/systemd/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags: TAGS -TAGS: - -ctags: CTAGS -CTAGS: - - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: - -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/systemd/lighttpd.service b/doc/systemd/lighttpd.service deleted file mode 100644 index 7f4a611..0000000 --- a/doc/systemd/lighttpd.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Lighttpd Daemon -After=network.target - -[Service] -ExecStartPre=/usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf -ExecStart=/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf - -[Install] -WantedBy=multi-user.target diff --git a/doc/outdated/traffic-shaping.txt b/doc/traffic-shaping.txt index 1076686..7d16638 100644 --- a/doc/outdated/traffic-shaping.txt +++ b/doc/traffic-shaping.txt @@ -11,45 +11,45 @@ Module: core :Revision: $Revision: 1.2 $ :abstract: - limiting bandwidth usage - + limiting the bandwith usage + .. meta:: :keywords: lighttpd, bandwidth limit, traffic shaping - + .. contents:: Table of Contents Description =========== -Starting with 1.3.8, lighttpd supports limiting the bandwidth for -a single connection or config context like a virtual host or a URL. +Starting with 1.3.8 lighttpd supports limiting the bandwith for a single connection +or config-context like virtual-host or URL. Options ======= :connection.kbytes-per-second: - limit the throughput for each single connection to the given + limit the through-put for each single connection to the given limit in kbyte/s - + default: 0 (no limit) :server.kbytes-per-second: - limit the throughput for all connections to the given limit + limit the through-put for all connections to the given limit in kbyte/s - - if you want to specify a limit for a special virtual server + + if you want to specify a limit for a special virtual server use: :: - + $HTTP["host"] == "www.example.org" { server.kbytes-per-second = 128 } - - which will override the default for this host. - + + which will overwrite the default for this host. + default: 0 (no limit) Additional Notes ================ -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. +Keep in mind that a limit below 32kb/s might actually limit the traffic to 32kb/s. This +is caused by by the size of the TCP-sendbuffer. diff --git a/doc/outdated/trigger_b4_dl.txt b/doc/trigger_b4_dl.txt index f5c9d29..ffdfb53 100644 --- a/doc/outdated/trigger_b4_dl.txt +++ b/doc/trigger_b4_dl.txt @@ -11,11 +11,11 @@ Module: mod_trigger_b4_dl :Revision: $Revision: 1.2 $ :abstract: - another anti-hot-linking module - + another anti hot-linking module + .. meta:: :keywords: lighttpd, hot-linking, deep-linking - + .. contents:: Table of Contents Description @@ -23,11 +23,11 @@ Description Anti Hotlinking: - * if user requests ''download-url'' directly, the request is denied and he is redirected to ''deny-url' - * if user visits ''trigger-url'' before requesting ''download-url'', access is granted - * if user visits ''download-url'' again after ''trigger-timeout'' has elapsed, the request is denied and he is redirected to ''deny-url'' + * if user requests ''download-url'' directly the request is denied and he is redirected to ''deny-url' + * if user visits ''trigger-url'' before requesting ''download-url'' access is granted + * if user visits ''download-url'' again after ''trigger-timeout'' has run down to the request is denied and he is redirected to ''deny-url'' -The trigger information is either stored locally in a gdbm file or remotely in memcached. +The storage for the trigger information is either stored locally in a gdbm file or remotly in memcached. Requirements ------------ @@ -47,8 +47,8 @@ Options trigger-before-download.deny-url = "http://192.168.1.5:1025/index.html" trigger-before-download.trigger-timeout = 10 -If both trigger-before-download.gdbm-filename and -trigger-before-download.memcache-hosts is set gdbm will take precedence. +If both trigger-before-download.gdbm-filename and +trigger-before-download.memcache-hosts is set gdbm will be prefered. Installation ============ diff --git a/doc/outdated/userdir.txt b/doc/userdir.txt index 7a62f06..65cc9d0 100644 --- a/doc/outdated/userdir.txt +++ b/doc/userdir.txt @@ -11,11 +11,11 @@ Module: mod_userdir :Revision: $Revision: 1.1 $ :abstract: - The userdir module ... - + The userdir module ... + .. meta:: :keywords: lighttpd, userdir - + .. contents:: Table of Contents Description @@ -23,18 +23,18 @@ Description The userdir module provides a simple way to link user-based directories into the global namespace of the webserver. -Requests in the form ``/~user/page.html`` are rewritten to take the file ``page.html`` from the home directory of the user. -If ``userdir.path`` is set, the path will be appended to the home directory +Requests in the form ``/~user/page.html`` are rewritten to take the file ``page.html`` from the home-directory of the user. +If ``userdir.path`` is set, the path will be appended at the home-directory building the classic mapping of: :: userdir.path = "public_html" - URL: http://www.example.org/~jan/index.html + URL: http://www.example.org/~jan/index.html Path: /home/jan/public_html/ -To control which users should be able to use this feature you can set a list of usernames to include or exclude. +To control which users should be able to use this feature you can set a include- or a exclude list for username. -In case your mapping is independent of /etc/passwd you can use +In case you mapping is independent of /etc/passwd you can use ``userdir.basepath``: :: userdir.path = "htdocs" @@ -46,16 +46,16 @@ In case your mapping is independent of /etc/passwd you can use Options ======= -userdir.path (required option) - usually it should be set to "public_html" to take ~/public_html/ as the document root - - Default: unset (mod_userdir disabled; set it to "" if you want the home directory to be the document root as it was the default before 1.4.19) +userdir.path + usually it should set the "public_html" to take ~/public_html/ as the document-root + + Default: empty (document-root is the home-directory) Example: :: userdir.path = "public_html" userdir.exclude-user - list of usernames which may not use this feature + list of usernames which should not be able to use this feature Default: empty (all users may use it) Example: :: @@ -66,7 +66,7 @@ userdir.exclude-user userdir.include-user if set, only users from this list may use the feature - Default: empty (all users may use it) + Default: empty (all user may use it) userdir.basepath if set, don't check /etc/passwd for homedir diff --git a/doc/outdated/webdav.txt b/doc/webdav.txt index 7b5259e..175f33f 100644 --- a/doc/outdated/webdav.txt +++ b/doc/webdav.txt @@ -12,17 +12,17 @@ Module: mod_webdav :abstract: WebDAV module for lighttpd - + .. meta:: :keywords: lighttpd, webdav - + .. contents:: Table of Contents Description =========== The WebDAV module is a very minimalistic implementation of RFC 2518. -Minimalistic means that not all operations are implemented yet. +Minimalistic means that not all operations are implementated yet. So far we have @@ -32,18 +32,18 @@ So far we have * DELETE * PUT -and the usual GET, POST, HEAD from HTTP/1.1. +and the usual GET, POST, HEAD from HTTP/1.1. -So far, mounting a WebDAV resource into Windows XP works and the basic litmus +So far mounting a webdav resource into Windows XP works and the basic litmus tests are passed. Options ======= webdav.activate - If you load the webdav module, the WebDAV functionality has to be - enabled for the directories you want to provide to the user. - + If you load the webdav module the WebDAV functionality has to be + enabled for the directories you want to the provide to the user. + Default: disable webdav.is-readonly @@ -54,9 +54,9 @@ webdav.is-readonly Examples ======== -To enable WebDAV for the /dav directory, you wrap your webdav options in -a conditional. You have to use the regex like below as you want to match -the directory /dav and everything below it, but not e.g. /davos. :: +To enable WebDAV for the /dav directory you take a conditional and wrap around +your webdav options. You have to use the regex like below as you want to match +the directory /dav and everything below it, but not /davos. :: $HTTP["url"] =~ "^/dav($|/)" { webdav.activate = "enable" |