apache安装完成后,如何添加模块
apache安装后,如果想再添加模块,往往不想重新安装一次,再者,我在安装中发现,并不是安装文件中所有的modules都会被默认安装,即使在安装中使用了 ./configure --prefix=/usr/local/apache --enable-so --enable-modules=all --enable-mods-shared=all也是如此。我使用上述方法安装的apache2.2.6就没有安装proxy相关模块。这时,需要手工生成so文件,但会自动的被复制到你的apache安装目录的modules中,然后修改apache的配置文件,加载相关模块,验证apache配置并重启服务即可。以上描述的具体操作步骤如下:1. 拷贝安装包到/usr/local,并在目标目录下进行解压。
# cd /usr/local
# tar -zxvf httpd-2.2.4.tar.gz
2. 配置安装参数,安装的目标目录为/usr/local/apache,建议设置enable-mods-shared=all,不用的module注释掉就行了!
# cd httpd-2.2.4
# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all
3. 编译并安装。
# make
# make install
4. 启动Apache,并测试。
# cd /usr/local/apache/bin
# ./apachectl start
打开浏览器,并在地址栏中输入主机的IP地址
如http://Localhost/
如果出现以下画面则说明安装成功。
It works!
注意:安装完成后检查系统服务中的HTTPD服务是否已经启动,如果启动需要先停止。
5. 编译mod_proxy.so.
进入apache源代码的modules目录
# cd modules
# /usr/local/apache/bin/apxs -c -i mod_proxy.c proxy_util.c
这时生成的mod_proxy.so会被自动复制到/usr/local/apache/modules
选项说明:
-c 执行编译操作
-i 安装操作,安装一个或多个动态共享对象到服务器的modules目录
-a 自动增加一个LoadModule行到httpd.conf文件,以激活此模块,若此行存在则启用之
-A 与-a类似,但是它增加的LoadModule行前有井号前缀(#)
-e 需要执行编辑操作,可与-a和-A选项配合使用,与-i操作类似,修改httpd.conf文件,但并不安装此模块
6. 修改配置文件
# cd /usr/local/apache/conf
# vi httpd.conf
添加一行 LoadModule proxy_module modules/mod_proxy.so
7. 测试配置是否正确
# cd ..
# cd bin
# ./apachectl configtest
出现如下信息证明配置正确
module rewrite_module is already loaded, skipping
Syntax OK
8. 重新启动apache
# ./apachectl stop
# ./apachectl start
完成!!
页:
[1]