使用apxs安装apache模块

                -——by石锅拌饭

1.缘由

前几天迁移系统。发现配置了fastcgi的一个脚本下载文件总是提示类似Connection reset by peer:FastCGI错误,后来发现应该是下载文件时间超过了fastcgi指定的idle-timeout导致的,这个时间默认是30秒,文件太大就easy超时。

为了解决问题。于是把下载文件的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安装模块

最新文章

  1. 常用 Gulp 插件汇总 —— 基于 Gulp 的前端集成解决方案(三)
  2. [vijos P1040] 高精度乘法
  3. petapoco存储过程
  4. 比较两个Long对象值
  5. c语言 函数传输传递的三种方式(值、指针、引用)
  6. requirejs模块化框架用法分享
  7. sqlite数据库查询批量
  8. java解析excel2003和excel2007:The supplied data appears to be in the office 2007+XML Polonly supports OLE2 office documents
  9. 转:云风skynet服务端框架研究
  10. EF中主表和附表一起提交的话,如果主附表的主键外键已经设定。
  11. 命令行启动Hololens Emulator,可解决内存不足的问题
  12. java算法 蓝桥杯 高精度加法
  13. 【python密码学编程】7.暴力破解凯撒加密法
  14. Python入门 - 控制结构
  15. 2017-06-21(rmdir mv ln)
  16. Mysql-5.7.21安装配置
  17. C语言的布尔类型(_Bool)
  18. FreeMarker js 获取后台设置的request、session
  19. 简单的连接数据库的java程序模板
  20. JavaScript经典作用域问题(转载)

热门文章

  1. 【树形DP】Codeforces Round #395 (Div. 2) C. Timofey and a tree
  2. [CF911C]Three Garlands
  3. CLR探索系列:Windbg+SOS动态调试分析托管代码
  4. WCF服务测试工具
  5. Nagle算法&&延时确认
  6. css:滑动门
  7. wpf datagrid performance
  8. 修改nvm镜像地址
  9. centos7 ping127.0.0.1不通
  10. (转)spring boot实战(第六篇)加载application资源文件源码分析