File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / sapi / thttpd / README
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue May 29 12:34:35 2012 UTC (12 years, 7 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_29p0, v5_4_29, v5_4_20p0, v5_4_20, v5_4_17p0, v5_4_17, HEAD
php 5.4.3+patches

    1: README FOR THTTPD MODULE (by Sascha Schumann)        
    2: ($Date: 2012/05/29 12:34:35 $)
    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. 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>