AOLserver README ($Id$)

To compile PHP 4.0 as a module for AOLserver, you need:

- installed AOLserver 3.1 or later
  (see the note below for AOLserver 3.0)

NOTE: You should not use this module in production. PHP is not 100% stable
      yet in threaded mode. To increase reliability enable the Global Lock
      by removing #define NO_GLOBAL_LOCK in main/main.c. Also don't use
      php_value as it will lead to races in a sub-system (use an ini file
      instead).


1.) Configuring AOLserver

Read doc/install.txt in the source distribution

It usually boils down to changing the INST/PREFIX variable in 
include/Makefile.global and running make all install.

2.) Configuring PHP

$ ./configure \
	--with-aolserver=/path/to/installed/aolserver \
	<other options>

NOTE: If you are still using AOLserver 3.0, you need to retain the
      AOLserver source code and pass another option to PHP:

      --with-aolserver-src=/path/to/source/distribution

3.) Compiling and Installing PHP

$ make install

4.) Changing nsd.tcl

a) New section

Add a new section to pass options to PHP (required):

ns_section "ns/server/${servername}/module/php"

You can use the following commands in this section:

The 'map' command will cause AOLserver to pass all requests to *.php to
the PHP module (can be specified multiple times).  Example:

ns_param map *.php

The 'php_value "name val"' command assigns the configuration option name 
the value val (can be used multiple times). Example:

ns_param php_value "session.auto_start 1"

b) Enabling PHP

Then enable the PHP module:

ns_section "ns/server/${servername}/modules"
...
ns_param php ${bindir}/libphp4.so


=============================================================================
This has been tested with AOLserver release 3.0.

AOLserver support has been written by Sascha Schumann <sascha@schumann.cx>.
