阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS中httpd源代码安装与测试

479次阅读
没有评论

共计 6410 个字符,预计需要花费 17 分钟才能阅读完成。

环境:CentOS 6.4 x86_64

所需应用程序:APR(http://apr.apache.org/)、APR-UTIL(http://apr.apache.org/)、httpd(http://httpd.apache.org/)

在 linux 中软件安装有两大类,一类是软件包安装,一类是源代码安装。软件包安装就是指将编译好的二进制封装成 rpm 包,可以直接使用 rpm 工具和 yum 工具安装。源代码安装是指没有编译成二进制,需要通过手动编译的。使用源代码安装的原因有两个,一个就是想使用最新版的软件,另一类就是想自定义其功能的。

CentOS 6.2 安装源码 httpd-2.4.1 错误解决办法  http://www.linuxidc.com/Linux/2012-03/57384.htm

源代码安装的步骤:

1、展开压缩文件一般把文件都解压缩到 /uer/local/src 中

2、在解压缩文件目录中使用 ./configure 选项来检测编译环境,产生 makefiel 文件

3、使用 make 进行编译

4、make install 安装

下面就介绍如何在 centos 中通过源代码安装 httpd 以及测试。

用源代码安装软件首先要在系统中安装相应的编译环境;在 RedHat 中搭建编译环境需要的工具有 DevelopmentLibraries、Development Tools、Legacy Software Development、X Software Development,这些开发环境在 RehdHat 是不可缺少的。在 centos 中需要的开发工具主要有两个,AdditionalDevelopment、Development tools。所以在进行源代码安装时需要搭建编译环境。

那么首先我们要挂载我们的光盘,通过光盘查找我们要安装的软件包组,挂载光盘的命令是:mount /dev/cdrom /media/cdrom 光盘挂载成功后我们可以通过 yum –disablerepo=\* –enablerepo=c6-media grouplist 查询我们所需要的软件包组。通过查询我们发现如图中圈出来的必须的两个开发软件包组。那么就来安装这两个软件包组吧,使用命令 yum –disablerepo=\* –enablerepo=c6-media groupinstall“AdditionalDevelopment”“Development tools”

CentOS 中 httpd 源代码安装与测试

安装完成后,接下来就进行 httpd 的安装,在安装 httpd 前需要先安装 apr 和 apr-util

在这里我们用 apr-1.4.6.tar.gz、apr-util-1.5.1.tar.gz 和 httpd-2.4.4.tar.bz2 为例;首先把这些压缩文件解压缩到 /usr/local/src 目录中,使用命令

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

对三个压缩文件解压缩

解压缩完成后进入 /usr/local/src 目录中就能发现我们刚刚解压缩的三个文件所形成的目录

CentOS 中 httpd 源代码安装与测试

先来安装 apr,那么要先进入 /usr/local/src/apr-1.4.6 目录中

CentOS 中 httpd 源代码安装与测试

可以看到一个 configure 文件这个文件就是我们用来配置选项,检测编译环境。还有一个 README 或者是 INSTALL 这个文件是告诉我们一些使用的方法。现在我们就来执行 configure,在执行时加入 –prefix 来指定安装目录,使用方法就是在该解压缩目录中输入./configure –prefix=/usr/local/apr(这个目录是自己指定的,如果以后想要卸载该软件可以直接删除该目录即可,默认是安装在 /desired/path/of/apr 中,如果使用默认的安装路径想要卸载那就比较麻烦了)在这个过程中如果没有提示错误那就说明可以进行下一步了。

然后就使用 make 来进行编译了

CentOS 中 httpd 源代码安装与测试

make 是一个比较漫长的过程,耐心等待就是

CentOS 中 httpd 源代码安装与测试

到了这里就说明编译完成,接下来就使用 make install 进行安装了

CentOS 中 httpd 源代码安装与测试

完成后我们到 /usr/local/ 目录中看看

CentOS 中 httpd 源代码安装与测试

我们已经看到我们刚刚安装的 apr 了,再进到 apr 目录中看看

CentOS 中 httpd 源代码安装与测试

我们可以看一些 bin 目录,include 目录还有 lib 目录

推荐阅读

DRBD+Heartbeat+httpd 实现 HA 群集 http://www.linuxidc.com/Linux/2013-10/92146.htm

Heartbeat+httpd+NFS 实现高可用的 Web 服务器 http://www.linuxidc.com/Linux/2013-08/88520.htm

Linux 下 httpd 服务阶段实验 http://www.linuxidc.com/Linux/2013-08/88426.htm

监视系统服务 mysqld、httpd 的运行状态 http://www.linuxidc.com/Linux/2013-06/86540.htm

在 CentOS 6 上使用 AWStats 分析 httpd 和 Tomcat 日志 http://www.linuxidc.com/Linux/2012-10/72943.htm

如果我们想让其他的软件使用 apr 的库,我们就需要在 /etc/ld.so.conf.d/ 目录中创建一个.conf 文件来指明它的库路径,那我们就来创建一个文件

CentOS 中 httpd 源代码安装与测试

创建完成后我们在该文件中写出路径

CentOS 中 httpd 源代码安装与测试

然后用 ldconfig 命令刷新缓存;

CentOS 中 httpd 源代码安装与测试

可以看到已经加载上了

如果想让程序调用 apr 的头文件,那我们就在 /usr/include 中创建一个链接指向 /usr/local/apr/include/apr-1

切换到 /usr/include 目录下

CentOS 中 httpd 源代码安装与测试

在该目录下可以看到很多头文件

然后创建链接

CentOS 中 httpd 源代码安装与测试

通过查询我们可以看到刚刚创建的链接

CentOS 中 httpd 源代码安装与测试

好了,到此 apr 就已经安装完成,接下来该安装 apr-util

首先切换到 /usr/local/src/apr-util-1.5.1 目录中

同样在该目录中也看到有 configure、README 文件

CentOS 中 httpd 源代码安装与测试

接下来就和前面 apr 的方法一样,执行 ./configure –prefix=/usr/local/apr-util 当然这样是不行的,这样是会提示错误的,我们需要指出 apr-config 的全路径,apr-config 的路径是在 /usr/local/apr/bin 目录下,所以应该写成./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr/bin/apr-config

CentOS 中 httpd 源代码安装与测试

通过检测后,执行 make;

CentOS 中 httpd 源代码安装与测试

接下来进行安装

CentOS 中 httpd 源代码安装与测试

安装完成后,想前面的 apr 一样,指定库文件路径

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

同样刷新缓存

CentOS 中 httpd 源代码安装与测试

接下来指明头文件

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

创建成功,最后来安装 httpd

切换到 /usr/local/src/httpd-2.4.4

CentOS 中 httpd 源代码安装与测试

通过查看可以看到有 configure INSTALL README,接下来就来执行./configure–prefix=/usr/local/httpd 当然这样肯定还是不行,这里需要指出 apr-config 的全路径和 apu-config 的全路径,那就应该写成./configure–prefix=/usr/local/apache –with-apr=/usr/local/apr/bin/apr-config –with-apr-util=/usr/local/apr-util/bin/apu-config

CentOS 中 httpd 源代码安装与测试

执行后如果我们看到这个错误

CentOS 中 httpd 源代码安装与测试

这是一个关于 prce-config 的错误;那就要排除错误,首先看看系统中有没有安装和 prce 相关的软件

CentOS 中 httpd 源代码安装与测试

这里安装了 pcre-7.8-6.el6.x86_64,那就要看看这个软件里有没有关于 pcre-config 相关的文件

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

发现这里面没有关于 pcre-config 的文件,那就要安装 pecr-devel

CentOS 中 httpd 源代码安装与测试

安装完成后,在安装 httpd 这样就顺利通过检测然后执行 make

CentOS 中 httpd 源代码安装与测试

make 完成后执行 makeinstall

CentOS 中 httpd 源代码安装与测试

然后指明头文件

CentOS 中 httpd 源代码安装与测试

在 /usr/local/apache/bin 目录中都是一些可执行的文件,如果想要执行每次都要切换到该目录下,这样是很麻烦的。如果想要直接执行就要修改环境变量 /etc/profile

CentOS 中 httpd 源代码安装与测试

在第 55 中指明了在系统中 PATH 搜索路径,我们就在这里指明现在的搜索路径

CentOS 中 httpd 源代码安装与测试

这样就可以了,使用 . /etc/profile 重新读取,再用 echo 输出 PATH 的值看看有没有加载上

CentOS 中 httpd 源代码安装与测试

从图中看到已经加载上了

然后还要指出 httpd 的 man 手册的位置,编辑 /etc/man.config

CentOS 中 httpd 源代码安装与测试

在里面添加 MANPATH /usr/local/apache/man 即可。

到这里 httpd 已经安装完成了

接下来就该编写 shell 脚本,来控制 httpd 的启动和停止

脚本存放在 /etc/init.d 里面,那我们就在里面创建一个 httpd 的控制脚本来控制 httpd 服务的启动。

脚本的代码:

#!/bin/bash
[-e /etc/init.d/functions] && . /etc/init.d/functions
prog=/usr/local/apache/bin/httpd
lockfile=/var/lock/subsys/httpd
start(){
      if [-e $lockfile];then
      echo “httpd server isstarted”
      else echo -n “httpd server isstarting… “
      sleep 1
      $prog &>/dev/null  && echo  “[ok]” && touch $lockfile||echo “[failer]”
      fi
}
stop(){
      if [! -e $lockfile];then
      echo “httpd server is stoped”
      else echo -n “httpd server isstoping… “
      sleep 1
      killproc httpd && echo “[ok]” && rm -rf $lockfile ||echo “[failer]”

      fi
}
status(){
      if [-e $lockfile];then
      echo “httpd server isstarted”
      else echo “httpd server nofound”
      fi
}
case $1 in
start)
  start
  ;;
