CentOS7源码安装apache2.4

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

简介

  Apache 的安装无外乎两种方式:源代码安装和二进制包安装。这两种安装类型各有特色,二进制包安装不需要编译,而源代码安装则需要先配置编译再安装,二进制包安装在一个固定的位置下,选择固定的模块,而源代码安装则可以让你选择安装路径,选择你想要的模块。本次介绍源代码安装。

准备工作

安装apache前需要准备安装源码以及相关依赖包(以下大多为当前最新版本)

1
2
3
4
5
6
7
gcc
gcc-c++
httpd-2.4.41.tar.gz (apache程序)
apr-1.7.0.tar.gz
apr-util-1.6.1.tar.gz
expat_2.0.1.orig.tar.gz
pcre-8.44.tar.gz

下载文件

链接:

1
2
3
4
5
[root@CentOS upload]# wget https://mirror.bit.edu.cn/apache//httpd/httpd-2.4.41.tar.gz
[root@CentOS upload]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.gz
[root@CentOS upload]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
[root@CentOS upload]# wget http://ftp.sjtu.edu.cn/ubuntu/pool/main/e/expat/expat_2.0.1.orig.tar.gz
[root@CentOS upload]# wget http://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz

image

安装编译器

1
2
yum -y install gcc
yum -y install gcc-c++

gcc-c++是为了编译pcre

安装依赖包

[root@CentOS upload]# for tar in *.tar.gz; do tar -xvf $tar; done # 一次性解压
image

安装apr

1
2
3
[root@CentOS upload]# cd apr-1.7.0/
[root@CentOS apr-1.7.0]# ./configure --prefix=/usr/local/apr
[root@CentOS apr-1.7.0]# make && make install #编译,安装

–prefix= 安装路径

安装expat

1
2
3
[root@CentOS upload]# cd expat-2.0.1/
[root@CentOS expat-2.0.1]# ./configure --prefix=/usr/local/expat
[root@CentOS expat-2.0.1]# make && make install

安装 apr-util

Apr-util 依赖于两个模块apr和expat

1
2
3
[root@CentOS upload]# cd apr-util-1.6.1/
[root@CentOS apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-expat=/usr/local/expat
[root@CentOS apr-util-1.6.1]# make && make install

–with-xx = /usr/local/xx 指定依赖模块

安装 pcre

1
2
3
[root@CentOS upload]# cd pcre-8.44/
[root@CentOS pcre-8.44]# ./configure --prefix=/usr/local/pcre
[root@CentOS pcre-8.44]# make && make install

安装apache

apache 依赖3个模块apr, apr-util, pcre;

1
2
3
[root@CentOS upload]# cd httpd-2.4.41/
[root@CentOS httpd-2.4.41]# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
[root@CentOS httpd-2.4.41]# make && make install

安装完后
注意:要修改配置文件http.conf
文件位置/usr/local/apache/conf/http.conf
删掉ServerName www.example.com:80一行的注释符#
image

启动运行apache
启动程序在安装目录的bin文件中

1
[root@CentOS bin]# ./apachectl start

本地测试

1
2
[root@CentOS bin]# curl localhost
<html><body><h1>It works!</h1></body></html>

看到It works!说明apache成功运行

访问测试

要让其他人访问站点,可以关掉防火墙
关闭防火墙:
[root@CentOS bin]# systemctl stop firewalld.service

本机ip:192.168.0.107
image
访问测试成功