在RHEL 5.3(Tikanga)上配置Apache + FastCGI(mod_fastcgi) + PHP
在RHEL 5.4(Tikanga)下搭建PHP+Memcached
二,详细的配置步骤:
(下面步骤的前提是Apache和PHP(php-cgi)均已经安装)
1,安装mod_fastcgi模块
1)下载:
wget
2)从源代码编译安装
tar -xzvf mod_fastcgi-current.tar.gz
cd mod_fastcgi-2.4.6
cp Makefile.AP2 Makefile
编辑Makefile,修改top_dir项的所值:/opt/httpd
(这里top_dir一项的值是apache的安装目录。)
make
make install
(使用updatedb手动刷新locate数据库,使用locate mod_fastcgi.so检查mod_fastcgi是否安装成功。)
2,配置Apache(下面将分别实现mod_fastcgi提供static, dynamic和external三种模式)
1)查找二进制文件php-cgi的路径(这里我使用从源代码编译安装PHP 5.3.3在/opt目录下,读者可以使用locate php-cgi来查找。)
/opt/bin/php-cgi
2)
static模式
a, 在/opt/httpd/conf/httpd.conf适当位置添加添加下面两行:
[xhtml]
LoadModule fastcgi_module modules/mod_fastcgi.so Include conf.d/mod_fastcgi.confb, 在/opt/httpd/conf.d目录下建立mod_fastcgi.conf
[xhtml]
<IfModule fastcgi_module> FastCgiServer /opt/httpd/cgi-bin/php.fcgi -processes 4 # Define a new handler "php-fcgi" for ".php" files, plus the action that must follow AddHandler php-fcgi .php Action php-fcgi /cgi-bin/php.fcgi </IfModule>c, 在/opt/cgi-bin目录下建立php.fcgi(注意修改此文件的权限为755)
[xhtml]
#!/bin/bash # Path to php.ini PHPRC=/usr/local/lib ### Set PATH ### PHP_CGI=/opt/bin/php-cgi PHP_FCGI_CHILDREN=2 PHP_FCGI_MAX_REQUESTS=1000 ### no editing below ### export PHPRC export PHP_FCGI_CHILDREN export PHP_FCGI_MAX_REQUESTS exec $PHP_CGId, 使用apachectl检查配置语法是否正确,然后重启Apache
[root@ bin]# /opt/httpd/bin/apachectl configtest
[root@ bin]# /opt/httpd/bin/apachectl restart
e, 在/opt/httpd/www目录下建立config.inc.php,使用浏览器访问。(若配置正确,那么PHP Variables栏目下的_SERVER["SERVER_SOFTWARE"]一项的值为:Apache/2.2.15 (Unix) mod_fastcgi/2.4.6)
[xhtml]
<?php phpinfo(); ?>如果使用ps axu| grep php-cgi查看,随Apache启动的php-cgi进程数目为13(计算公式:max-process*(PHP_FCGI_CHILDREN+1))。