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

手动在Linux中源码编译安装httpd

92次阅读
没有评论

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

为什么有 RPM 包还需要自己手动编译安装程序包呢?

因为笔者的水平有限,对此问题有两种自己的回答:

1. 由于网络上的 RPM 包是作者自己用自己机器编译的,并不适合各种平台的硬件平台。好比作者自己的机器是 X86_64 架构的,而你的机器是 i386,那很不幸运,不适合你,只能下载源码手动安装了。

2. 如果你是在大公司做运维的话,为了服务器系统的安全,你不可能轻易去网上下载 RPM 包安装的,因为别人可能恶意的注入木马后门什么也不是不可能的,所有为了安全期间,还是要自己手动进行编译安装的。

自己手动编译安装难不难呢,大概都需要哪些步骤呢?

那我先在这里大概讲下哪些步骤,然后在下面进行详解。
1. 安装编译环境。
2. 下载 httpd 程序包(源码)
3. 编译,安装
呵呵,是不是相当的简单呢,好了,下面就进去详细的步骤了
1. 安装编译环境
安装编译环境,顾名思义就是安装编译需要的编译器了。
大概有多少种编译器呢,我们可以在使用 yum groupinfo Development tools 进行包组的查看了。有的读者也许还不懂这个命令的含义,我在写完这个博文后,会单独开设一个博文讲解 yum 命令和 yum 仓库的,其实也很简单,不要畏惧。

手动在 Linux 中源码编译安装 httpd

手动在 Linux 中源码编译安装 httpd

 

当然,一个 Development tools 中有好多的编译工具,你不需要挑选,直接统统安装就可以了。
安装 Development tools 很简单,直接 yum install Development tools。因为笔者的网速很烂,从 yum 库安装起来很慢,因为之前安装了,所以就不现场演示安装过程了。
当你安装成功后,运行查看所有包组的命令:yum grouplist 就可以查看是否已经安装成功。

手动在 Linux 中源码编译安装 httpd

好了,第一步就这么轻松的搞定了。
2. 下载 httpd 源码包
在网上找到源码的地址,如图所示:

手动在 Linux 中源码编译安装 httpd
 
复制链接地址后,进去 xshell 中在命令行中输入:
wget 链接地址,下载下来的源码包就存在你当前的路径下。

手动在 Linux 中源码编译安装 httpd
 
下载好源码之后解压出来,在当前目录上使用:ls 查看源码包是用哪种格式的压缩文件压缩的。

手动在 Linux 中源码编译安装 httpd

以.tar.bz2 结尾的文件,是用 bzip2 压缩用 tar 归档的的,可以使用 tar –jxf httpd-2.2.25.tar.bz2 解压缩并展开归档。得到一个文件名为:httpd-2.2.25
接下来就是进去到 httpd-2.2.25 目录中,使用命令:cd httpd-2.2.25。
我们在编译之前还需要定义一下,对当前程序编译时启用哪些特性或者功能,已经自定义安装路径等等。包中的 configure 脚本就是用来设置的,说到这里有必要让大家对这个编译前的设定做一个更深入的介绍。
包中有个 makefile.in 和 configure 两个文件,这两个文件是为一个步编译(make 命令)生成配置文件的,当然不设置也是可以的,他是按照自己的默认配置默认的安装。
其中有几个常用的重要的配置:
1,我们可以指定安装的路径。
    –prefix = /user/local/package-name
    –sysconfdir=/etc/package-name
2, 指定启用的特性:
    –enable-feature(特性)    例如:–enable-socket  配置不启用套接字功能。
    –disable-feature            例如:-disable-socket 配置启用套接字功能
3,指定所依赖的功能,程序或文件
    –with-function:启用某功能
    –without-functions:不启用某功能
当然了不同的程序,他们的 configure 脚本的功能不同,设置也不太一样,可以获取帮助信息。
我们直接来执行 configure 脚本,让其生成 make 的配置文件。
3,编译安装
编译:直接用 make 命令。
安装:make install
到此为止就安装好了。

手动在 Linux 中源码编译安装 httpd
 
———————————————————————————————————————————————
以上是安装好了,顾名思义下来就是要运行了,运行之前能需要设置下环境变量,这样才能让我们在 shell 中输入程序的时候,好让 shell 能够找到我们的源程序的位置来进行启动。当然这个设置是写入配置文件的,永久有效而不是只是针对当前的 shell。

相关阅读

CentOS 6.5 编译安装 httpd-2.4.7  http://www.linuxidc.com/Linux/2014-02/97265.htm

CentOS 6.4 源码编译安装 httpd 并启动测试 http://www.linuxidc.com/Linux/2014-02/97204.htm

CentOS 中 httpd 源代码安装与测试 http://www.linuxidc.com/Linux/2013-12/94146.htm

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

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

httpd 进程与线程理解总结 http://www.linuxidc.com/Linux/2013-05/85163.htm

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