CentOS7.3环境下源码安装httpd

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

原文地址:https://www.cnblogs.com/vathe/p/6736024.html