【LINUX编译安装程序】Centos7.4编译安装httpd 2.4.29

举例:Centos7.4编译安装httpd 2.4.29

编译安装原理和步骤

编译安装原理:

源代码–>预处理–>编译–>汇编–>链接–>执行

c语言源代码使用make项目管理器,编译安装的通用三个步骤:

1、./configue

(1)通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及模板文件Makefile.in文件生成Makefile httpd 指定安装到路径 /apps/httpd

(2)检查依赖到的外部环境,如依赖的软件包

2、make 根据Makefile文件,构建应用程序

3、Make install 复制文件到相应路径

开发工具: Autoconf:生成configue脚本 Automake:生成makefile.in

注意:安装前查看INSTALL, README

Centos7.4编译安装httpd 2.4.29

1、获取httpd 2.4.29的源代码:wget + 下载url

wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.29.tar.bz2

解压并指定到文件夹:tar xvf file -C /usr/local/src

Tar xvf /root/httpd-2.4.29.tar.bz2 -C /usr/local/src

两个小命令:

看大小:du -sh .

查找.c后缀文件:find -name “*.c”

2、安装编译工具开发包组及依赖工具:包含C/c++编译器:gcc

yum groupinstall Development tools

先查包组列表:yum grouplist 看包组信息:yum groupinfo xxx 依赖的程序先安装:APR安装 pcre安装 yum install apr-util-devel yum install pcre-devel

3、查看程序解压保存目录的文件README、INSTALL等文件

cd /usr/local/src/httpd-2.4.29 cat README INSTALL

4、目录文件夹下按步骤执行:

4.1 ==./configure ==

./configure –prefix=/apps/httpd24 –sysconfdir=/etc/httpd24
如果不设置 会存放在[/usr/local/apache2]
echo $? 表示成功 0

4.2 == make==

make -j 4 && (echo -e ‘\a’;sleep 1;echo -e ‘\a’)

4.3 ==make install ==完成复制安装

make install

4.4 启动httpd

apachectl start

设置路径

echo ‘PATH=/apps/httpd24/bin;$PATH’ > /etc/profile.d/httpd24.sh ./etc/profile.d/httpd24.sh

apachectl start

查看80端口是否启动

ss -ntl

查看网站:192.168.10.202

关闭防火墙 iptables -vnL

systemctl stop firewalld 关闭 systemctl disable firewalld 开机不启动(centos7的命令) service iptables stop chkconfig iptables off 开机不启动(centos6 的命令)

网页页面在

apps/httpd24/htdocs

vim index.html

关于作者

周小智,QQ2406962394(可加微信),相互交流技术

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/92572

赞 (1)
JacoJaco
上一篇 2018-03-17 17:27
下一篇 2018-03-17 20:32

相关推荐

  • 优云APM最佳实践: 诊断平安城市视频网性能问题

    前言: 平安城市已经是一个关系你我他的民生工程,但由于本身系统的复杂性,给运维工作带来了极大的挑战。如何保障摄像头在线率?如何在系统中找到视频系统故障的问题所在?在我们某一次项目经历中,优云APM在发现问题,定位故障等方面,起了很大作用,帮助我们顺利的定位到了系统的故障所在。 平安城市是一个特大型、综合性非常强的管理系统,不仅需要满足治安管理、城市管理、交通…

    Linux干货 2016-08-05
  • N21_第四周

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 # cp -a /etc/skel/ /home/user1/ && chmod -R 7000 /home/user…

    Linux干货 2016-08-02
  • 马哥教育网络班22期+第三周(8.22-8.28)博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。   # who|awk '{print $1}'|sort| uniq 2、取出最后登录到当前系统的用户的相关信息。   # last   # last|gr…

    Linux干货 2016-08-29
  • 用户和组

    3A安全介绍 资源分派: Authentication:认证 Authorization:授权 Accouting|Audition:审计 安全上下文 Linux安全上下文 运行中的程序:进程 (process) 以进程发起者的身份运行: root: /bin/cat mage: /bin/cat 进程所能够访问资源的权限取决于进程的运行者的身份 用户use…

    Linux干货 2016-08-08
  • redis主/从配置及基于sentinel的故障转移

    一、NoSQL基础概念: ACID:原子性、一致性、隔离性、持久性;特性:数据量大、数据变化非常大(数据增长化、流量分布变化、数据间耦合结构变化)、数据源很多; CAP、BASECAP C:多个数据节点的的数据一致;A:用户发出请求后的有限时间范围内返回结果;P:network partition,网络发生分区后,服务是否依可用;CAP理论:一个分布式系统不…

    Linux干货 2017-01-27
  • Liunx获取信息帮助与man文档章节的划分

    首先要判断命令的类型,可用 type COMMAND 来判断命令 如果显示结果为(….是 shell内嵌)即为shell内嵌命令,如需获取帮助,使用 help COMMAND 即可; 下图的例子是pwd是shell内嵌命令 内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指…

    2017-07-02