源码编译安装httpd

(2)安装环境为CentOS7 minimal。

(3)用户权限为root,非root用户请切换至root用户下。

(4)安装之前确保本计算机中没有使用rpm安装httpd。使用rpm -q httpd查看。

2、解压归档压缩包至当前目录下

#tar xf httpd-2.4.25.tar.gz

(1)即使不指定option z,tar命令也能根据文件名后缀自动找到最适合的解压方式。

(2)如果指定解压参数,其参数分别对应的压缩方式z:gz,j:bz2,J:xz。

(3)如果想在解压同时输出解压时的详细信息,那么跟上参数v。例如使用tar zxvf httpd-2.4.25.tar.gz。

(4)-C可指定解压到的目录,例如文件想要解压到/root/apache下,使用tar zxvf httpd-2.4.25.tar.gz -C /root/apache/。

(5)f参数后必须跟被解压文件的文件名。

3、进入解压后的文件目录

#cd httpd-2.4.25

wKioL1jVQLjxFNJrAABV5xjINLQ725.png

4、使用./configure [OPTION]...[VAR=VALUE]...,配置此包适应本操作系统

`configure' configures this package to adapt to many kinds of systems.

#./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd

几个简单的option

--help 使用此参数可查看configure支持的详细参数信息

--prefix=PREFIX 指定安装路径,不指定目录,默认安装到/usr/local/apache2目录下

--sysconfdir=DIR 指定配置文件路径

进行./configure时,不一定会100%通过,如果提示error缺少library等,请安装其要求的lib。

wKiom1jVQO-xOgnwAABVljfayHM412.png

例如,本实验环境进行configure操作时缺少APR lib,使用yum list all|grep apr查看yum库中所有包含apr关键字的包

wKioL1jVQSOjRmqDAAB9fMCgvzA576.png

安装apr、apr-devel、apr-util-devel,一般来说后缀名带devel的为开发包。

#yum install -y apr apr-devel apr-util-devel

安装完成后重新执行./configure命令,直到不出错为止。

wKiom1jVQUDxaTZaAABPVGJPq8U957.png

5、当前目录下执行make命令进行编译

#make

6、当前目录下执行make install命令进行安装

#make install

7、为httpd添加至环境变量

源码编译安装的包是不能在终端直接敲命令使用的。

(1)如果想使用其命令可以进入其安装目录下的bin目录,直接执行此文件目录中的可执行文件。

比如,我想执行httpd下的apachectl命令,那么进入httpd的安装目录/usr/local/httpd,然后进入其bin目录。执行apachectl。

#cd /usr/local/httpd/bin

#./apachectl start

在外部浏览器输入你server的ip加上80端口号

:80

wKiom1jVQWjyMn4-AAAe5TAJyJg681.png

(2)如果想要直接在任何目录都能使用httpd的命令,那么就将其安装路径添加至环境变量

修改/etc/profile,在最后一行添加 export PATH=$PATH:/usr/local/httpd/bin

然后使用source /etc/profile重读profile,但是不建议使用source命令。可以重新登录用户,此环境变量就会生效。

直接在终端输入apachectl stop

还有一种添加环境变量的方法,就是在/etc/profile.d目录下新建.sh为后缀的文件,在文件里面添加export PATH=$PATH:/usr/local/httpd/bin。

保存退出。

8、添加库文件至系统

在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,而后把增添的路径直接写至此文件中

wKiom1jVQcyQMnImAAAIBAfmT2w703.png

wKioL1jVQcyjv3t2AAAG4mQ7quY271.png

之后执行ldconfig重新搜索库文件,-v显示过程。

#ldconfig -v

9、将其头文件添加至系统

将httpd下的include文件夹建立软连接至/usr/include/httpd下

#ln -s /usr/local/httpd/include /usr/include/httpd

10、将httpd的man文档添加至系统

使用man -M /PATH/TO/MAN_DIR COMMAND只能暂时添加此软件的man文档,重启计算机后此命令的作用将会失效。

#man -M /usr/local/httpd/man httpd

想要时此软件的man永久生效,向man的配置文件中添加此软件man文档的路径。

之前版本的centos,man的配置文件为/etc/man.config。centos7中man的配置文件为/etc/man_db.conf

wKiom1jVQf2irS37AABr7EzjFRg043.png

至此httpd的安装工作已经结束。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/b1796ef24659b24eab82ff495625388a.html