CentOS安装Apache的FastCGI模块(mod_fastcgi)

网上有很多篇关于Apache的fastcgi模块安装说明的文章,大部分都是基于Apache源码编译的,如果是通过yum install方式安装httpd的话,直接依葫芦画瓢必然会遇到各种各样的编译问题,通过查阅老外写的一些关于CentOS下Apache的FastCGI模块(mod_fastcgi)的安装文档,我大致重新整理了一下。

1. 安装编译相关的依赖包

# yum install httpd-devel apr apr-devel libtool

2. 下载mod_fastcgi源代码

# wget http://www.fastcgi.com/dist/mod_fastcgi-current.tar.gz

3. 解压并进行编译安装

# tar zxvf mod_fastcgi-2.4.6.tar.gz
# cd mod_fastcgi-2.4.6
# cp Makefile.AP2 Makefile
# vim Makefile
修改top_dir目录,64位系统的路径为lib64,32位系统的路径为/usr/lib/httpd

top_dir = /usr/lib64/httpd

 

保存退出后,开始进行编译安装。
# make
# make install

 

4. 加载模块

# vim /etc/httpd/conf/httpd.conf
找到LoadModule部分,添加一行加载语句

...

LoadModule fastcgi_module modules/mod_fastcgi.so
...


5. 重启服务

# /etc/init.d/httpd restart

如果能正常启动,则log里面将显示以下信息

# grep -i "FastCGI" /var/log/httpd/error_log

[Mon Jul 29 06:54:27 2013] [notice] FastCGI: process manager initialized (pid 2098) 
[Mon Jul 29 06:54:27 2013] [notice] Apache/2.2.15 (Unix) DAV/2 mod_fastcgi/2.4.6 configured -- resuming normal operations


6. 安装FPM(FastCGI进程管理器)

FPM(FastCGI 进程管理器)用于替换 PHP FastCGI 的大部分附加功能,对于高负载网站是非常有用的。
# yum install php-fpm
# /etc/init.d/php-fpm start
# chkconfig php-fpm on
# netstat -anp |grep php
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 2575/php-fpm 
unix 3 [ ] STREAM CONNECTED 25812 2575/php-fpm 
unix 3 [ ] STREAM CONNECTED 25811 2575/php-fpm

7. 修改配置

新建一个配置文件/etc/httpd/conf.d/fastcgi.php.conf

DirectoryIndex index.html index.shtml index.cgi index.php
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /var/www/cgi-bin/php5-fcgi
FastCgiExternalServer /var/www/cgi-bin/php5-fcgi -idle-timeout 60 -host 127.0.0.1:9000 -pass-header Authorization


重启Apache和FPM: 
# service httpd restart 
# service php-fpm restart 

测试phpinfo()页面,配置成功则显示为: 
... 
Server API FPM/FastCGI 
...

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。