一、参考链接
阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com)
apache镜像-apache下载地址-apache安装教程-阿里巴巴开源镜像站 (aliyun.com)
Apache(Web服务器软件)_百度百科 (baidu.com)
编译安装_Apache中文文档 (apachehttpd.com)
二、Apache 简介
Apache(音译为阿帕奇)是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。
下载地址:https://mirrors.aliyun.com/apache/
三、Apache编译安装(基于CentOS系统)
1、登录CentOS系统
2、安装依赖包
编译安装Apache HTTP Server,目前最新的版本为2.4.52,将apr,apr-util,pcre等相关依赖包编译安装好即可。
若上述安装包已全部安装完成,可以直接进行Apache安装。
? apr安装
下载链接:https://mirrors.aliyun.com/apache/apr/apr-1.7.0.tar.gz
# 测试YUM源是否能够正常[root@centos apache]# yum clean all[root@centos apache]# yum repolist# 下载压缩包[root@centos apache]# wget https://mirrors.aliyun.com/apache/apr/apr-1.7.0.tar.gz# 查看apr-1.7.0.tar.gz[root@centos apache]# lltotal 1072-rw-r--r-- 1 root root 1093896 Jul 6 2020 apr-1.7.0.tar.gz#解压压缩包[root@centos apache]# tar -zxvf apr-1.7.0.tar.gz[root@centos apache]# lltotal 1076drwxr-xr-x 27 1001 1001 4096 Apr 2 2019 apr-1.7.0-rw-r--r-- 1 root root 1093896 Jul 6 2020 apr-1.7.0.tar.gz# 进入解压后的文件夹[root@centos apache]# cd apr-1.7.0# 创建apr安装目录文件夹[root@centos apr-1.7.0]# mkdir -p /usr/local/apr/apr# 安装配置[root@centos apr-1.7.0]# ./configure --prefix=/usr/local/apr/apr/# 编译[root@centos apr-1.7.0]# make#安装[root@centos apr-1.7.0]# make install
部分安装过程截图如下:
?apr-util安装
下载链接:https://mirrors.aliyun.com/apache/apr/apr-util-1.6.1.tar.gz
[root@centos apache]# wget https://mirrors.aliyun.com/apache/apr/apr-util-1.6.1.tar.gz[root@centos apache]# lltotal 1624drwxr-xr-x 28 1001 1001 4096 Dec 22 18:19 apr-1.7.0-rw-r--r-- 1 root root 1093896 Jul 6 2020 apr-1.7.0.tar.gzdrwxr-xr-x 20 1001 1001 4096 Oct 18 2017 apr-util-1.6.1-rw-r--r-- 1 root root 554301 Jul 6 2020 apr-util-1.6.1.tar.gz[root@centos apache]#[root@centos apache]# cd apr-util-1.6.1[root@centos apr-util-1.6.1]#[root@centos apr-util-1.6.1]# mkdir /usr/local/apr/util# --with-apru命令的意思是指定自定义的apr的安装位置[root@centos apr-util-1.6.1]# ./configure --prefix=/usr/local/apr/util --with-apr=/usr/local/apr/apr# 编译[root@centos apr-util-1.6.1]# make#安装[root@centos apr-util-1.6.1]# make install
部分安装过程截图如下:
?pcre安装
下载链接:https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz/download
[root@centos apache]# lltotal 3672drwxr-xr-x 28 1001 1001 4096 Dec 22 18:19 apr-1.7.0-rw-r--r-- 1 root root 1093896 Jul 6 2020 apr-1.7.0.tar.gzdrwxr-xr-x 21 1001 1001 4096 Dec 22 18:32 apr-util-1.6.1-rw-r--r-- 1 root root 554301 Jul 6 2020 apr-util-1.6.1.tar.gz-rw-r--r-- 1 root root 2096552 Dec 22 18:39 pcre-8.45.tar.gz[root@centos apache]#[root@centos apache]# tar -zxvf pcre-8.45.tar.gz[root@centos apache]# cd pcre-8.45/[root@centos pcre-8.45]#mkdir /usr/local/pcre[root@centos pcre-8.45]# ./configure --prefix=/usr/local/pcre/[root@centos pcre-8.45]# make[root@centos pcre-8.45]# make install
部分安装过程截图如下:
3、Apache安装
下载链接:阿里云开源镜像站资源目录 (aliyun.com)
[root@centos ~]# wget https://mirrors.aliyun.com/apache/httpd/httpd-2.4.52.tar.gz[root@centos apache]# lltotal 13188drwxr-xr-x 28 1001 1001 4096 Dec 22 18:19 apr-1.7.0-rw-r--r-- 1 root root 1093896 Jul 6 2020 apr-1.7.0.tar.gzdrwxr-xr-x 21 1001 1001 4096 Dec 22 18:32 apr-util-1.6.1-rw-r--r-- 1 root root 554301 Jul 6 2020 apr-util-1.6.1.tar.gzdrwxr-xr-x 12 504 games 4096 Dec 16 21:49 httpd-2.4.52-rw-r--r-- 1 root root 9719976 Dec 20 17:36 httpd-2.4.52.tar.gzdrwxr-xr-x 9 1169 1169 12288 Dec 22 18:45 pcre-8.45-rw-r--r-- 1 root root 2096552 Dec 22 18:39 pcre-8.45.tar.gz[root@centos apache]# cd httpd-2.4.52[root@centos httpd-2.4.52]#[root@centos httpd-2.4.52]# mkdir /usr/local/httpd[root@centos httpd-2.4.52]# ./configure --prefix=/usr/local/httpd/checking for chosen layout... Apachechecking for working mkdir -p... yeschecking for grep that handles long lines and -e... /bin/grepchecking for egrep... /bin/grep -Echecking build system type... x86_64-pc-linux-gnuchecking host system type... x86_64-pc-linux-gnuchecking target system type... x86_64-pc-linux-gnuconfigure:configure: Configuring Apache Portable Runtime library...configure:checking for APR... noconfigure: error: APR not found. Please read the documentation.# 因修改了apr的默认安装位置,提示找不到apr,使用帮助命令查看。[root@centos httpd-2.4.52]# ./configure --help[root@centos httpd-2.4.52]# ./configure --help | grep -i apr --enable-hook-probes Enable APR hook probes --with-included-apr Use bundled copies of APR/APR-Util --with-apr=PATH prefix for installed APR or the full path to apr-config --with-apr-util=PATH prefix for installed APU or the full path to# 指定自定义的目录[root@centos httpd-2.4.52]# ./configure --prefix=/usr/local/httpd/ --with-apr=/usr/local/apr/apr/ --with-apr-util=/usr/local/apr/util/ --with-pcre=/usr/local/pcre/ --with-included-aprlocal/apr/util/ --with-pcre=/usr/local/pcre/# 编译[root@centos httpd-2.4.52]# make# 安装[root@centos httpd-2.4.52]# make install# 修改配置信息[root@centos httpd-2.4.52]# vim /usr/local/httpd/conf/httpd.conf ServerName localhost:80 保存退出# 启动Apache服务[root@centos ~]# /usr/local/httpd/bin/apachectl -k start[root@localhost ~]# /usr/local/httpd/bin/apachectl -Thttpd (pid 66510) already running[root@localhost ~]#[root@localhost ~]# cd /usr/local/httpd/[root@localhost httpd]# lltotal 44drwxr-xr-x 2 root root 302 Dec 22 19:35 bindrwxr-xr-x 2 root root 253 Dec 22 19:35 builddrwxr-xr-x 2 root root 78 Dec 22 19:10 cgi-bindrwxr-xr-x 4 root root 84 Dec 22 19:47 confdrwxr-xr-x 3 root root 4096 Dec 22 19:10 errordrwxr-xr-x 2 root root 24 Dec 22 19:10 htdocsdrwxr-xr-x 3 root root 8192 Dec 22 19:10 iconsdrwxr-xr-x 2 root root 8192 Dec 22 19:35 includedrwxr-xr-x 3 root root 281 Dec 22 19:35 libdrwxr-xr-x 2 root root 58 Dec 22 19:55 logsdrwxr-xr-x 4 root root 30 Dec 22 19:10 mandrwxr-xr-x 14 root root 8192 Dec 22 19:10 manualdrwxr-xr-x 2 root root 4096 Dec 22 19:35 modules[root@localhost httpd]# cd htdocs/[root@localhost htdocs]# lltotal 4-rw-r--r-- 1 504 games 45 Jun 12 2007 index.html[root@localhost htdocs]# cat index.html<html><body><h1>It works!</h1></body></html>[root@localhost htdocs]#
部分安装过程截图如下:
四、总结与反馈
以上就是编译安装Apache的主要操作步骤,需要注意的是在安装Apache之前,需要安装好相应的依赖包,否则会在安装过程中报错,需要进一步排查。
在安装相应的依赖包的过程中,也会发生一些报错,也需要安装相应的组件,可以将报错信息复制粘贴至网上,搜索查看对应的解决办法。
这里也罗列了几个在安装过程中报错的信息,供大家参考。
报错信息1
# 报错信息[root@centos apr-1.7.0]# ./configure --prefix=/usr/local/apr/apr/checking build system type... x86_64-pc-linux-gnuchecking host system type... x86_64-pc-linux-gnuchecking target system type... x86_64-pc-linux-gnuConfiguring APR libraryPlatform: x86_64-pc-linux-gnuchecking for working mkdir -p... yesAPR Version: 1.7.0checking for chosen layout... aprchecking for gcc... nochecking for cc... nochecking for cl.exe... noconfigure: error: in `/root/apache/apr-1.7.0':configure: error: no acceptable C compiler found in $PATHSee `config.log' for more details[root@centos apr-1.7.0]#[root@centos apr-1.7.0]# yum -y install gcc参考链接:https://blog.csdn.net/weixin_33858249/article/details/91574176
报错信息2
# 报错信息2[root@centos apr-util-1.6.1]# makemake[1]: Entering directory `/root/apache/apr-util-1.6.1'/bin/sh /usr/local/apr/apr//build-1/libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -DLINUX -D_REENTRANT -D_GNU_SOURCE -I/root/apache/apr-util-1.6.1/include -I/root/apache/apr-util-1.6.1/include/private -I/usr/local/apr/apr//include/apr-1 -o xml/apr_xml.lo -c xml/apr_xml.c && touch xml/apr_xml.loxml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory #include <expat.h> ^compilation terminated.make[1]: *** [xml/apr_xml.lo] Error 1make[1]: Leaving directory `/root/apache/apr-util-1.6.1'make: *** [all-recursive] Error 1# 解决办法[root@centos apr-util-1.6.1]# yum install -y expat-devel参考链接:https://blog.csdn.net/weixin_43930641/article/details/105269092
报错信息3
checking for windows.h... noconfigure: error: Invalid C++ compiler or C++ compiler flags# yum install -y gcc-c++参考链接:https://blog.csdn.net/weixin_43930641/article/details/105313937