【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

相关推荐

  • redis简介

    redis是一种非关系性数据库,单进程工作模型,通常用来做KV存储,同memcached一样,所有数据加载至内存工作因此工作效率非常快,但他会将内存中的数据同步至磁盘当中,使得数据不会像memcached的一样,断电后丢失数据。 自身支持多种数据结构(此处列出常用数据结构) string:单一的kv存储 hash:支持hash计算后的存储 list:列表存储…

    2017-03-17
  • linux入门第二课

    **linux入门基础** linux 命令类别 内部命令和外部命令 首先我们可以用echo $SHELL 来查询shell 里面会显示我们当前在用的shell 上图是echo $SHELL 也可以用cat /etc/shells来查询系统里面的shell bash其实是一个文件是一个程序 存在于 /bin/bash 目录,这是真是存在的文件,是一个可以执行…

    Linux干货 2017-05-20
  • Linux软件管理(rpm,yum)

    Linux的应用程序安装提供了两中格式的软件包:一种是软件开发者直接提供的源码包;另一种是发行版厂商提供事先编译好打包的软件包;用户需要根据需要来选择何种方式安装软件,作为系统管理运维人员,要想合理应用,必须熟悉这两者之间的内在联系以及各自的特性和差异; *软件包管理工具)   — RPM软件包管理工具  — YUM软件包前端管理工具 软…

    Linux干货 2016-08-29
  • 马哥教育网络班21期第六周作业

    详细总结VIM编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加# cp /etc/rc.d/rc.sysinit /tmp vim /tmp/rc.sysinit :%s/^[[:space:]]\+/#/…

    Linux干货 2016-08-22
  • N25-第七周作业

    第七周 1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@zf ~]# fdisk /dev/sdb Command (m for help): n Command action e extended p primary partit…

    Linux干货 2017-02-24
  • Linux基础知识点(一)

    此篇博客只是记录第一周未掌握或不熟悉的知识点,用来加深印象。

    2018-03-13