stop)
  stop
  ;;
restart)
  stop
  start
  ;;
status)
  status
  ;;
*)
echo”USAGE:start|stop|restart|status”
 ;;
esac
启动服务:

CentOS 中 httpd 源代码安装与测试

通过查看 80 端口发现 httpd 已经启动

CentOS 中 httpd 源代码安装与测试

由此可见我们的 httpd 通过源代码安装成功,并且测试没有出现错误。

更多 CentOS 相关信息见 CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

环境:CentOS 6.4 x86_64

所需应用程序:APR(http://apr.apache.org/)、APR-UTIL(http://apr.apache.org/)、httpd(http://httpd.apache.org/)

在 linux 中软件安装有两大类,一类是软件包安装,一类是源代码安装。软件包安装就是指将编译好的二进制封装成 rpm 包,可以直接使用 rpm 工具和 yum 工具安装。源代码安装是指没有编译成二进制,需要通过手动编译的。使用源代码安装的原因有两个,一个就是想使用最新版的软件,另一类就是想自定义其功能的。

CentOS 6.2 安装源码 httpd-2.4.1 错误解决办法  http://www.linuxidc.com/Linux/2012-03/57384.htm

源代码安装的步骤:

1、展开压缩文件一般把文件都解压缩到 /uer/local/src 中

2、在解压缩文件目录中使用 ./configure 选项来检测编译环境,产生 makefiel 文件

3、使用 make 进行编译

4、make install 安装

下面就介绍如何在 centos 中通过源代码安装 httpd 以及测试。

用源代码安装软件首先要在系统中安装相应的编译环境;在 RedHat 中搭建编译环境需要的工具有 DevelopmentLibraries、Development Tools、Legacy Software Development、X Software Development,这些开发环境在 RehdHat 是不可缺少的。在 centos 中需要的开发工具主要有两个,AdditionalDevelopment、Development tools。所以在进行源代码安装时需要搭建编译环境。

那么首先我们要挂载我们的光盘,通过光盘查找我们要安装的软件包组,挂载光盘的命令是:mount /dev/cdrom /media/cdrom 光盘挂载成功后我们可以通过 yum –disablerepo=\* –enablerepo=c6-media grouplist 查询我们所需要的软件包组。通过查询我们发现如图中圈出来的必须的两个开发软件包组。那么就来安装这两个软件包组吧,使用命令 yum –disablerepo=\* –enablerepo=c6-media groupinstall“AdditionalDevelopment”“Development tools”

CentOS 中 httpd 源代码安装与测试

安装完成后,接下来就进行 httpd 的安装,在安装 httpd 前需要先安装 apr 和 apr-util

在这里我们用 apr-1.4.6.tar.gz、apr-util-1.5.1.tar.gz 和 httpd-2.4.4.tar.bz2 为例;首先把这些压缩文件解压缩到 /usr/local/src 目录中,使用命令

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

CentOS 中 httpd 源代码安装与测试

对三个压缩文件解压缩

解压缩完成后进入 /usr/local/src 目录中就能发现我们刚刚解压缩的三个文件所形成的目录

CentOS 中 httpd 源代码安装与测试

先来安装 apr,那么要先进入 /usr/local/src/apr-1.4.6 目录中

CentOS 中 httpd 源代码安装与测试

可以看到一个 configure 文件这个文件就是我们用来配置选项,检测编译环境。还有一个 README 或者是 INSTALL 这个文件是告诉我们一些使用的方法。现在我们就来执行 configure,在执行时加入 –prefix 来指定安装目录,使用方法就是在该解压缩目录中输入./configure –prefix=/usr/local/apr(这个目录是自己指定的,如果以后想要卸载该软件可以直接删除该目录即可,默认是安装在 /desired/path/of/apr 中,如果使用默认的安装路径想要卸载那就比较麻烦了)在这个过程中如果没有提示错误那就说明可以进行下一步了。

然后就使用 make 来进行编译了

CentOS 中 httpd 源代码安装与测试

make 是一个比较漫长的过程,耐心等待就是

CentOS 中 httpd 源代码安装与测试

到了这里就说明编译完成,接下来就使用 make install 进行安装了

CentOS 中 httpd 源代码安装与测试

完成后我们到 /usr/local/ 目录中看看

CentOS 中 httpd 源代码安装与测试

我们已经看到我们刚刚安装的 apr 了,再进到 apr 目录中看看

CentOS 中 httpd 源代码安装与测试

我们可以看一些 bin 目录,include 目录还有 lib 目录

推荐阅读

DRBD+Heartbeat+httpd 实现 HA 群集 http://www.linuxidc.com/Linux/2013-10/92146.htm

Heartbeat+httpd+NFS 实现高可用的 Web 服务器 http://www.linuxidc.com/Linux/2013-08/88520.htm

Linux 下 httpd 服务阶段实验 http://www.linuxidc.com/Linux/2013-08/88426.htm

监视系统服务 mysqld、httpd 的运行状态 http://www.linuxidc.com/Linux/2013-06/86540.htm

在 CentOS 6 上使用 AWStats 分析 httpd 和 Tomcat 日志 http://www.linuxidc.com/Linux/2012-10/72943.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计6410字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7989442
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛 NAS-2:飞牛配置 RAID 磁盘阵列 前言 大家好,我是星哥之前星哥写了《星哥带你玩飞牛 ...
升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新 SSL 证书系统、申请 godaddy 的 APIKEY 公司之前花钱购买的 ssl 证书快...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...
恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...
300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

  300 元就能买到的 ” 小钢炮 ”?惠普 7L 四盘位小主机解析 最近...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...