CentOS7.3环境下源码安装httpd

本文在CentOS7.3下,源码安装apache服务httpd2.4.

1.下载好源码安装包

  [root@localhost ~]#ll
  total 6252
  -rw-r--r--. 1 root root 6398218 Apr 7 22:25 httpd-2.4.25.tar.bz2

2.解压安装包

  [root@localhost ~]#tar xvf httpd-2.4.25.tar.bz2

3.安装编译相关的工具

  yum -y groupinstall "Development and Creative Workstation"

这是在安装一个应用包组,即一组应用包,编译源码相关的工具命令包含在这个包组中。实际生产中,可根据具体情况最小化安装应用包。

另外还需要安装如下包

  yum install -y apr-devel
  yum install -y apr-util-devel
  yum install -y pcre-devel

4.配置编译参数

  [root@localhost httpd-2.4.25]#pwd
  /root/httpd-2.4.25
  [root@localhost httpd-2.4.25]#./configure --prefix=/app/http24 --sysconfdir=/etc/httpd24

--prefix参数是设置安装目录,--sysconfdir参数是设置配置文件路径

  • 如果出现ERROR的字样,可能的原因是执行configure命令所需的包没安装,可见参照第三步,安装相关的工具

  • 实际生产可能根据具体配置详细参数,这里只是为了示范安装,只设置了两个必要的参数

配置成功之后,出现以下字样:

  configure: summary of build options:

      Server Version: 2.4.25
   Install prefix: /app/http24
   C compiler: gcc -std=gnu99
   CFLAGS: -pthread
  LDFLAGS:
  LIBS:
  CPPFLAGS: -DLINUX -D_REENTRANT -D_GNU_SOURCE
  C preprocessor: gcc -E

5.编译

  make

根据参数编译源码,生成特点文件,比如二进制文件httpd。这个过程花费的时间可能比较长。

成功之后,目录如下:

  make[2]: Entering directory `/root/httpd-2.4.25/support'
  make[2]: Leaving directory `/root/httpd-2.4.25/support'   make[1]: Leaving directory `/root/httpd-2.4.25'
  [root@localhost httpd-2.4.25]#ls
  ABOUT_APACHE BuildBin.dsp config.status httpd.mak libhttpd.mak modules.o server
  acinclude.m4 buildconf configure httpd.spec LICENSE NOTICE srclib
  Apache-apr2.dsw buildmark.o configure.in include Makefile NWGNUmakefile support
  Apache.dsw CHANGES docs INSTALL Makefile.in os test
  apache_probes.d CMakeLists.txt emacs-style InstallBin.dsp Makefile.win README VERSIONING
  ap.d config.layout httpd LAYOUT modules README.cmake
  build config.log httpd.dep libhttpd.dep modules.c README.platforms
  BuildAll.dsp config.nice httpd.dsp libhttpd.dsp modules.lo ROADMAP

6.安装

make install

这一步实则是将编译之后生成的文件移动到指定的目录

7.将/app/http24/bin目录配置到环境变量

  • 在/etc/profile.d/目录下新建httpd.sh
[root@localhost profile.d]#pwd
/etc/profile.d
[root@localhost profile.d]#vim httpd.sh
  • 在httpd.sh中添加httpd应用的/bin目录的全路径
PATH=$PATH:/app/httpd24/bin
  • 让httpd.sh文件生效
source httpd.sh

启用httpd服务

apachectl start

检查启用是否成功

[root@vathe ~]#netstat -tan | grep 80
tcp6 0 0 :::80 :::* LISTEN

访问

  • 查看主机ip
[root@vathe ~]#ip a
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:dc:18:55 brd ff:ff:ff:ff:ff:ff
inet 172.16.251.215/16 brd 172.16.255.255 scope global dynamic ens33
valid_lft 86034sec preferred_lft 86034sec
inet6 fe80::83d2:113b:e29b:1a03/64 scope link
valid_lft forever preferred_lft forever

主机ip为172.16.251.215

  • 使用浏览器直接访问172.16.251.215
  • 访问不成功,可能的原因:1.selinux没关闭;2.防火墙没关闭
  • 下一篇文章将介绍怎么判断防火墙是否关闭,以及开关闭防火墙

