Ubuntu下安装Apache源码包

源码包安装

准备工作:

我们需要安装build-essentials工具,才可以执行后面的make命令。

安装命令:sudo apt install build-essentials

 

1,在官网下载Apache和pcre的压缩包

 

 

 

 

 

 

 

2,把源码包解压到/usr/local/src/目录下

tar -zxvf httpd-2.4.52.tar.gz -C /usr/local/src

tar -jxvf pcre-8.45.tar.bz2 -C /usr/local/src/ 

 

 

 

 

3,将apr和apr-util解压到/usr/local/src/httpd-2.4.52/srclib目录下

 

tar -zxvf apr-1.7.0.tar.gz -C /usr/local/src/httpd-2.4.52/srclib

tar -zxvf apr-util-1.6.1.tar.gz -C /usr/local/src/httpd-2.4.52/srclib

 

 

 

 

4,将 apr-1.6.5 和 apr-util-1.6.1 分别改名 apr 和 apr-util

root@ubuntu:/usr/local/src/httpd-2.4.52/srclib# mv apr-1.7.0/ apr
root@ubuntu:/usr/local/src/httpd-2.4.52/srclib# mv apr-util-1.6.1/ apr-util

 

 

 

 

5,安装pcre包依赖:进入到pcre-8.45目录下,完成以下命令

./configure --prefix=/usr/local/pcre-8.45

make && make install

 

6,安装httpd包依赖:进入到httpd-2.4.52目录下,完成以下命令(一定要按照这个格式复制!)

./configure --prefix=/usr/local/apache \

-with-pcre=/usr/local/pcre-8.45/bin/pcre-config -with-included-apr

make && make install

 

7,执行完make&&make install后,会报一个下面的错。

 

 

 

 

这是一个很典型的错误,原因是:缺少expat库,需要安装expat,一般是可以通过
yum install expat-devel解决的。如果不行的话,需要手动下载包进行安装解决:

官网链接:https://sourceforge.net/projects/expat/files/expat/2.0.1/.

 

 

 

 

然后解压到/usr/local/src目录下(注意:这个文件是tar.xz结尾,用命令tar -xvf)

 

 

 

 

 

进入到目录下,依次输入下面的命令:

./configure

 

 make && make install

 

8,之后就可以退出expat目录进入httpd目录,继续执行 第六步

没有报error错就说明成功了!

 

 

 

9,在根目录下输入/usr/local/apache/bin/apachectl -k start,启动Apache

之后会出现下面这个提示,我们不需要管,继续重复上一条命令。

(每次开启Apache都会有这个提示,如果想要修改,那么上链接!https://jingyan.baidu.com/article/20b68a889b3258796cec62d0.html)

 

 

之后就可以看到Apache正常运行了

 

 

 

也可以在浏览器中输入:127.0.0.1来查看,也能说明它在正常工作

 

 

 

 

 

附:

1,也可以修改启动Apache方式:复制Apache启动文件到usr/sbin里面 (前面为你安装的apache的目录)

cp /usr/local/apache/bin/apachectl /usr/sbin/

下次启动直接输入:apachectl start,不用输入那么长的命令了

 

 

 2,Apache的默认端口是80,我们也可以修改为8080

使用vim编辑httpd.conf

vim /usr/local/apache/conf/httpd.conf

 

之后输入/listen,来查找关键词Listen

 

 

 找到后把80改为8080,退出vim编辑

 

输入 ps -ef | grep httpd,来查找Apache进程

然后输入ss -ltpn,就能查看到8080端口了。

(不懂ss命令的可以查看链接了解学习  https://blog.csdn.net/liufuchun111/article/details/86307956)

 

posted @ 2022-02-21 18:40  屯子里唯一的架构师  阅读(817)  评论(0编辑  收藏  举报