CentOS 7源码安装httpd服务

CentOS 7源码安装httpd服务

httpd的简介

    httpd是一个开源软件,且一般用作web服务器来使用。目前最流行的web服务器软件叫做httpd,httpd还有一个俗称叫apache,Apache是一个软件基金会,httpd也是这个软件基金会的一个项目。在早期的http server就叫做apache,到了http server 2.0以后就改名为httpd了。所以有时候听到apache服务器和httpd服务器其实都是指得是一个意思。

源码安装httpd服务

 下面来一起探讨下源码包编译安装过程,对此我分为以下几部分介绍

    1、 使用软硬件介绍

     2、 安装编译环境

     3、 下载解压源码包

     4、 安装apache

     5、 测试apache

     6、 查看apache安装生成的目录

     7、 查看apache的配置文件

     8、 apache加入系统启动项

一、使用的软硬件环境简单介绍

     1.笔记本电脑

     2.vmware虚拟机软件

    3.CentOS7.2虚拟机(最小化安装)

    4.httpd下载地址:ftp://10.1.0.1/pub/Sources/sources/httpd/

     5.httpd版本:httpd-2.2.29.tar.bz2

二、安装编译环境

    由于在httpd源码编译过程中需要使用gcc、gcc-c++编译器,故需要先对其进行安装,另外因为使用的是教室内网络,所以需要对yum源进行重新配置

     1.yum源配置:在/etc/yum.repos.d下创建目录old,把其它的.repo结尾的文件移动到old目录,重新创建base.repo,加入一下内容,先执行yum clean all,清除yum缓存,再执行

        yum makecache创建新的yum缓存。

                [base]                
                name=CentOS 7
                baseurl=http://10.1.0.1/cobbler/ks_mirror/7/
                gpgcheck=0
                gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
                enabled=1
                
                [fedora]
                name=CentOS
                baseurl=http://10.1.0.1/fedora-epel/7/x86_64/
                gpgcheck=0
                gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
                enabled=1

    2.安装所需要的编译器,或者是直接安装开发套件

        yum install -y gcc gcc-c++  ||  yum groupinstall -y "Development tools"

    3.最小化安装下,没有bzip2这个工具,所以需要对其进行安装才能对源码包解压

        yum install -y bzip2

    4.我的环境上基本上装完这些就能够顺利安装了,但是由于各人安装系统时选择安装的包组不同,可能会有一些其它依赖的包

        这就需要真对相应的情况做出调整。有些需要先对原来系统上带的httpd服务进行卸载,直接使用:yum remove httpd即可

        由于我最小化安装没有这个软件,故不需要卸载喽。

    

三、 下载解压源码包

    1.使用lftp 10.1.0.1登陆ftp服务器,这里又要对lftp作下说明,lftp原本系统中没有,需自行安装,当然还是老一套:yum install -y lftp

        进入ftp的对应目录,其中有几个httpd的源码包,这里我选择的是 :httpd-2.2.29.tar.bz2,下载完成后对其进行解压

        

下载解压.PNG

四、安装httpd

   1. 安装httpd,我们首先要编译,然后进行安装。

        

编译.PNG

        apache服务有很多参数和功能,这里就不一一说明,仅对我编译过程中使用到的参数进行简单说明

          –prefix=PREFIX         install architecture-independent files in PREFIX //设备安装目录选项

         –mandir=DIR            man documentation [DATAROOTDIR/man]        //man帮助文档路径

         –docdir=DIR            documentation root [DATAROOTDIR/doc/PACKAGE]  //发行时带的一些其它文档存放路径

         –sysconfdir=/etc/apache2   //配置信息的存放路径

        

CentOS 7源码安装httpd服务

CentOS 7源码安装httpd服务

      使用echo $? 查看编译是否成功,如上图中显示,结果0,这么顺利就编译完成了。愉快的进入安装喽

           

make.PNG

        2.安装完成之后把/usr/local/apache2/bin加入PATH环境变量:

          在/etc/profile.d下创建path.sh,写入

           PATH=$PATH:/usr/local/apache2/bin

            然后source /etc/profile    

        

五、启动和测试

    在服务器中执行apachectl start启动服务,然后在另外一台机器上执行links iP 测试服务状态。如果有访问受限,需要启动服务器的机器关闭防火墙重新测试。    

CentOS 7源码安装httpd服务

    

CentOS 7源码安装httpd服务

六、加入系统启动列表

    1.拷贝apache2/bin下的apachectl 到/etc/rc.d/init.d/httpd

        cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd

     2.在其中加入第一行后加入启动和关闭顺序

        sed -ir "1a \#chkconfig: 2345 10 90\n#description\: Activates/Deactivates Apache Web Server" /etc/rc.d/init.d/httpd &>>/tmp/apache2.log

     3.把服务加入启动列表

       chkconfig –add httpd

    4.设置开机默认启动

        chkconfig httpd on

    加入启动列白哦.PNG

    5.经过重启后在此测试依然可用,说明配置以经成功

七、自动安装脚本

    根据现有环境及配置需求简单整理了自动从下载、解压、安装及加入服务项的简单脚本。贴于附件,供个人复习使用。CentOS 7源码安装httpd服务

CentOS 7源码安装httpd服务auto_Install_httpd.txt

原创文章,作者:提着酱油瓶打醋,如若转载,请注明出处:http://www.178linux.com/39684

(1)
提着酱油瓶打醋提着酱油瓶打醋
上一篇 2016-08-24 21:22
下一篇 2016-08-24 21:22

相关推荐

  • 文本查找相关命令简单介绍

    文件查找命 在文件系统上查找符合条件的文件 非实时查找:基于索引查找 locate 实时查找:find locate介绍 依赖于事先构建的索引:索引的构建是在系统较为空闲时自动进行(周期性任务):手动更新数据库(updatedb) 索引构建过程需要遍历整个根文件系统,极消耗资源,生产中尽量避免手动更新。 语法: locate KEYWORD -i:忽略大小写…

    Linux干货 2017-04-10
  • 正则表达式详解

    正则表达式详解

    2017-09-20
  • shell脚本编程初步入门

    shell脚本编程初步入门    说到shell脚本编程,那我们就来先看下shell,shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统内核的一部分,但它调用了系统核…

    Linux干货 2016-08-15
  • python-多进程

    进程是由系统自己管理的。 1:最基本的写法 from multiprocessing import Pool def f(x):     return x*x if __name__ == '__main__': &nb…

    Linux干货 2016-11-05
  • Jumpserver 3.0 全新改版 更轻、更快、更便捷

               Jumpserver Wiki                       &…

    系统运维 2016-01-05
  • 文件管理

    echo“- – -”>/sys/class/scsi_host/host2/scan扫描新装的硬盘,不需要重启 磁盘管理三大步骤:分区,管理,挂载 设备文件创建mknob cdrom /mnt/cdrom 并行接口针多,但是传的速度过快,会对数据造成干扰 vLinux的数据一般都存储在分区空间里 学习linux的磁盘管理就必须:…

    Linux干货 2016-11-27

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-26 13:57

    文章思路清晰,从获取源码包到成功编译后的配置,一气呵成,整体看下来,整篇博客能让人看到很多专业性所在,还能看出很用心的地方,革命尚未成功,同志仍需努力啊,加油!