编译安装httpd并启动之

httpdhttpdApache超文本传输协议(HTTP)服务器的主程序。被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池。

今天我们主要来看一下手动编译安装httpd的详细步骤并测试是否成功。


由于编译httpd依赖于gcc(GNU CompilerCollection),Development ToolsServer Platform Development,所以我们先通过yum grouplist命令来看一下是否满足依赖关系,然后通过rpm -q httpd查看一下是否有已编译安装好的httpd,如果有要先通过rpm -ehttpd命令先将其卸载掉,如果存在依赖关系,可以通过--nodeps来忽略掉依赖关系。然后通过gcc –v或者gcc –version命令来查看gcc编译器是否安装好了,做好这些工作,我们就可以开始编译了


通过yum install ftp发现lftp没有安装,安装lftp工具。(lftp 是一个功能强大的下载工具,它支持访问文件的协议: ftp, ftps,http, https, hftp, fish.

      #yum install ftp

wKioL1MVGmzi38FmAAkQHuWextg404.bmp

ftp上将我们所需要的httpd源代码下载下来,当然,这个也可以在其他开源网站上下载的

wKioL1MVGwKQSn-iAAfaCipj75o091.bmp

解压httpd-2.2.25.tar.bz2源码包并切至源码目录中

wKioL1MVHUuyKRQsAABn9iinq9U788.bmp

wKiom1MVHc_CDbNMAAChtgBnNok395.bmp

通过ls命令,我们可以看到有一个configure文件,这是一个帮助文档,我们可以通过./configure –help命令来查看一下,由于内容较多,这里就不显示了

wKioL1MVHauiGd-9AAS_Rs-FvPE440.bmp

执行configure脚本

      ./configure--prefix=/usr/local/httpd --sysconfdir=/etc/httpd –enable-so

      --prefix=/usr/local/httpd是指定我们安装的路径

      --sysconfdir=/etc/httpd是指定的配置文件的路径

      --enable-so是指允许模块化使用


使用make命令进行编译

wKiom1MVHdXAKrO4AAqvrtXMTWw734.bmp

wKioL1MVHbLR3MCQAAXYRjblIPk835.bmp

注意,这个过程要看一下有没有出现错误

使用make install命令安装编译好的源程序

由于过程太长了,这里就不上传截图了


查看安装后的文件

wKioL1MVHbPhYZKlAAI6pnsWWWc102.bmp

启动httpd服务

wKiom1MVHdqyhp5JAAGhvhyKZyQ747.bmp

停止httpd服务

wKiom1MVHdugcrPGAAGCJvfB7LA861.bmp

这之后我们还需要做一些工作


将二进制应用程序添加到环境变量中,编辑配置文件

wKiom1MVHdzSV5isAAClpoptmSQ117.bmp

wKioL1MVHbeSemGXAAFX9qBDrMc384.bmp

使系统重读二进制文件:

wKiom1MVHd6TU9kbAAKVNio8HOM845.bmp

将头文件输出给系统:

wKiom1MVHd-zFYPnAAI4iklkbG0746.bmp

库文件输出

wKioL1MVHheBK5qJAAEQhoYnqUg706.bmp

wKioL1MVHhiAJJvdAAHyFq73wgE698.bmp

让系统重新生成库文件路径缓存

      Ldconfig

导出man文件:

wKiom1MVHj_jAyyTAADCbr82C7w272.bmp

wKioL1MVHhrANrovAAMn1poO5pc595.bmp

wKiom1MVHkGx5C19AAFtUuA2iHo756.bmp

wKioL1MVHh_AcymeAAzCbi9jPhQ341.bmp

启动httpd服务

wKiom1MVHkrhTKiGAAyUsj4GBuU448.bmp