Apache模块

来源:互联网 发布:农行软件开发中心待遇 编辑:程序博客网 时间:2024/06/07 07:28

DSO模块加载模块提供了灵活性。
模块的类型:
核心模块
标准模块
第三方模块

使用apxs编译安装模块
首先查看已经安装过mod_so模块了没
httpd -M


安装mod_log_access模块
wget http://ww.givc.com/software/apache/modules/mod_log_access-1.03.tar.gz
tar -zxvf mod_log_access-1.03.tar.gz
cd mod_log_access-1.03
通过查看READEME文件知道要修改Makefile文件的APACHE_PREFIX和APACHE_VERSION变量。
修改:
APACHE_PREFIX=/usr/local/apache2
APACHE_VERSION=2.2.21
保存后再
make && make install
在这个例子中,使用的是make命令来进行编译的,其实是make调用了apxs程序来执行。

使用apxs来进行编译安装模块
安装mod_txt模块
cd /usr/local/src
wget http://apache.webthing.com/mod_txt/mod_txt.c
/usr/local/apache2/bin/apxs -c -i -a     mod_txt.c
l然后修改配置文件,并在httpd.con文件中的合适位置添加如下指令
            AddOutputFilter  text-filter     .txt
        AddType text/html       .txt
        TextHeader      /path/to/header-file
                TextFooter      /path/to/footer-file                       
再重启服务器,就可以用了

使用静态链接模块
编译时直接指定 ./configure --enable-modules=most
就一句话,编译时指定静态链接的模块。再make && make install
编译好就可以用了


使用动态链接模块
动态链接模块的使用方法
首先查看已经安装过mod_so模块了没
httpd -M
如果想使用某个动态链接的模块
Apache2.X
要在httpd.conf里加
LoadModule vhost_alia_module modules/mod_vhost_alias.so
LoadModule ssl_module modules/mod_ssl.so
才算启用模块
PS:LoadModule只能加载Apache的根目录的模块,要想加载其他路径的模块,需要用LoadFile换LoadModule
.老版本里DSO模块装入的顺序决定了Apache使用它们处理URL的顺序

Apache 1.3.X动态链接模块的使用方法
必须先用LoadModule将其加载,然后使用AddModule来启用
PS:在这个版本里,即使是静态编译的模块也需要用AddModule指令来启用。


为Apache添加新模块
天真的以为用yum install -y php可以直接把php这个模块动态加载到Apache中,没什么副作用。副作用是会重新安装一个rpm包的apache。把php动态加载到新安装的那个apache上去了。而不是动态安装到之前的源码包上。

以DSO的方式安装PHP到Apache2.x
wget http://源码包的位置
tar zxvf 源码包的位置
cd 源码包解压后的位置
./configure  --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs
make && make install

虽说make install会自动在Apache的httpd.conf文件中加入对php模版的调用,但还是建议检查一下httpd.conf是不是加了那些内容。


2.x的apache不支持php静态编译进apache了,只有1.3.x能静态编译
第一次编译Apache
./configure --prefix=/usr/local/apache2
安装PHP
./configure --prefix=/usr/local/php5.4 --with-mysql=/usr/local/mysql5.0.67 --with-apache=../apache_1.3.9 
make && make install
第二次编译Apache
./configure --prefix=/usr/local/php5.4 --active-module=src/modules/php5/libphp5.a
make && make install
0 0
原创粉丝点击