• 欢迎访问MACD实战投资网站,推荐使用最新版谷歌Chrome浏览器访问本网站,关注公众号 丁火甲木庚金 www.macd11.com/subscriptions

(原创)Apache结合spawn-fcgi使用FastCGI模式,加速数倍以上!

原创总结 丁火 15年前 (2010-05-19) 5357次浏览 7个评论

这个方法是我在VPS测试中发现的,之前没有看过相同的例子,算是原创吧。

spawn-fcgi这个包原来是属于Lighttpd里的,现在已经可以独立出来使用。原先我看一些文档,在VPS上配置nginx时使用spawn-fcgi包作为FastCGI支持模块(当然还有其他的支持模块,如php-fpm包),后来因为配置nginx时老出现502错误,就暂时使用apache了。把nginx自启动关闭,把 apache启动后,打开网页发现速度比之前快了很多!我开始以为是网络一时加速而已,后来过了几天也发现很快。感觉快了最少两倍以上。(没有用工具严格测试过)后来一想,是apache的运行模式改用了FastCGI模式,速度成倍提高。刚才重新配置测试了一次,果然如此!

方法:系统平台是CentOS 5,前提是LAMP已配置好,运行正常。
1、32位:rpm -ivh http://centos.alt.ru/repository/centos/5/i386/spawn-fcgi-1.6.3-1.el5.i386.rpm
64位:rpm -ivh http://centos.alt.ru/repository/centos/5/x86_64/spawn-fcgi-1.6.3-1.el5.x86_64.rpm
(也可以去官方下载源码包编译安装:http://www.lighttpd.net/download/spawn-fcgi-1.6.3.tar.gz)

2、使用spawn-fcgi来控制php-cgi的FastCGI进程:
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u apache -g apache -f /usr/bin/php-cgi
参数含义如下:
-f <fcgiapp> 指定调用FastCGI的进程的执行程序位置,根据系统上所装的PHP的情况具体设置。
-a <addr> 绑定到地址addr。
-p <port> 绑定到端口port。
-s <path> 绑定到unix socket的路径path。
-C <childs> 指定产生的FastCGI的进程数,默认为5。(仅用于PHP)
-P <path> 指定产生的进程的PID文件路径。
-u和-g FastCGI使用什么身份(-u 用户 -g 用户组)运行,CentOS下可以使用apache用户,其他的根据情况配置,如nobody、www-data等。
4. 将这行代码加入到/etc/rc.local文件底部,这样系统启动的时候就可以同时启动PHP的FastCGI进程。


macd11.com 和 丁火甲木庚金 公众号版权所有丨如未注明 , 均为原创丨转载请注明原文链接。
喜欢 (0)
[sp91@qq.com]
分享 (0)

您必须 登录 才能发表评论!

(7)个小伙伴在吐槽
  1. 你只写了如何控制php-cgi进程,没有写在apache里如何配置啊
    轻逐微风2010-06-26 13:32
  2. 您应该像楼上说的,将apache的httpd.conf配置部分写出来。 “前提是LAMP已配置好,运行正常。”这样是不行的。
    loveworking2010-10-18 23:17
    • 这个配置就是一般的apache配置,偶那时忘了贴上,现在也没必要贴了,只是提供一个可行的思路。
  3. 不贴apache的配置说明,大家都没法搞懂得。 用spawn-fcgi来管理php进程的方法估计大家都知道。
    XStar2011-05-28 19:28