1. 第一部分:前期准备 需要下载的东西
  2. 下载 Apache 源码包  下载地址: http://httpd.apache.org/download.cgi                             我下载的  httpd-2.4.20.tar.gz
  3. 下载 Apr                       下载地址 :http://archive.apache.org/dist/apr/apr-1.5.0.tar.gz        我下载的是 apr-1.5.0.tar.gz
  4. 下载 Apr-Util               下载地址:http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz   我下载的是 apr-util-1.5.4.tar.gz
  5. 注意事项:wget  vim   gcc gcc-c++   cmake  这几个也是安装 Apache 所需要的小环境 。有的小环境,一般 Cnetos自带,我个人建议还是手动的再用 yum install  安装 或者 更新一下。
  6. 那么好了,接下来开始安装吧!
  7. 第一步:解压下载好的 Apache 包
  8. [root@localhost ~]#   tar -zxvf httpd-2.4.20.tar.gz
  9. //进入目录  编译解压的原文件
  10. [root@localhost httpd-2.4.20]# ./configure --prefix=/usr/local/apache2/          #配置安装目录
  11. 1.正常执行 (说明你的Linux安装过Apache,或者已经安装过所需的依赖包)
  12. 2.不正常执行、会出现以下错误信息
  13. configure:
  14. checking for APR... no
  15. configure: error: APR not found.  Please read the documentation.
  16. 解决方案:就是安装 刚刚下载好的 Apr。  Apache在安装时需要一些准备环境、这里需要安装另外一个 Apr(Apache portable runtime)
  17. 第二步:解压下载好的 Apr 包
  18. [root@localhost ~]#   tar -zxvf apr-1.5.1.tar.gz
  19. //进入目录  编译解压的原文件
  20. [root@localhost apr-1.5.1]# ./configure --prefix=/usr/local/apr/               #配置安装目录
  21. //安装目录配置完成  就 make && make install  在指定地址生成目录和文件
  22. [root@localhost apr-1.5.1]# make && make install
  23. 第三步:解压下载好的 Apr-util 包
  24. [root@localhost ~]# tar -zxvf  apr-util-1.5.4.tar.gz
  25. //进入目录  编译解压的原文件
  26. [root@localhost apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util/               #配置安装目录
  27. //报错   看到错误信息   现在自己就知道了吧   --with-apr
  28. [root@localhost apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/
  29. //安装目录配置完成  就 make && make install  在指定地址生成目录和文件
  30. [root@localhost apr-util-1.5.4]# make && make install
  31. 第四步:继续安装 Apache
  32. //切换到 Apache  源文件
  33. [root@localhost httpd-2.4.20]# ./configure --prefix=/usr/local/apache24/ --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/
  34. //还会出现下面的错误    原因是:还是缺少环境 PCRE
  35. checking for pcre-config... false
  36. configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/
  37. 解决方案:  下载地址  http://jaist.dl.sourceforge.net/project/pcre/pcre/8.39/pcre-8.39.tar.gz       下载最新版本  我下载的是 pcre-8.39.tar.gz
  38. [root@localhost ~]# wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.39/pcre-8.39.tar.gz
  39. [root@localhost ~]# tar -zxvf pcre-8.39.tar.gz
  40. [root@localhost pcre-8.39]# ./configure --prefix=/usr/local/pcre/
  41. [root@localhost pcre-8.39]# make && make install
  42. 第五步:继续安装 Apache
  43. [root@localhost httpd-2.4.20]# ./configure --prefix=/usr/local/apache24/ --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/
  44. [root@localhost httpd-2.4.20]# make && make install
  45. 第六步:测试 Apache
  46. centos7使用systemctl代替chkconfig管理服务,防火墙也由iptables更换成了firewalld
  47. 首先用systemctl关闭防火墙:
  48. systemctl stop firewalld.service
  49. systemctl disable firewalld.service
  50. 开启 Apache 服务             停止 stop
  51. [root@localhost~]# cd /usr/local/apache24/bin/
  52. [root@localhost bin]# ./apachectl start
  53. 第七步:在客户端浏览器输入自己的 IP 地址,看看能够成功访问 Apache。
  54. 成功显示 It Works!就代表 服务器已成功启动~\(≧▽≦)/~啦啦啦。
  55. 在自己一步步的操作下,很高心成功啦。也不枉费读者们耐心的看完! 谢 谢 点 赞!
  56. 附加: 如果在 安装 Apache 的时候,使用的是这个命令,则你就可以 进行一下操作了。
  57. ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-cgi --enable-ssl --enable-rewrite --with-ssl=/usr/local/openssl --with-pcre=/usr/local/pcre --with-z=/usr/local/zlib --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl=/usr/local/openssl --enable-modules=most --enable-mpms-shared=all --with-mpm=event
  58. 因为安装Apache服务器是选择安装了支持openssl,顺便研究了一下如何在apache中配置openss
  59. 首先在/etc/httpd/http.conf文件中修改:
  60. ServerName为www.example.com:80
  61. 去掉LoadModule ssl_module modules/mod_ssl.so前的#号
  62. 去掉LoadModule socache_shmcb_module modules/mod_socache_shmcb.so前的#号
  63. 去掉Include /etc/httpd/extra/httpd-ssl.conf前的#号
  64. 生成服务器证书:
  65. 1.生成服务器用的私钥文件server.key
  66. openssl genrsa -out server.key 1024
  67. 2.生成未签署的server.csr
  68. openssl req -new -key server.key -out server.csr
  69. 程序提示输入一系列参数,包括国别、省名、市名。。。,按照提示输入即可
  70. 3.签署服务器证书文件server.crt
  71. openssl req -x509 -days 365 -key server.key -in server.csr -out server.crt
  72. 然后将生成的server.key、server.csr、server.crt拷贝到/etc/httpd目录下
  73. /usr/local/apache/bin/apachectl restart
  74. 浏览器访问:http://192.168.1.75/ 此时浏览器会提示安装证书,安装后显示页面It works!,证明ssl模块已正常工作。

linux应用之apache的源码安装(centos)的更多相关文章

  1. linux下MySQL 5.6源码安装

    linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...

  2. Linux 系统安装配置PHP服务(源码安装)

    简介: PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛,主要 ...

  3. linux应用之nginx的源码安装及配置(centos)

    1.准备工作选首先安装这几个软件:GCC,PCRE(Perl Compatible Regular Expression),zlib,OpenSSL.Nginx是C写的,需要用GCC编译:Nginx的 ...

  4. 【程序包管理】Linux软件管理之src源码安装编译

    在很多时候我们需要自定义软件的特性,这时就需要用到源码安装.那么,网上有很多编译源码的工具,那么,我们怎么知道别人使用的是什么工具呢.其实我也不知道(*^▽^*). 那么本篇博客主要是写C代码的源码安 ...

  5. LinuxMint下Apache Http源码安装过程

    1. 源码包下载 Apache Http安装要求必须安装APR.APR-Util.PCRE等包. Apache Http包下载地址:http://httpd.apache.org/download.c ...

  6. linux下PostgreSQL数据库的源码安装

    实验环境>>>>>>>>>>>>>>>>>>操作系统:CentOS release 6.3 ...

  7. linux系统安装配置exim4(源码安装)

    一.Exim4概述 Exim是一个MTA(Mail Transfer Agent,邮件传输代理)服务器软件,该软件基于GPL协议开发,是一款开源软件.该软件主要运行于类UNIX系统.通常该软件会与Do ...

  8. Greenplum源码安装(CentOS 7)

      最近在看GP,在安装集群的时候遇到了很多问题,在此记录下来. 目录 1 安装环境及软件版本 2 安装准备工作 2.1 修改hosts(所有机器) 2.2 修改系统内核配置(所有机器) 2.3 关闭 ...

  9. nginx源码安装(CentOS版)

    准备工作: 1) 配好网易yum源 登录此网站(http://mirrors.163.com/.help/centos.html),下载相应版本的yum源至服务器的/etc/yum.repos.d/目 ...

随机推荐

  1. 谈 API 的撰写 - 架构

    在 谈 API 的撰写 - 总览 里我们谈到了做一个 API 系统的基本思路和一些组件的选型,今天谈谈架构. 部署 首先要考虑的架构是部署的架构.部署的方案往往会深刻影响着系统的结构.我们需要问自己一 ...

  2. 14:质数因子PrimeNum

    14:题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 ) 详细描述: 函数接口说明: public String getResult( ...

  3. 并发错误:事务(进程 ID )与另一个进程已被死锁在 lock 资源上,且该事务已被选作死锁牺牲品

    这个是并发情况下导致的数据库事务错误,先介绍下背景. 背景 springboot+springmvc+sqlserver+mybatis 一个controller里有五六个接口,这些接口都用到了spr ...

  4. iOS中数组遍历的方法及比較

    数组遍历是编码中非经常见的一种需求.我们来扒一拔iOS里面都有什么样的方法来实现,有什么特点. 由于iOS是兼容C语言的.所以C语言里面的最最常见的for循环遍历是没有问题的. 本文中用的数组是获取的 ...

  5. 转载 ---原生和H5交互挺多的,最近也有朋友再问。这儿我写个简单的例子给大家 直接贴代码 js的

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> ...

  6. QTP自动化测试框架简述

    1.使用框架的原因? 框架是一组自动化测试的规范.测试脚本的基础代码,以及测试思想.惯例的集合,从而减少冗余的代码.提高代码生产率,重用性和可维护性. 2.自动化测试框架的架构 脚本层(业务组件开发) ...

  7. 高复用率的RTSPClient组件EasyRTSPClient设计流程概述

    EasyRTSPClient 设计过程 概述 EasyRTSPClient 基于live555构建而成. 今天讲讲EasyRTSPClient的设计过程 EasyRTSPClient,主要包括以下部分 ...

  8. special points about git

    1 about "origin/master tracks the remote branch" 1.1 what does tracking mean? after " ...

  9. 镜像回源主要用于无缝迁移数据到OSS,即服务已经在自己建立的源站或者在其他云产品上运行,需要迁移到OSS上,但是又不能停止服务,此时可利用镜像回写功能实现。

    管理回源设置_管理文件_开发指南_对象存储 OSS-阿里云 https://help.aliyun.com/document_detail/31865.html 通过回源设置,对于获取数据的请求以多种 ...

  10. 借助nodejs解析加密字符串 node安装库较python方便

    const node_modules_path = '../node_modules/' // crypto-js - npm https://www.npmjs.com/package/crypto ...