本帖最后由 蔡炳森 于 2016-2-2 14:51 编辑
静态编译:
编译的时候,所有的模块自己编译进/usr/local/apache2/bin /httpd 这个文件中 ,启动Apache的时候这些模块就已经加载进来了,可以直接来使用,而不用再 httpd.conf 中在 LoadModule 来加载,只要在 中来配置就可以了。使用静态编译会耗费一定的内存,毕竟我们是将暂时不需要的模块进行了加载。
动态编译:
编译的时候,使用 enable-module=shared 或者 enable-modules-shared=module来动态编译。 动态显然就不编译到httpd里面去了,启动的时候根本不会加载这个模块, 而是将所有的动态安装的模块放到/usr/local/apache2/modules这个目录中。你会发现里面有很多.so结尾的 文件。你想用,就在httpd.conf中使用 loadmodule 这个语法来加载,只需要将LoadModule这个模块前的#去掉就可启用该模块。然后在相关的配置中加入相关的语句。
例如:我们要使用mod_headers这个模块来定义header。只要在httpd.conf中添加如下语句:
Header add MyHeader "Hello"
到这步为止就完成了启用loadModule模块和定义loadmodule功能。
如有理解错误的话,欢迎拍砖。
附录:
apache的扩展模块安装
http://www.apelearn.com/bbs/foru ... id=848&fromuid=6919
(出处: 【阿铭Linux】)
静态编译:
编译的时候,所有的模块自己编译进/usr/local/apache2/bin /httpd 这个文件中 ,启动Apache的时候这些模块就已经加载进来了,可以直接来使用,而不用再 httpd.conf 中在 LoadModule 来加载,只要在 中来配置就可以了。使用静态编译会耗费一定的内存,毕竟我们是将暂时不需要的模块进行了加载。
动态编译:
编译的时候,使用 enable-module=shared 或者 enable-modules-shared=module来动态编译。 动态显然就不编译到httpd里面去了,启动的时候根本不会加载这个模块, 而是将所有的动态安装的模块放到/usr/local/apache2/modules这个目录中。你会发现里面有很多.so结尾的 文件。你想用,就在httpd.conf中使用 loadmodule 这个语法来加载,只需要将LoadModule这个模块前的#去掉就可启用该模块。然后在相关的配置中加入相关的语句。
例如:我们要使用mod_headers这个模块来定义header。只要在httpd.conf中添加如下语句:
Header add MyHeader "Hello"
到这步为止就完成了启用loadModule模块和定义loadmodule功能。
如有理解错误的话,欢迎拍砖。
附录:
apache的扩展模块安装
http://www.apelearn.com/bbs/foru ... id=848&fromuid=6919
(出处: 【阿铭Linux】)
编辑回复