Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 113 lines (85 sloc) 4.289 kB
3bf293f @andigutmans - Change from PHP5 -> PHP 5
andigutmans authored
1 Using PHP 5 with the Zeus Web Server
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
2 -----------------------------------
3
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
4 Zeus fully supports running PHP in combination with our
5 webserver. There are three different interfaces that can be used to
6 enable PHP:
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
7
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
8 * CGI
9 * ISAPI
10 * FastCGI
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
11
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
12 Of the three, we recommend using FastCGI, which has been tested and
13 benchmarked as providing the best performance and reliability.
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
14
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
15 Full details of how to install PHP are available from our
16 website, at:
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
17
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
18 http://support.zeus.com/products/php.html
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
19
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
20 If you have any problems, please check the support site for more
21 up-to-date information and advice.
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
22
23
7af6973 Update build instructions for Zeus web server
Ben Mansell authored
24 Quick guide to installing CGI/FastCGI with Zeus
25 -----------------------------------------------
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
26
7af6973 Update build instructions for Zeus web server
Ben Mansell authored
27 Step 1 - Compile PHP as FastCGI.
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
28
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
29 Compile as follows:
7af6973 Update build instructions for Zeus web server
Ben Mansell authored
30 ./configure --enable-fastcgi
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
31 make
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
32
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
33 Note that PHP has many options to the configure script -
34 e.g. --with-mysql. You will probably want to select your usual options
35 before compiling; the above is just a bare minimum, for illustration.
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
36
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
37 After compilation finishes, you will be left with an executable
38 program called 'php'. Copy this into your document root, under a
39 dedicated FastCGI directory (e.g. $DOCROOT/fcgi-bin/php)
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
40
4d48df3 Further updates to README.Zeus
Ben Mansell authored
41
7af6973 Update build instructions for Zeus web server
Ben Mansell authored
42 Step 2 - configure Zeus
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
43
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
44 Four stages:
45 - enable FastCGI
46 - configure FastCGI
47 - setup alias for FastCGI
48 - setup alias for PHP
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
49
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
50 1) Using the admin server, go to the 'module configuration' page for
51 your virtual server, and ensure that 'fastcgi' is enabled (select the
52 tickbox to the left).
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
53
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
54 2) While we can run FastCGI's locally, there are known problems with
55 some OS's (specifically, the communication between web server and
56 FastCGI happens over a unix domain socket, and some OS's have trouble
57 sustaining high connection rates over these sockets). So instead, we
58 are going to set up the PHP FastCGI to run 'remotely' over localhost
59 (this uses TCP sockets, which do not suffer this problem). Go to the
60 'fastcgi configuration' page, and under 'add remote fastcgi':
61 Add Remote FastCGI
62 Docroot path /fcgi-bin/php
63 Remote machine localhost:8002
64 The first entry is where you saved PHP, above.
65 The second entry is localhost:<any unused port>
66 We will start the FastCGI listening on this port shortly.
67 Click 'update' to commit these changes.
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
68
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
69 3) Go to the path mapping module and add an alias for FastCGI:
70 Add Alias
71 Docroot path /fcgi-bin
72 Filesystem directory /path/to/docroot/fcgi-bin
73 Alias type fastcgi
74 Click 'update' to commit these changes
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
75
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
76 4) Also on the path mapping module, add a handler for PHP:
77 Add handler
78 File extension php
79 Handler /fcgi-bin/php
80 Click 'update' to commit these changes
67f8673 @- Zeus Webserver support (version 3.3.6+) for ISAPI
Ben Mansell authored
81
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
82 Finally restart your virtual server for these changes to take effect.
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
83
84
7af6973 Update build instructions for Zeus web server
Ben Mansell authored
85 Step 3 - start PHP as a FastCGI runner
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
86
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
87 When you start PHP, it will pre-fork a given number of child processes
88 to handle incoming PHP requests. Each process will handle a given
89 number of requests before exiting (and being replaced by a newly
90 forked process). You can control these two parameters by setting the
91 following environment variables BEFORE starting the FastCGI runner:
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
92
7af6973 Update build instructions for Zeus web server
Ben Mansell authored
93 PHP_FCGI_CHILDREN - the number of child processes to pre-fork. This
94 variable MUST be set, if not then the PHP will not run as a FastCGI.
95 We recommend a value of 8 for a fairly busy site. If you have many,
96 long-running PHP scripts, then you may need to increase this further.
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
97
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
98 PHP_FCGI_MAX_REQUESTS - the number of requests each PHP child process
99 handles before exiting. If not set, defaults to 500.
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
100
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
101 To start the FastCGI runner, execute '$ZEUSHOME/web/bin/fcgirunner
102 8002 $DOCROOT/fcgi-bin/php'. Substitute the appropriate values for
103 $ZEUSHOME and $DOCROOT; also substitute for 8002 the port you chose,
104 above.
b00ef1e Added extra help with library issues, and some performance tuning tips
Ben Mansell authored
105
2c8c9d6 Altered README.Zeus to give instructions on building FastCGI.
Ben Mansell authored
106 To stop the runner (e.g. to experiment with the above environment
107 variables) you will need to manually stop and running PHP
108 processes. (Use 'ps' and 'kill'). As it is PHP which is forking lots
109 of children and not the runner, Zeus unfortunately cannot keep track
110 of what processes are running, sorry. A typical command line may look
111 like 'ps -efl | grep $DOCROOT/fcgi-bin/php | grep -v grep | awk
112 '{print $4}' | xargs kill'
Something went wrong with that request. Please try again.