CentOs7安装apache以及遇到的问题
新手在CentOs7装一个Apache时,可以参考本文,我自己鼓捣这个搞了两个晚上,太不给力了!1.下载httpd源码包
# mkdir /usr/local/utils
# cd /usr/local/utils
# wget http://mirrors.hust.edu.cn/apache/httpd/httpd-2.4.34.tar.gz
# tar -zxvf httpd-2.4.34.tar.gz
2.下载依赖包(apr/apr-util/pcre)
# wget http://archive.apache.org/dist/apr/apr-1.5.1.tar.gz
# wget http://archive.apache.org/dist/apr/apr-util-1.6.0.tar.gz
# wget https://nchc.dl.sourceforge.net/project/pcre/pcre/8.42/pcre-8.42.zip
# tar -zxvf apr-1.6.3.tar.gz
# tar -zxvf apr-util-1.5.1.tar.gz
# unzip pcre-8.42.zip
3.分别进行安装
apr安装
# mkdir /usr/local/apr
# ./configure --prefix=/usr/local/apr
# make
# make install
apr-util安装
# mkdir /usr/local/apr-util
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config --enable-utf8
# make && make install
pcre安装
# mkdir /usr/local/pcre
# ./configure --prefix=/usr/local/pcre
# make && make install
4.安装httpd源码包
#
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
# make && make install
5.启动Apache
开启80端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙: firewall-cmd --reload
修改httpd.conf配置文件:打开/usr/local/apache/conf/httpd.conf,找到# ServerName www.example.com:80这一行,把#号删掉
启动Apache:# /usr/local/apache/bin/apachectl start 或者# ./apachectl start
在浏览器地址栏输入:http://192.168.1.109/,会显示:It works!
大功告成!!!
关闭Apache :# /usr/local/apache/bin/apachectl stop
重启Apache :# /usr/local/apache2/bin/apachectl restart
6.遇到的问题及解决办法(少踩坑,少走弯路)
********************************************************************************************
如果遇到以下错误,则表示需要安装expat-devel。
xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录#include
原因:缺少expat-devel包,安装该包即可:yum install expat-devel
********************************************************************************************
如果遇到下面的问题,是因为是安装了最新的1.6版本的apr-util导致的,调整为1.5版本的就可以了 !
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_GetErrorCode'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_SetEntityDeclHandler'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_ParserCreate'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_SetCharacterDataHandler'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_ParserFree'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_SetUserData'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_StopParser'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_Parse'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_ErrorString'
/usr/local/apr-util/lib/libaprutil-1.so: undefined reference to `XML_SetElementHandler'
collect2: error: ld returned 1 exit status
make: *** Error 1
make: Leaving directory `/usr/local/httpd-2.4.26/support'
make: *** Error 1
make: Leaving directory `/usr/local/httpd-2.4.26/support'
make: *** Error 1
******************************************************************************
页:
[1]