一般服务器系统已经自带了Apache的一些Apache的东西了,但是他们不完整,所以我们安装就报APR找不到。
下面有解决步骤,综合各个网站自己实践确认得出的哦:
命令:
yum remove apr-util-devel apr apr-util-mysql apr-docs apr-devel apr-util apr-util-docs
Apache官网下载地址:http://apr.apache.org/download.cgi
http://apr.apache.org/download.cgi
pcre官网下载地址:https://ftp.pcre.org/pub/pcre/
我就直接使用wget下载到了Linux服务器了,我选择的基本是最新的
wget http://mirror.bit.edu.cn/apache//apr/apr-1.6.5.tar.gz
wget http://mirror.bit.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
wget https://ftp.pcre.org/pub/pcre/pcre-8.42.zip
wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.38.tar.gz
(1)、首先安装apr-l.6.5
解压:tar -zxf apr-1.6.5.tar.gz
进入刚才解压的文件夹: cd apr-1.6.5
命令安装:
./configure --prefix=/usr/local/apr
make && make install
(2)、其次安装apr-util-1.6.1
解压:tar -zxf apr-util-1.6.1.tar.gz
进入刚才解压的文件夹: cd apr-util-1.6.1
命令安装:
./configure --prefix=/usr/local/apr-util -with-apr=/usr/local/apr/bin/apr-1-config
make && make install
但是我的执行make && make install就开始报错了
错误是:安装apr-util报错 xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
查了一波资料说是缺少expat插件使用下面命令安装
yum install -y expat-devel*
然后再执行make && make install 就没有问题了
(3)、最后安装pcre-8.42
解压:unzip -o pcre-8.42
进入刚才解压的文件夹: cd pcre-8.42
命令安装:
./configure --prefix=/usr/local/pcre
make && make install
(4)、安装httpd-2.4.38以及编译
解压:tar -zxf httpd-2.4.38.tar.gz
进入刚才解压的文件夹: cd httpd-2.4.38
执行安装命令:./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre --enable-mods-shared=most --enable-so
可能这是不会出现问题,但是make的时候就会出现错误;
错误:collect2: error: ld returned 1 exit status
make[2]: *** [htpasswd] Error 1
make[2]: Leaving directory `/home/httpd-2.4.38/support'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/httpd-2.4.38/support'
make: *** [all-recursive] Error 1
浏览了很多做法最后这个方法可行:
把apr,apr-util,pcre都复制到上面报错的路径下面的srclib文件下
由于我的文件都在home下面所以我进入home文件夹下面运行以下命令就可以了
命令:
cp -r apr-1.6.5 /home/httpd-2.4.38/srclib/apr
cp -r apr-util-1.6.1 /home/httpd-2.4.38/srclib/apr-util
cp -r pcre-8.42 /home/httpd-2.4.38/srclib/pcre
赋值完成以后执行安装命令,但是这个命令上要加上--with-include-apr,意思让它去刚才复制过去的文件夹里面找那些服务
命令:
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre --enable-mods-shared=most --enable-so --with-included-apr
最后make &&make install就可以了,进入/usr/local/apache2路径下面可以发现有这些文件,安装失败是会缺失文件的哦。
安装成功进入/usr/local/apache2/bin启动
《………………………………………………菜鸟起飞中,请各位走过路过的多多指教……………………………………》