使用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安装模块

使用apxs安装apache模块的更多相关文章

  1. apxs添加apache模块

    根phpize很类似,可以用apxs为Apache打模块: 要使用apxs,你的平台必须支持DSO特性, 而且Apache的httpd必须内建了mod_so模块.查看一下 httpd -l | gre ...

  2. Linux下编译安装Apache及模块

    Apache是时下最流行的Webserver软件之中的一个,支持多平台,可高速搭建web服务,并且稳定可靠.并可通过简单的API扩充.就能够集成PHP/Python等语言解释器. 文章这里解说怎样在l ...

  3. 安装mod_deflate模块启用apache的GZIP压缩

    安装mod_deflate模块启用apache的GZIP压缩 操作系统:Linux Cent OS 5 / Max OS X 10.6 snow leopard相关环境:Apache httpd 2. ...

  4. 重新启动 Apache 以加载上面安装的模块

    尽管Ubuntu 是一种新兴的Linux分支,但Ubuntu 组织却为Apache提供了丰富的支持软件,这些软件都可以从发行版的光盘获取,也可以从官方站点轻松下载.所以,Ubuntu非常适合作为Web ...

  5. 搭建PHP开发环境 apache+MySQL+PHP 安装phpMyAdmin模块

    该博文参考的资料来源于: http://wenku.baidu.com/view/0e4c569ddd3383c4bb4cd267.html http://www.cnblogs.com/pharen ...

  6. Ubuntu 14 中给 APACHE2安装 SSL 模块 Enable SSL site on Ubuntu 14 LTS, Apache 2.4.7:

    Ubuntu 14 中给 APACHE2安装 SSL 模块 Enable SSL site on Ubuntu 14 LTS, Apache 2.4.7: 参考 http://blog.csdn.ne ...

  7. linux下安装apache与php;Apache+PHP+MySQL配置攻略

    1.apache   在如下页面下载apache的for Linux 的源码包    http://www.apache.org/dist/httpd/;   存至/home/xx目录,xx是自建文件 ...

  8. Linux下安装Apache并以mod_wsgi方式部署django站点

    源码编译方式安装Apache 首先下载Apache源码压缩包,地址为http://mirror.bit.edu.cn/apache/httpd/ 继续下载apr和apr-util压缩包,地址为http ...

  9. CentOS 6.5安装Apache

    1.Apache的特点 功能强大.配置简单.速度快.应用广泛.性能稳定可靠,并可做代理服务器或负载均衡来使用 2.Apache的应用场合 使用Apache运行静态HTML网页.图片(处理静态小文件能力 ...

随机推荐

  1. 在Strust2 使用datatimepicker 标签引发的一系列问题

    问题:出现无法识别的问题 原因:Strust2.1开始,对于ajax类的标签不再使用<%@ taglib prefix="s" uri="/struts-tags& ...

  2. iOS 10 资料整理笔记

    1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...

  3. 在xcode6中使用矢量图(iPhone6置配UI)

    转载出处:http://blog.xoneday.com ios应用程序是一个图像主导的产品.在开发一个应用程序时,你需要各种尺寸的图标,你需要为每个图像文件制作一个@1x尺寸和一个@2x尺寸.这样你 ...

  4. Jetty错误: badMessage: java.lang.IllegalStateException: too much data after closed for HttpChannelOverHttp@472adad9{r=2,c=false,a=IDLE,uri=}

    最近用Jetty跑Spring MVC接收POST请求(POST中数据很大).出现数据无法获取到的问题.如: @RequestMapping(value = "/receive", ...

  5. 查看Java代码对应的汇编指令又一利器,JITWatch 转

    http://www.tuicool.com/articles/IRrIRb3 时间 2015-05-13 08:00:00  Liuxinglanyue's Blog 原文  http://java ...

  6. Quartz 2.3 动态添加、修改和删除定时任务

    下面直接上代码: <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>qu ...

  7. 消息队列系列(四):Rabbitmq常用命令行

    目录:安装目录下的 ./sbin rabbitmqctl [-n node] [-t timeout] [-q] {command} [command options…] http://www.rab ...

  8. 数据挖掘算法之关联规则挖掘(二)FPGrowth算法

    之前介绍的apriori算法中因为存在许多的缺陷,例如进行大量的全表扫描和计算量巨大的自然连接,所以现在几乎已经不再使用 在mahout的算法库中使用的是PFP算法,该算法是FPGrowth算法的分布 ...

  9. IReferenceCounted DotNetty.Common

    // Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file ...

  10. 奇怪也哉!做一个WebApp居然遇到了FF浏览器进不去某页的问题。

    一个小WebApp,原定login完后就进某页面.前天晚上之前一直在FF浏览器上调试,都正常. 前天晚上稍修改了,提交war上传,之后就休息了. 昨天晚上有些事情处理打开一看,乖乖,点登录后就在登陆页 ...