Linux源码包安装apache(httpd)

时间:2024-02-16 08:23:13

我这里实验是用的CentOS7

 

#事先先检查一下自己的linux是否安装apache

[root@localhost ~]#rpm –q httpd

#如果已安装则先卸载原来的apache

[root@localhost ~]#yum –y remove httpd

 

 #我这里安装的虚拟机,做实验前恢复到刚安装时的快照

#下载httpd源码包,以及三个安装所需的依赖包的源码包

源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)

 一、下载,准备安装rpm源码包

1.Apache HTTP Server(我这里下载的是httpd-2.4.39.tar.gz)

地址:http://httpd.apache.org/download.cgi#apache24

 

2. APR 和 APR-Util(我这里下载的是apr-1.5.2.tar.bz2 和apr-util-1.5.4.tar.gz)

地址:http://apr.apache.org/download.cgi

 

3. PCRE(我这里下载的是pcre-8.35.tar.gz)

地址:https://ftp.pcre.org/pub/pcre/

 

#安装源码包的时候还可能跟下载的包有问题,怎么装都不正确,我换了一个1.5的安装就成功了,,不知道为什么。。。

 二、开始安装

#可以用wget命令直接下载到linux中,我这里用的windows下载,并上传到linux上

#wget url_path

 

#安装编译环境(一定要安装gcc/gcc-c++ 可以用[root@localhost ~]#gcc –v查询是否安装)

[root@localhost ~]#yum –y install gcc-c++ make

 

 

#这里我将上传在/root/目录下的所有压缩包解压到/usr/local目录下

1 [root@localhost ~]# tar xf apr-1.5.2.tar.bz2 -C /usr/local/        //-C表示解压到指定路径
2 
3 [root@localhost ~]# tar xf apr-util-1.5.4.tar.gz -C /usr/local/
4 
5 [root@localhost ~]# tar xf pcre-8.35.tar.gz -C /usr/local/
6 
7 [root@localhost ~]# tar xf httpd-2.4.39.tar.gz -C /usr/local/

#如果出现不能解压.bz2格式的情况,先用yum下载好bzip2

 

 #进到/usr/local/目录下,没问题的话,开始安装第一个apache依赖包,首先安装apr-1.5.2

1 [root@localhost ~]# cd /usr/local/
2 
3 [root@localhost local]# ls
4 
5 [root@localhost local]# cd apr-1.5.2
6 
7 [root@localhost apr-1.5.2]#./configure --prefix=/usr/local/apr        //prefix表示指定安装路径
8 
9 [root@localhost apr-1.5.2]#make&&make install             //编译并进行安装

/#没有出现error错误的话那就安装成功了

 

 #开始安装第二个依赖包,apr-util-1.5.4的安装还依赖于apr-1.5.2。所以放在第二个安装

1 [root@localhost apr-1.5.2]# cd ../apr-util-1.5.4
2 
3 [root@localhost apr-util-1.5.4]#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config              //这里with将其关联起来,解决安装的依赖关系
4 
5 [root@localhost apr-util-1.5.4]#make&&make install

 

 #安装第三个依赖包

1 [root@localhost apr-util-1.5.4]# cd ../pcre-8.35
2 
3 [root@localhost pcre-8.35]#./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config
4 
5 [root@localhost pcre-8.35]#make&&make install

 

 

 

#开始安装apache

1 [root@localhost pcre-8.35]# cd ../httpd-2.4.49
2 
3 [root@localhost httpd-2.4.49]#./configure --prefix=/usr/local/httpd --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
4 
5 [root@localhost httpd-2.4.49]#make&&make install

 

 

#这里一定要关闭防火墙,否则浏览器没办法访问到

1 [root@localhost ~]#systemctl stop firewalld
2 
3 [root@localhost ~]#setenforence 0    //关闭selinux防火墙

 

 

#编辑httpd.conf文件,搜索"ServerName"

1 [root@localhost ~]# cd /usr/local/httpd/conf/
2 
3 [root@localhost conf]# ls
4 
5 extra  httpd.conf  magic  mime.types  original
6 
7 [root@localhost conf]# vim httpd.conf
8 
9 #ServerName www.example.com:80                //将前面的#去掉,或者自己添加也行

 

#再重新启动apache 即可

1 [root@localhost conf]#/usr/local/httpd/bin/apachectl restart        //注意,这里得用二进制程序来启动,而不能用systemctl start httpd来启动

 #这里所有路径跟你自己解压、安装的命名和位置有关系,跟我不同的位置的要注意下咯,免得找不到尴尬

 三、测试

 浏览器输入服务器IP地址,出现It works就代表成功了!!!ok,收工