zoukankan      html  css  js  c++  java
  • httpd添加新模块

    有些时候因为特殊需求,需要在已安装的httpd上添加一些额外的模块,这时候要使用httpd-devel中的apxs工具。要使用这个扩展机制,你的平台必须支持DSO特性,即要求Apache httpd必须内建了mod_so模块。

    apxs添加模块的方法很简单,以下是几个可能用上的选项。

    -c mod_foo.c:将c文件编译为.so文件。
    -i:表示安装一个或多个模块到apache服务所在目录的modules目录中。
    -a:表示自动在httpd.conf中加入LoadModule行。
    -A:表示自动在httpd.conf中加入#LoadModule行,也就是说安装了模块但是不启用。
    -n:显式指定-i需要安装的模块名。

    例如:添加mod_proxy.so模块。

    [root@localhost ~]# cd /root/httpd-2.4.29/modules
    [root@localhost modules]# apxs -c -i -A proxy/mod_proxy.c proxy/proxy_util.c

    安装成功后的最后几行会告诉你要去修改配置文件,看情况是否要修改LoadModule指令来加载模块。

    有时候添加一个模块后重启失败了并提示undefined Symbol,说明还需添加另外相关的所需模块。

    chmod 755 /usr/local/apache/modules/mod_proxy.so
    [preparing module `proxy' in /etc/apache/httpd.conf]

    例如,上面如果只安装apxs -c -i -a proxy/mod_proxy.c时重启httpd。

    Starting httpd: httpd: Syntax error on line 117 of /etc/apache/httpd.conf: Cannot load modules/mod_proxy.so into server: /usr/local/apache/modules/mod_proxy.so: undefined symbol: ap_proxy_strmatch_domain

    这说明还需要装相关的devel或者util对应的模块。

  • 相关阅读:
    Redis 代理 twemproxy
    redis sentinel 集群监控 配置
    RabbitMQ 消息队列 配置
    codis 新版本 CodisLabs 编译安装
    CentOS7 开源跳板机(堡垒机) Jumpserver
    tomcat 优化配置 java-8 tomcat-7
    CentOS 7 安装配置 NFS
    CentOS 7 x64 安装 Ceph
    自动化运维 Ansible
    Java之数据类型讲解
  • 原文地址:https://www.cnblogs.com/liujunjun/p/12049541.html
Copyright © 2011-2022 走看看