1,下载相关安装源码
依赖文件下载:
apr下载
wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.gz
apr-util下载
wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
Httpd Server下载:
wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.43.tar.gz
2,编译安装
在编译安装之前确认已安装Gcc编译器,如果未安装在编译过程中会报如下错误:
configure: error: no acceptable C compiler found in $PATH
安装命令
yum -y install gcc
安装apr
解压apr
tar -xf apr-1.7.0.tar.gz
进入apr解压目录
cd apr-1.7.0
编译并安装
./configure
编译的过程中如果出现如下错误:
rm: cannot remove 'libtoolT': No such file or directory
编辑文件configure(示例修改的为31880行)
把文件中的$RM "$cfgfile" 改为 $RM -f "$cfgfile"
重新编译安装
./configure
make && make install
安装apr-util
解压apr-util
tar -xf apr-util-1.6.1.tar.gz
进入apr-util解压目录
cd apr-util-1.6.1
编译并安装
./configure --with-apr=/usr/local/apr/
make && make install
如果编译过程中出现如下错误:
xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录
#include
编译中断。
请先安装依赖: expat库
yum install -y expat-devel
重新编译安装
make && make install
安装 Apache Httpd
解压Apache Httpd
tar -xf httpd-2.4.43.tar.gz
进入解压目录
cd httpd-2.4.43
编译过程中遇到的问题及解决办法
PCRE 问题
checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/
PCRE 解决办法,安装对应的依赖
yum -y install pcre-devel
编译并安装
./configure --prefix=/usr/local/apache --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --enable-modules=most --enable-mpms-shared=all
make
make test
make install
主要如果启用SSL,需要安装对应的依赖
yum install -y openssl-devel
注册Apache服务
拷贝apachectl 至 /etc/rc.d/init.d/
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd
然后编辑文件加入对应的内容
vi /etc/rc.d/init.d/httpd
在#!/bin/sh下面加入如下内容
# chkconfig: - 85 15
# description: The Apache HTTP Server is an efficient and extensible \
# server implementing the current HTTP standards.
注册为系统服务
systemctl enable httpd
启动服务
systemctl start httpd
查看服务状态
systemctl status httpd
开放端口访问测试
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
访问http://ip,会出现如下页面,这代表服务已正常。
至此Apache 已成功完成安装。