阿哥论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 537|回复: 0

linux下apache编译安装后添加新模块

[复制链接]

2019

主题

1

好友

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

优秀会员 助人为乐 辛勤工作 技术精英 多才多艺 优秀班竹 灌水天才 星球管理 宣传大使 灌水之王 财富勋章 版主勋章 动漫勋章 勤奋会员 论坛精英 PS高手 心 8 闪游皮肤 双鱼座 8★8➹ 志愿者 乖

发表于 2013-11-19 18:22:19 |显示全部楼层
由于种种原因,我们经常会遇到apache缺少某个模块。但是我们的项目必须使用某个模块,重新安装固然是一个方法。但是,如果能添加新模块会更好。下面,以我对apache的了解及实施经验,介绍如何添加新模块。
测试环境apache安装路径/usr/local/apache2/,版本2.2
以添加vhost_alias为例:
1,寻找编译该模块的c文件
#find  /  -name mod_vhost_alias.c
系统会给出c文件的路径如:/usr/local/httpd-2.2.3/module/mappers/mod_vhost_alias.c
2,用apxs编译该模块
#cd  /usr/local/httpd-2.2.3/modules/mappers/         进入c文件所在文件夹
#/usr/local/apache2/bin/apxs -i -a -c mod_vhost_alias.c   

选项说明:
-c执行编译操作
-i安装操作,安装一个或多个动态共享对象到服务器的modules目录
-a自动增加一个LoadModule行到httpd.conf文件,以激活此模块,若此行存在则启用之
-A与-a类似,但是它增加的LoadModule行前有井号前缀(#),即不激活此模块
-e需要执行编辑操作,可与-a和-A选项配合使用,与-i操作类似,修改httpd.conf文件,但并不安装此模块


执行以上命令后,apache会自动编译、安装和修改httpd.conf文件,并自动激活该模块。
3,测试apache是否成功加载该模块


#cd /usr/local/apache2/bin
#./apachectl –t -D DUMP_MODULES
执行上述命令后,apahce会给出已经加载的模块,我们可以观察下是否加载了我们编译的模块。
4,测试加载新模块后apache是否正常

本文摘自:http://blog.csdn.net/qqlinxi/article/details/6570913

该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

回顶部