1.先进入/usr/local/中创建三个文件夹 apr apr-util apache

cd /usr/local目录

mkdir apr

mkdir apr-util

mkdir apache

2.再进入 src中  cd src

3.在 src中 下载apr-1.6.5   apr-util-1.6.1  httpd-2.4.37源码包

wget http://archive.apache.org/dist/apr/apr-1.6.5.tar.gz

wget http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.gz

wget  http://archive.apache.org/dist/httpd/httpd-2.4.37.tar.gz

4.分别解压它们

tar -zxvf apr-1.6.5.tar.gz

tar -zxvf apr-util-1.6.1.tar.gz

tar -zxvf httpd-2.4.37.tar.gz

5. 先不要急着安装,先确保它所依赖的库是否有,怎样查看软件是否安装(rpm -q xxx),如果没有安装依赖则进行安装(笔者一般安装依赖库直接使用yum 默认安装,这样在软件安装的时候就不需要知道依赖库的安装路径,省去不少麻烦)

需要安装的依赖包有 gcc  expat-devel  openssl-devel pcre pcre-devel

在src目录下 yum install gcc

yum install -y expat-devel

yum install openssl-devel

yum install -y pcre pcre-devel

yum install pcre-devel

6.接下来就是编译安装了,步骤四步: 下载wget  --- 加压tar ------ 编译 make ----安装 make install

进入 apr-1.6.5目录中

cd apr-1.6.5

./configure --prefix=/usr/local/apr/

make && make install

(此时没有报任何error错误)

7. 退出apr-1.6.5目录,进入 apr-util-1.6.1目录中

cd apr-util-1.6.1

./configure --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr/

make && make install

(此时也没有任何error错误)

8.下面开始对Apache进行安装配置,可以使用

cd httpd-2.4.37

./configure \
--prefix=/usr/local/apache/ \
--with-apr=/usr/local/apr/ \
--with-apr-util=/usr/local/apr-util/ \
--enable-so \
--enable-ssl\
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--enable-static-support

检查无误,然后开始编译安装

make && make install

9.等安装完以后进入到安装目录,开启apache服务

cd /usr/local/apache/bin/

./apachectl start

10. 哎,发现报错

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message

额,原来就是配置文件中没有serverName,那就在httpd.conf 中增加 ServerName

11.  vim /usr/local/apache/conf/httpd.conf

#增加

ServerName wx.xxxx.club (就是增加域名)

12. 完了之后再重新启动apache,发现一切正常,然后我们访问下看看是否OK

当输入域名时显示it works! ,就表示apache源码安装就此完成,

记住 想要重启apache 必须切换到

cd /usr/local/apache/bin/ 目录

使用

./apachectl start 开启apache

./apachectl restart 重启apache

./apachectl configtest  检测apache配置文件语法是否正确

 

源码编译安装Apache/2.4.37-------踩了无数坑,重装了十几次服务器才会的,不容易啊!的更多相关文章

  1. 源码编译安装MySQL-5.6/mysql-5.6.39------踩了无数坑,重装了十几次服务器才会的,不容易啊!

    1.切换到src目录 cd /usr/local/src/ 2. 下载mysql免编译二进制包 免编译的mysql二进制包5.6源码包: wget http://mirrors.163.com/mys ...

  2. 源码编译安装PHP Version 5.6.30------踩了无数坑,重装了十几次服务器才会的,不容易啊!

    1 环境准备 yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel ...

  3. linux 源码编译安装apache

    cc1 是c语言的编译器.

  4. Linux系统 - 源码编译安装Nginx

    什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...

  5. Linux 从源码编译安装 OpenSSH

    https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...

  6. Httpd服务进阶知识-LAMP源码编译安装

    Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理  ...

  7. zabbix源码编译安装以及添加第一台host监控

    基础准备 硬件需求 数据库需求   软件需求 其他软件需求 安装 安装方式 source code 编译好的二进制包 rpm或者deb 源码编译安装部署zabbix以及附件 前提准备 最小化安装操作系 ...

  8. SSH/SSL 源码编译安装简易操作说明

    环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...

  9. Centos7.X 源码编译安装subversion svn1.8.x

    说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...

随机推荐

  1. P1969积木大赛

    这是2018与2013提高组的真题,可怕,,原题出了两年,是个纯模拟. 读完题后就想写一个朴素的模拟,先遍历层数,再把达到层数的宽度#存起来,再判断是否连续,如果不连续ans++,然后每一次循环都要初 ...

  2. [多校联考2019(Round 4 T1)][51nod 1295]Xor key(可持久化trie)

    [51nod 1295]Xor key(可持久化trie) 题面 给出一个长度为n的正整数数组A,再给出Q个查询,每个查询包括3个数,L, R, X (L <= R).求A[L] 至 A[R] ...

  3. 增强 Jupyter Notebook的功能

    增强 Jupyter Notebook的功能 Jupyter Notebook 是所有开发者共享工作的神器,它为共享 Notebooks 提供了一种便捷方式:结合文本.代码和图更快捷地将信息传达给受众 ...

  4. 探索ASP.Net Core 3.0系列二:聊聊ASP.Net Core 3.0 中的Startup.cs

    原文:探索ASP.Net Core 3.0系列二:聊聊ASP.Net Core 3.0 中的Startup.cs 前言:.NET Core 3.0 SDK包含比以前版本更多的现成模板. 在本文中,我将 ...

  5. 剑指offer-二叉搜索树的后序遍历序列-python

    题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 递归法: 先判断左子树是否存在 再判断右子树是否存 ...

  6. WindowsForms使用Telerik Reporting

    新建一个WindowsForms窗体项目 然后拖动ReportViewer这个控件到WindowsForms的窗体中 如上图所示,用来呈现报表的控件,这个控件可以打印报表,转换报表这类的功能 接下来我 ...

  7. mysql随机取一条记录

    function getTodayLook($limit) { $sql = "select * from `tvhome_movie_today` order by rand() limi ...

  8. python中的面向对象和面向过程

    一.面向对象和面向过程 一.什么是面向过程 核心是过程二字:面向过程是一种流水线的工作流程,是先做什么在做什么 二.什么是面向对象 核心 是对象二字:是一种编程思想,上帝思维,一切皆对象,编程中负责调 ...

  9. Consider defining a bean of type 'org.springframework.web.client.RestTemplate' in your configuration

    https://www.cnblogs.com/EasonJim/p/7546136.html 错误如下: ERROR 31473 --- [ main] o.s.b.d.LoggingFailure ...

  10. MapReduce单机提交(待稿)

    MR 提交方式源码 提交方式: 1,开发-> jar -> 上传到集群中的某一个节点 -> hadoop jar ooxx.jar ooxx in out 2,嵌入[linux,wi ...