【阿里云镜像】装置编译Apache环境

一、参考链接

阿里巴巴开源镜像站-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/ap...

# 测试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/ap...

[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/proje...

[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