编译安装Apache服务

文章目录

  • 一、Apache项目相关简介
  • 二、编译安装Apache
    • (一)编译安装Apache的大致步骤思路:
    • (二)具体编译过程:

一、Apache项目相关简介

  在早期 的Apache版本中,应用程序本身必须能够处理各种具体操作系统平台的细节,并针对不同的平台调用不同的处理函数。
  随着Apache的进一步开 发,Apache组织决定将这些通用的函数独立出来并发展成为一个新的项目。这样,APR的开发就从Apache中独立出来,Apache仅仅是使用 APR而已。目前APR主要还是由Apache使用,不过由于APR的较好的移植性,因此一些需要进行移植的C程序也开始使用APR。
  APR使得平台细节的处理进行下移。对于应用程序而言,它们根本就不需要考虑具体的平台,不管是Unix、Linux还是Window,应用程序执行的接口基本都是统一一致的。因此对于APR而言,可移植性和统一的上层接口是其考虑的一个重点。

二、编译安装Apache

  由于Apache新架构,同apr搭建应用及不同系统底层库调用之间的桥梁,在编译安装Apache同时,需要编译安装对应的apr。

apache 的apr项目目前有三部分组成,分别是apr、apr-util、apr-iconv

  • apr中包含了一些通用的开发组件,包括mmap,DSO等等
  • apr-util该目录中也是包含了一些常用的开发组件。这些组件与apr目录下的相比,它们与apache的关系更加密切一些。比如存储段和存储段组,加密等等。
  • apr-iconv包中的文件主要用于实现iconv编码。目前的大部分编码转换过程都是与本地编码相关的。在进行转换之前必须能够正确地设置本地编码。因此假如两个非本地编码A和B需要转换,则转换过程大致为A->Local以及Local->B或者B->Local以及Local->A。

(一)编译安装Apache的大致步骤思路:

1.首先安装编译环境所需的包
2.从Apache官网下载apr和http的源码包
3.将apr的源码包解压到http的解压包,并更改对应的目录名称
4.配置安装路径及需要的模块
5.编译安装

(二)具体编译过程:

基础环境
Linux版本:CentOS Linux release 7.6.1810 (Core)
APR版本
APR 1.7.0, released April 5, 2019
APR-util 1.6.1, released October 22, 2017
Apache版本:Apache httpd 2.4.39 Released

1.首先安装编译环境所需的包

[root@CentOS7 ~]#yum install gcc pcre-devel openssl-devel expat-devel -y

2.从Apache官网下载apr和http的源码包
下载地址
http://apr.apache.org/download.cgi
http://httpd.apache.org/download.cgi#apache24

APR下载:
编译安装Apache服务_第1张图片
编译安装Apache服务_第2张图片
Apache下载:
在这里插入图片描述
编译安装Apache服务_第3张图片
3.将apr的源码包解压到http的解压包,并更改对应的目录名称

[root@CentOS7 data]#tar xvf apr-1.7.0.tar.gz
[root@CentOS7 data]#tar xvf apr-util-1.6.1.tar.gz
[root@CentOS7 data]#tar xvf httpd-2.4.39.tar.bz2 
[root@CentOS7 data]#mv apr-1.7.0 httpd-2.4.39/srclib/apr
[root@CentOS7 data]#mv apr-util-1.6.1 httpd-2.4.39/srclib/apr-util

编译安装Apache服务_第4张图片
4.配置安装路径及需要的模块

[root@CentOS7 data]#cd httpd-2.4.39/
#生成Makefile文件
[root@CentOS7 httpd-2.4.39]#./configure \
--prefix=/app/httpd24 \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--with-included-apr \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork

5.编译安装

[root@CentOS7 httpd-2.4.39]#make && make install -j 8

6.配置环境变量

[root@CentOS7 httpd-2.4.39]#echo 'PATH=/app/httpd24/bin:$PATH' > /etc/profile.d/httpd24.sh
[root@CentOS7 httpd-2.4.39]#source /etc/profile.d/httpd24.sh

7.启动服务并设置开机启动

[root@CentOS7 httpd-2.4.39]#apachectl start
[root@CentOS7 ~]#vim /etc/rc.d/rc.local
/app/httpd24/bin/apachectl start

[root@CentOS7 ~]#chmod +x /etc/rc.d/rc.local 
[root@CentOS7 ~]#ll /etc/rc.d/rc.local
-rwxr-xr-x. 1 root root 507 Jul 23 20:51 /etc/rc.d/rc.local

编译安装Apache服务_第5张图片

你可能感兴趣的:(linux)