Httpd运维日志:通过apxs添加模块

Brief                                

  在部署Httpd时为方便管理和安全等原因,我们仅会安装所需的模块,那么后期功能扩展时则需要通过Httpd内置提供的apxs程序来进行模块添加。

  而apxs程序则位于apache/bin目录下。

 

Premise                              

  首先我们的平台必须支持DSO特性,而且Httpd必须已经内建了mod_so模块。

  DSO(Dynamic Shared Object,动态共享对象)

    是一种动态连接/加载的机制,从而可以在运行时将编译成特殊格式的代码加载到可执行程序的地址空间。然后通过mod_so提供的LoadModule指令在运行时加载到Httpd服务器中。

  mod_so模块

    作用:运行时加载DSO模块(Httpd进程启动时可加载DSO模块来扩展功能)

        后缀:.so或.dll

  检查是否已内建mod_so模块: > httpd -l | grep mod_so 

 

Install module by apxs                      

  apxs的全称为APache eXtenSion作为Httpd服务器编译和安装扩展模块的工具,用于编译一个或多个程序或目标代码文件为动态共享对象。

   > apxs -i -a -c <file> 

  <file>可以是C源码文件(.c)、地址独立的目标代码文件(.o)甚至是一个库(.a)。

  Httpd默认支持的模块C源码文件位于apache/modules/metadata/目录下,如mod_headers.c (若要配置请求头、响应头的信息必须通过它)

   > /app/apache/bin/apxs -i -a -c /app/apache/modules/metadata/mod_headers.c   执行后在/app/apache/modules/下多了一个mod_headers.so文件

  然后我们再在/app/apache/conf/httpd.conf中添加

复制代码
LoadModule headers_module /modules/mod_headers.so

<IfModule headers_module>

    Header add Access-Control-Allow-Origin *

    Header add Access-Control-Allow-Method "POST,GET,OPTIONS"

</IfModule>
复制代码

 

Thanks                            

http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/dso.html

http://blog.51yip.com/apachenginx/871.html

http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/programs/apxs.html

如果您觉得本文的内容有趣就扫一下吧!捐赠互勉!

posted @ 2015-08-26 23:20 ^_^肥仔John 阅读( 148) 评论( 0) 编辑 收藏
 

公告

肥仔John@github
作品:
 
 
本文转自
^_^肥仔John博客园博客,原文链接: http://www.cnblogs.com/fsjohnhuang/p/4759191.html,如需转载请自行联系原作者
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值