【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

相关推荐

  • Linux 救援模式初步运用详解

    Linux救援模式初步运用 背景: 在运用Linux时会出现一些误操作,导致系统无法正常使用,比如删除了某个重要依赖库,或者删除了rpm等等。在这里记录下具体的操作步骤,供以后参考。 意义: 学会在使用Linux系统出现误删除系统重要文件时,能使用救援模式来恢复系统。 案例详解: 当我们删除了Linux系统重要库文件时,该如何恢复,比如在这里我们删除/lib…

    2017-07-29
  • 用户、组及文件相关的一些命令

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。 cp -r /etc/skel /home/tuser1,因为是目录文件所以要有-r ls -ld /etc/skel chmod 000 -R /home/tuser1 ls -al /home/tuser1/ 2、编辑/…

    2017-07-23
  • linux流程控制if,for,case,while

     Shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for、while和until。while循环和for循环属于“当型循环”,而until属于“直到型循环”。循环控制符:break和continue控制流程转向。 选择执行:           …

    Linux干货 2017-03-25
  • 学习宣言

    人所缺乏的不是才干而是志向,不是成功的能力而是勤劳的意志。

    Linux干货 2016-10-30
  • 第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel /home/tuser1 ]# chmod -R 700 /home/tuser1/ 2、编辑/etc/group文件,添加组hadoop ~]# echo "hadoop:…

    Linux干货 2016-12-14
  • init中的服务故障如何排除

    我们假设ypbind出故障 首先我们设 ypbind服务开机启动 chkconfig yubind on 然后查看服务 chkconfig –list    默认是2345启动   然后更改这个脚本,里面寄一个长期的休眠时间,模仿为错误 sleep 休眠时间 然后重新启动,看看系统如何报错。 然后系统等到要启动该服务的时候回一…

    2017-07-22