一,下载apache的源码包:httpd-2.2.4.tar.gz
二, 解压包到当前目录:
tar zxvf httpd-2.2.4.tar.gz
三, 解压完毕,进入解压目录:
cd httpd-2.2.4
四, 执行configure
./configure \
--enable-http \
--enable-so \
--enable-access \
--enable-auth \
--enable-cgi \
--enable-mime \
--enable-dir \
--enable-log-config \
--with-mpm=prefork \
--enable-module=so \
--prefix=/data/home/tenfyguo/env/httpd-2.2.4
五,执行make;make install;
此时会发现如下错误:
/usr/lib/libexpat.so: could not read symbols: File in wrong format
解决方案:
1, 删除httpd-2.2.4目录下的如下文件:srclib/apr-util/configure
2, 删除httpd-2.24目录下的如下文件:configure
3, 重新执行如下命令,重建配置文件:
httpd-2.2.4/buildconf
4, 执行新的configure,增加如下参数(红色部分):
./configure \
--enable-lib64 \
-libdir=/usr/lib64 \
--enable-http \
--enable-so \
--enable-access \
--enable-auth \
--enable-cgi \
--enable-mime \
--enable-dir \
--enable-log-config \
--with-mpm=prefork \
--enable-module=so \
--prefix=/data/home/tenfyguo/env/httpd-2.2.4
5,生成对应的makefile,进行如下修改:
apache在执行./configure后,相关的配置参数保存在MakeFile文件,该文件存放在/httpd-2.2.4/srclib/apr-util下面,用vim打开找到下面的内容:
APRUTIL_LIBS = /usr/lib/libexpat.la ...
把/usr/lib/libexpat.la改成:/usr/lib64/libexpat.la
保存退出vim.
6, make;make install。一切搞定。