summaryrefslogtreecommitdiff
path: root/sapi/thttpd/README
diff options
context:
space:
mode:
Diffstat (limited to 'sapi/thttpd/README')
-rw-r--r--sapi/thttpd/README85
1 files changed, 85 insertions, 0 deletions
diff --git a/sapi/thttpd/README b/sapi/thttpd/README
new file mode 100644
index 0000000..1e80a01
--- /dev/null
+++ b/sapi/thttpd/README
@@ -0,0 +1,85 @@
+README FOR THTTPD MODULE (by Sascha Schumann)
+($Date$)
+
+ This is a SAPI module for PHP 4.x supporting thttpd, the tiny,
+ turbo, throttling HTTP server by Jef Poskanzer.
+
+ NOTE: All HTTP requests will be serialized. That means, one long running
+ script will block all other requests. Choose another web server,
+ if you want to execute arbitrarily long running scripts.
+
+ The module contains a patch against version 2.21b of thttpd. The patch
+ fixes a number of bugs and adds some functionality:
+
+ - HTTP/1.1 Persistent Connection/Pipeline Support
+ - PHP Scripting (**.php by default)
+ - Highlighting PHP Scripts (**.phps by default)
+ - Fast Accept Loop (unique to PHP)
+ - Periodic Connection Expiring (unique to PHP)
+ - Log to stdout (logfile=-)
+ - Fixes the Host: header vulnerability (affects vhosts only)
+ - Asynchronous request body handling (e.g. for POSTs)
+ - Accept filter for Linux
+ - Fix for non-blocking sending of thttpd-generated responses
+
+ You can configure the filename extensions by creating a config file for
+ thttpd and setting these entries:
+
+ phppat=PATTERN
+ phpspat=PATTERN
+
+ The PATTERN has the same format as defined here:
+
+ http://acme.com/software/thttpd/options.html#CGI_PATTERN
+
+ "**.php" means: match any file ending in .php in any directory.
+ Setting the pattern from the command line is not supported.
+
+ NOTE: This version supports *only* thttpd 2.21b, no prior or later
+ version.
+
+ This is a functional and stable module (it runs a large application
+ like IMP 2.2.0 without any problems). Its original intention was to
+ demonstrate the ability of PHP to work in every web server environment.
+
+REQUIRED DOWNLOADS
+
+ 1. thttpd 2.21b (2.20 or +2.22beta will _not_ work)
+
+ Full Distribution:
+ http://www.acme.com/software/thttpd/thttpd-2.21b.tar.gz
+
+ 2. PHP 4.x
+
+ Download:
+ http://www.php.net/
+
+ Snapshots from CVS:
+ http://snaps.php.net/
+
+
+BUILD INSTRUCTIONS
+
+ 1. Extract software packages
+
+ $ gunzip -c thttpd-2.xx.tar.gz | tar xf -
+ $ gunzip -c php-*.tar.gz | tar xf -
+
+ 2. Prepare PHP
+
+ $ cd php-*
+ $ ./configure \
+ --with-thttpd=../thttpd-2.xx \
+ <further PHP options>
+ $ make install
+ $ cd ..
+
+ You can see the list of valid PHP options by executing
+
+ $ ./configure --help
+
+ 3. Configure, compile, install thttpd
+
+ Now follow the thttpd instructions. The Makefile template of
+ thttpd was changed to automatically use the components
+ required by PHP.