blob: fb10cb9040a4e0829cf77bd1e9ffb8701ec78d20 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
mod_fcgid is alternative FastCGI module for apache 2.x
(note that "old and proven" mod_fastcgi doesn't work at all with apache 2.2)
With mod_fcgid apache controls spawned FastCGI processes (as oposed to "external"
FastCGI servers).
Some features:
- Binary compatibility to mod_fastcgi
- Strict control on process spawn
- Simple spawning-speed control strategy
- Fastcgi server error detection
Before running this script, you must have apache2 installed.
Download and build apache2 build script from http://slackbuilds.org
To use it, add the following line to your httpd.conf file:
Include /etc/apache2/extra/httpd-fcgid.conf
Sample SuEXEC php wrapper script:
#!/bin/sh
#
# sample PHP FastCGI wrapper
PHPRC="/etc" # directory which contains php.ini
PHP_FCGI_CHILDREN=4
PHP_FCGI_MAX_REQUESTS=250
export PHPRC PHP_FCGI_CHILDREN PHP_FCGI_MAX_REQUESTS
exec /usr/bin/php-cgi
and apropriate vhost config:
# VirtualHost with SuExec and FastCGI PHP
<VirtualHost *:80>
# note: apache user should be member of 'vhost_group'
SuexecUserGroup vhost_user vhost_group
ServerAdmin webmaster@vhost.example.com
DocumentRoot /var/www/vhosts/vhost.example.com/htdocs
ServerName vhost.example.com
ServerAlias www.vhost.example.com
ErrorLog /var/log/apache2/vhost.example.com-error_log
CustomLog /var/log/apache2/vhost.example.com-access_log common
# note: chmod /var/www/vhosts/vhost.example.com to 0750
<Directory /var/www/vhosts/vhost.example.com/htdocs>
Options ExecCGI
FCGIWrapper /var/www/vhosts/vhost.example.com/cgi-bin/php-wrapper .php
DirectoryIndex index.html index.php
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
|