Return to README CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / sapi / thttpd |
1.1 ! misho 1: README FOR THTTPD MODULE (by Sascha Schumann) ! 2: ($Date: 2003-02-19 11:57:21 +0100 (Wed, 19 Feb 2003) $) ! 3: ! 4: This is a SAPI module for PHP 4.x supporting thttpd, the tiny, ! 5: turbo, throttling HTTP server by Jef Poskanzer. ! 6: ! 7: NOTE: All HTTP requests will be serialized. That means, one long running ! 8: script will block all other requests. Choose another web server, ! 9: if you want to execute arbitrarily long running scripts. ! 10: ! 11: The module contains a patch against version 2.21b of thttpd. The patch ! 12: fixes a number of bugs and adds some functionality: ! 13: ! 14: - HTTP/1.1 Persistent Connection/Pipeline Support ! 15: - PHP Scripting (**.php by default) ! 16: - Highlighting PHP Scripts (**.phps by default) ! 17: - Fast Accept Loop (unique to PHP) ! 18: - Periodic Connection Expiring (unique to PHP) ! 19: - Log to stdout (logfile=-) ! 20: - Fixes the Host: header vulnerability (affects vhosts only) ! 21: - Asynchronous request body handling (e.g. for POSTs) ! 22: - Accept filter for Linux ! 23: - Fix for non-blocking sending of thttpd-generated responses ! 24: ! 25: You can configure the filename extensions by creating a config file for ! 26: thttpd and setting these entries: ! 27: ! 28: phppat=PATTERN ! 29: phpspat=PATTERN ! 30: ! 31: The PATTERN has the same format as defined here: ! 32: ! 33: http://acme.com/software/thttpd/options.html#CGI_PATTERN ! 34: ! 35: "**.php" means: match any file ending in .php in any directory. ! 36: Setting the pattern from the command line is not supported. ! 37: ! 38: NOTE: This version supports *only* thttpd 2.21b, no prior or later ! 39: version. ! 40: ! 41: This is a functional and stable module (it runs a large application ! 42: like IMP 2.2.0 without any problems). Its original intention was to ! 43: demonstrate the ability of PHP to work in every web server environment. ! 44: ! 45: REQUIRED DOWNLOADS ! 46: ! 47: 1. thttpd 2.21b (2.20 or +2.22beta will _not_ work) ! 48: ! 49: Full Distribution: ! 50: http://www.acme.com/software/thttpd/thttpd-2.21b.tar.gz ! 51: ! 52: 2. PHP 4.x ! 53: ! 54: Download: ! 55: http://www.php.net/ ! 56: ! 57: Snapshots from CVS: ! 58: http://snaps.php.net/ ! 59: ! 60: ! 61: BUILD INSTRUCTIONS ! 62: ! 63: 1. Extract software packages ! 64: ! 65: $ gunzip -c thttpd-2.xx.tar.gz | tar xf - ! 66: $ gunzip -c php-*.tar.gz | tar xf - ! 67: ! 68: 2. Prepare PHP ! 69: ! 70: $ cd php-* ! 71: $ ./configure \ ! 72: --with-thttpd=../thttpd-2.xx \ ! 73: <further PHP options> ! 74: $ make install ! 75: $ cd .. ! 76: ! 77: You can see the list of valid PHP options by executing ! 78: ! 79: $ ./configure --help ! 80: ! 81: 3. Configure, compile, install thttpd ! 82: ! 83: Now follow the thttpd instructions. The Makefile template of ! 84: thttpd was changed to automatically use the components ! 85: required by PHP.