码迷,mamicode.com
首页 > Web开发 > 详细

使用apxs安装apache模块

时间:2014-10-13 02:24:49      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   使用   ar   strong   文件   sp   

使用apxs安装apache模块

                -——by石锅拌饭


1.缘由

前几天迁移系统,发现配置了fastcgi的一个脚本下载文件总是提示类似Connection reset by peer:FastCGI错误,后来发现应该是下载文件时间超过了fastcgi指定的idle-timeout导致的,这个时间默认是30秒,文件太大就容易超时。为了解决这个问题,于是把下载文件的cgi脚本运行环境配置成cgi。

然而,坑爹的是,apache2.4.7已经默认采用mod_cgid模块代替mod_cgi模块,而mod_cgid模块与我用的python的jon模块有冲突,只好重新安装mod_cgi模块来替换掉mod_cgid模块了。之前我是用源码编译的apache2.4.7,心想这回坑爹了,重新编译apache搞挂线上系统环境就坑了。。还好,感谢万能的互联网,苦逼的查了一个小时,终于找到了一个不用重新编译apache安装新模块的方法,于是乎,在测试机上测试后,就安装到线上环境了,用mod_cgi模块替代mod_cgid模块后,与jon模块完美兼容,可以成功下载文件了。


2.apxs工具添加模块

首先当然是找到apache2.4.7的源码,进入$APACHE_SRC_HOME/modules/generators目录,会发现下面有mod_cgi.c文件,然后使用apxs工具编译就行了(注意,如果是像我一样源码安装的apache,那么apxs工具已经自动安装好了,在$APACHE_HOME/bin目录下面)。

apxs编译模块命令:

$APACHE_HOME/bin/apxs -i -a -c mod_cgi.c

如果没有报错,那么恭喜你,安装成功了。可以到apache的modules目录下看看有没有mod_cgi.so这个文件,有的话就没问题了。然后接下来就是修改httpd.conf文件了,将加载mod_cgid模块的语句去掉,然后加上加载mod_cgi模块的语句即可,如下所示:

#LoadModule cgid_module modules/mod_cgid.so 
LoadModule cgi_module modules/mod_cgi.so

最后,重启apache就OK了。


3.参考资料

使用apxs工具给apache安装模块

使用apxs安装apache模块

标签:style   blog   http   io   使用   ar   strong   文件   sp   

原文地址:http://blog.csdn.net/sgbfblog/article/details/40025343

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!