有疑问或建议可联系VatheSee@163.com

CentOS7.3环境下源码安装httpd的更多相关文章

  1. 在ConoHa上Centos7环境下源码安装部署LNMP

    本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...

  2. Linux环境下源码安装Apache2.2.25

    操作环境:RedHat Enterprise Linux 5.6 一.安装准备 安装Apache一般依赖3个组件:apr.apr-util.pcre. 确保这三个组件已经安装. [root@bigsr ...

  3. Linux环境下源码安装PostgreSQL

    1.下载PostgreSQL源码包,并保存到Linux操作系统的一个目录下 2.解压PostgreSQL源码包 :tar zxvf postgresql-9.2.4.tar.gz 或 tar jxvf ...

  4. CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境【转载】

    本文转载自 园友David_Tang的博客,如有侵权请联系本人及时删除,原文地址: http://www.cnblogs.com/mchina/archive/2012/11/28/2778779.h ...

  5. nginx在Centos7.5下源码安装和配置

    安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...

  6. CentOS7 下源码安装 python3

    CentOS 7 下源码安装 python3   在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下:   1. 首先安装python3.6可能使用的依 ...

  7. centos 6x系统下源码安装mysql操作记录

    在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...

  8. CentOS7(Linux)源码安装Redis

    介绍 项目中经常需要用到Redis做缓存数据库,可是还有小伙伴不会在Linux上安装Redis,毕竟我们开发的项目都是要在服务器上运行的,今天就来讲讲如何在CentOS7环境使用源码进行安装Redis ...

  9. CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5

    一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...

随机推荐

  1. word如何替换行首?

    在替换窗口, 要使用通配符 要使用 替换中的 分组, 高级替换 表示行首的符号, 使用 (<*) 表示 单词开始的位置, 使用 <, 表示单词结束的位置, 使用 > 替换的示例:

  2. Derek解读Bytom源码-protobuf生成比原核心代码

    作者:Derek 简介 Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom ...

  3. 17秋 SDN课程 第一次作业

    SDN第一次作业 你会选择作 网络编程 方向的程序员吗?为什么? 有可能.原因如下: 1.我的研究与网络密切相关: 2.SDN侧重软件实现,自然涉及socket等网络编程知识,属于基本功: 3.市场. ...

  4. win7 "com surrogate“ 已停止工作的解决办法

    1.在文件夹选项里选“始终显示图标,从不显示缩略图”. 2.数据执行保护(DEB),依次打开:计算机——属性——高级系统设置——高级——性能——设置——数据执行保护 选下面的单选按钮“为除下列选定程序 ...

  5. HDU 1298 T9(字典树+dfs)

    http://acm.hdu.edu.cn/showproblem.php?pid=1298 题意:模拟手机9键,给出每个单词的使用频率.现在给出按键的顺序,问每次按键后首字是什么(也就是要概率最大的 ...

  6. forEach、map、filter、find、sort、some等易错点整理

    一.常用方法解析   说起数组操作,我们肯定第一反应就是想到forEach().map().filter()等方法,下面分别阐述一下各方法的优劣. 1.forEach 1.1 基础点   forEac ...

  7. git服务器搭建全程

    为了后续安装能正常进行,我们先来安装一些相关依赖库和编译工具 [root@VM_95_113_centos ~]# yum install curl-devel expat-devel gettext ...

  8. HttpUrlConnection底层实现和关于java host绑定ip即时生效的设置及分析

    最近有个需求需要对于获取URL页面进行host绑定并且立即生效,在java里面实现可以用代理服务器来实现:因为在测试环境下可能需要通过绑定来访问测试环境的应用实现代码如下: public static ...

  9. [从零开始搭网站三]CentOS配置JDK

    点击下面连接查看从零开始搭网站全系列 从零开始搭网站 上一章我介绍了,如何不用每次都输密码连接服务器.那么这一章终于要开始服务器的开发环境配置了. 1:先输入以下代码来检验有没有已经安装的CDK: r ...

  10. Java中的long与double的区别

    1.long与double在java中本身都是用64位存储的,但是他们的存储方式不同,导致double可储存的范围比long大很多 2.long可以准确存储19位数字,而double只能准备存储16位 ...