mirror of
https://github.com/php/php-src.git
synced 2025-08-20 01:14:28 +02:00
| .. | ||
| config.m4 | ||
| cookies.php | ||
| CREDITS | ||
| date.php | ||
| formatter.java | ||
| jinfo.php | ||
| jver.php | ||
| Makefile.in | ||
| README | ||
| reqheaders.php | ||
| reqinfo.php | ||
| reqparams.php | ||
| servlet.c | ||
| servlet.dsp | ||
| servlet.java | ||
| sessions.php | ||
| web.xml | ||
What is PHP4 sapi/servlet?
PHP4 sapi/servlet builds upon the mechanism defined by ext/java to enable
the entire PHP processor to be run as a servlet. The primary advanatage
of this from a PHP perspective is that web servers which support servlets
typically take great care in pooling and reusing JVMs.
Notes:
1) While this code is intended to be able to run on any servlet engine,
it has only been tested on Apache's Jakarta/tomcat to date. Bug
reports, success stories and/or patches required to get this code
to run on other engines would be appreciated.
2) PHP has a habit of changing the working directory. Sapi/servlet will
eventually change it back, but while PHP is running the servlet engine
may not be able to load any classes from the CLASSPATH which are
specified using a relative directory syntax, or find the work directory
used for administration and JSP compilation tasks.
Build and execution instructions:
Most of the configuration hassles associated with ext/java are associated
with starting the JVM, and as such do not apply to sapi/servlet. In
particular, no updates to php.ini are required on any operating system.
Unix:
Build:
./configure --with-servlet --with-java
Execute:
add phpsrvlt.jar to CLASSPATH
add directory containing libphp4.so to LD_LIBRARY_PATH
merge/overwrite build/tomcat/examples/WEB-INF/web.xml from sapi/servlet
Win32:
Build:
add jdsk (or d:\build\tomcat\classes) to CLASSPATH
build sapi\servlet\servlet.dsp
Execute:
add phpsrvlt.jar to CLASSPATH
add directory containing php4ts.dll and phpsrvlt.dll to PATH
merge/overwrite build\tomcat\examples\WEB-INF\web.xml from sapi\servlet