一、安装前准备:

     ①源码包:httpd-2.4.27.tar(为保证数据安全性建议在Apache官网镜进行下载http://httpd.apache.org/download.cgi#apache24),CentOS 7环境下建议安装httpd2.4版本。

     ②利用yum groupinstall下载“Develop Tools”开发工具包组

     ③在/usr/local/src目录下解压源码包,会自动生成httpd-2.4.27目录。cd进入该目录,安装前阅读README、INSTALL安装说明查看注意事项。

二、C语言源代码编译安装

    (1)、解压源码包后会在httpd-2.4.27目录下生成脚本configure,该脚本主要作用为:

           ①通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile

                             ② 检查依赖到的外部环境,如依赖的软件包

并指定默认/app/apache24(该目录需手工创建) 并指定默认配置文件安装路径/etc/apache24/。

./configure --prefix=/app/apache24  --sysconfdir=/etc/apache24/

          安装过程中通常会提示错误缺少组件,通常为“缺少信息 加 -devel” 开发组件。观察安装中错误,安装对应软件包。如:

centos7 安装dotnet6 centos7安装httpd_嵌入式

          不确定需安装的软件包可以用”yum list + 关键字“查询:

centos7 安装dotnet6 centos7安装httpd_c/c++_02

          如上图可见需再安装apr-devel.x86_64软件包

centos7 安装dotnet6 centos7安装httpd_apache_03

./configure --prefix=/app/apache24  --sysconfdir=/etc/apache24/

centos7 安装dotnet6 centos7安装httpd_c/c++_04

centos7 安装dotnet6 centos7安装httpd_centos7 安装dotnet6_05


   这次提示需安装APR-util开发包,继续安装之。本人后续又安装了apr-util-devel.x86_64、pcre-devel.x86_64 安装包,安装个版本及添加各参数需额外安装开发包不尽相同。依据提示安装所需即可。

centos7 安装dotnet6 centos7安装httpd_apache_06

        出现如上图所示httpd软件安装完成。

       (2)、根据makefile文件,构建应用程序。 直接使用make命令回车即可完成项目构建。

centos7 安装dotnet6 centos7安装httpd_运维_07

       (3)、make install 复制文件到相应路径。直接使用make install 命令完成安装:

centos7 安装dotnet6 centos7安装httpd_centos7 安装dotnet6_08

         tips:由于(2)、(3)步骤执行较简单且较费时 可使用make && make install 自动完成两步操作,同时可以出去遛个弯放松一下了 。

         安装完成后需要启动服务,通过README文件我们可以看到启动服务需要使用apachectl命令。cd到/app/apache24/bin 找到该命令并运行。./apachectl start 启动服务。通过netstat -ntl 命令查询服务对应的80端口是否启用。

centos7 安装dotnet6 centos7安装httpd_apache_09

         访问地址http://172.18.253.169看是否搭建服务成功。

centos7 安装dotnet6 centos7安装httpd_c/c++_10

          此时虽然访问成功但是页面较简单,如需更改可进入/app/apache24/htdocs找到index.html进行编辑改变页面布局及内容。


三、参数配置:

         此时已完成httpd软件编译安装已完成,不过想要使软件和服务顺利的运行起来还需要注意一些细节。让我们来总结一下:

          1、关闭防火墙,系统防火墙会与httpd服务冲突,需要关闭

Centos 7 关闭防火墙操作命令:
               systemctl stop firewalld.service                   #关闭防火墙
               systemctl  disable  firewalld.service             #设置防火墙不开机启动
             附CentOS 6关闭防火墙命令操作:
             service  iptables stop                                    #关闭防火墙
             chkconfig  iptables   off                                #设置防火墙不开机启动

        2、关闭SElinux,同样SElinux安全策略同样会与服务冲突建议关闭

setenforce  0                                                 #关闭SElinux安全策略

             修改配置文件/etc/selinux/config 如下图所示

centos7 安装dotnet6 centos7安装httpd_运维_11

                                                                                   #设置SElinux服务开机不自动启动

         3、虽然服务安装成功可是使用apachectl命令总是需要到/app/apache24/bin才能运行终究不太方便。这时我们需要在/etc/profile.d目录下新建apache24.sh,编辑写入 PATH=/app/apache24/bin:$PATH保存。然后source apache24.sh 保存使之生效。使用echo $PATH 确认路径是否加入

centos7 安装dotnet6 centos7安装httpd_嵌入式_12

          4、本次安装可以通过man命令来查找帮助,如部分软件无法通过man来查询需要把安装生成的man文档路径/app/apache24/man加入到/etc/man.config中并运行命令mandb更新man数据即可。