相信大家大多都听过linux 的编译安装,但它到底是怎么把源代码变为自己电脑里可以应用的软件哪?今天,小编就以httpd 为例详细讲解一下。

什么是编译安装——编译:将源代码变为机器可执行的代码文件。安装:将可执行文件安装到操作系统里,才可以使用。

一、下载httpd最新版本的源码包

(1)如果电脑里有老版本的情况下,rpm -qi httpd 查看详细信息,里边有这个命令下载的官网,没有老版本就去官网查找。

(2)去官网下载最新版本(自己想要的版本)(一般在downloads下)

(3)rz上传到linux ,并解压包 tar -xf  httpd-2.4.27.tar.bz2

二、查看INSTALL、README 这些帮助信息

进入cd httpd-2.4.27/

查询 cat INSTALL,里边有简单的安装过程,和一些例子

查询 cat README,(what is it ?)里边有一些Apache 的功能介绍

三、configure脚本(检测当前编译环境)

(1)./configure --help 查询这个脚本的用法,

--prefix=PREFIX  指定默认安装总目录, 默认为/usr/local/

--sysconfdir=/PATH 配置文件安装位置,默认就安装到指定安装总目录的下面

Optional Features:  需要什么功能

--disable-FEATURE 关闭某些功能

--enable-FEATURE 开启某些功能

(2)下面我们就来执行这个脚本,添加一些简单的设置

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

① 首次安装,会提示出一些错误,因为有些包没有安装

② 我们只需按照提示的错误,把需要的都安装上去(直到没有提示错误)

先查询缺少的 yum search apr-devel(一般关于开发的都叫 devel)

再安装 yum -y install apr-devel

中间会提示一个,没有C编译工具,缺少gcc的错误,这时候,我们需要下一个包组Development Tools

yum -y groupinstall "Development Tools"

③ configure脚本完全执行成功(多了一个Makefile)没有Makefile ,不能下面make过程

四、make    和    make install 编译

make 编译后,多了很多.o .lo 文件 (二进制文件),在此之前的工作,任何用户都能做,并且都在httpd-2.4.27 这个目录下进行

make install 安装到指定位置,只有root 能做,

安装完毕

五、启动服务 

(1)netstat -ntl  查看本地监听端口,有没有开启80端口

如果没有开启, service httpd start 开启80端口

(2)设置防火墙,因为防火墙组织了80端口

  iptables -vL  查看防火墙策略,防火墙阻止,可以关闭防火墙

  systemctl status firewalld.service 查看当前防火墙状态(只有centos 7 中有)

    或 systemctl is-active firewalld.service  查看当前防火墙状态

  systemctl stop firewalld.service 暂时关闭防火墙(下次开机会在开启)

  systemctl is-enabled firewalld.service  查看开机时是否开启防火墙

  systemctl disable firewalld.service  设置开机时不开启防火墙

如果是centos 6 以下的较低版本

  service iptables stop 关闭防火墙

  chkconfig httpd off 设置开机时不开启防火墙

(3)如果是安装新版本,需现将旧版本卸载 rpm -e httpd (rpm -qf `which httpd`查询当前版本)

(4)/app/apache24/bin/apachectl start  开启服务

就此服务开启成功!!!

/app/apache24/bin/apachectl stop 可以关闭服务

六、安装后的配置

(1)设置PATH   export PATH=$PATH:/app/apache24/bin/

  设置后,可以 apachectl start 开启服务

         apachectl stop 关闭服务

(2)导入帮助手册man

  vim /etc/man_db.conf

  加入一行 MANDATORY_MANPATH                       /app/apache24/man

就可以man apachectl

到此就完成所有工作了!!!

希望对大家有帮助,有什么错误请告诉我~

linux http服务源码编译安装详解的更多相关文章

  1. apache源码编译安装详解

    查看是否安装 rpm -qa httpd        如果已安装,则卸载:rpm -e 卸载  --nodeps 不考虑意外        下载 wget http://mirrors.sohu.c ...

  2. Linux环境PostgreSQL源码编译安装

    Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...

  3. 在Linux下用源码编译安装apache2

    Linux下安装一个软件,最好去看下它的官方guide,apache2.4的安装安装guide 0. installation guide http://httpd.apache.org/docs/2 ...

  4. linux下如何源码编译安装vim

    1. 获取源码 git clone https://github.com/vim/vim.git ~/vim cd ~/vim 2. 配置 ./configure --prefix=/home/jel ...

  5. Linux 从源码编译安装 OpenSSH

    https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...

  6. Linux源码编译安装httpd

    Linux安装软件采用源码编译安装灵活自由,适用于不同平台,维护也十分方便. 源码编译的安装方式一般由3个步骤组成: 1.配置(configure) 2.编译(make) 3.安装(make inst ...

  7. Httpd服务进阶知识-LAMP源码编译安装

    Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理  ...

  8. Linux下源码编译安装rpy2

    R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...

  9. linux源码编译安装OpenCV

    为了尽可能保证OpenCV的特性,使用OpenCV源码编译安装在linux上.先从安装其依赖项开始,以ubuntu 14.04.X为例讲解在Linux上源码编译安装OpenCV,其他linux版本可以 ...

随机推荐

  1. TJOI2016 && HEOI2016 解题报告

    好吧我来写一波题解骗访问量QAQ 题目可以在cogs提交 bzoj4551~4456 D1T1 tree 树剖可做,然而有更简单的做法,10min搞定 维护一个并查集,时光倒流,如果当前点没有标记就把 ...

  2. Xcode_5

    Xcode_5  Objective-C进行IOS7编程   我个人的经验是,如果之前有过编程基础(无论是C.C++还是Java),那么<Objective-C基础教程>(图灵程序设计丛书 ...

  3. XCODE快捷键和功能汇总篇(不断更新)

    快捷键 command+b(build) 编译 command+r(run) 运行编译后程序鼠标放在代码元素上,按command然后单击,可以看到元素的属性

  4. UVa 11732 (Tire树) &quot;strcmp()&quot; Anyone?

    这道题也是卡了挺久的. 给出一个字符串比较的算法,有n个字符串两两比较一次,问一共会有多少次比较. 因为节点会很多,所以Tire树采用了左儿子右兄弟的表示法来节省空间. 假设两个不相等的字符串的最长公 ...

  5. HDU4289 Control 最大流

    经典题,求去掉若干个点,使得两个点不在连通,总价值最少 所以拆点最小割,除了拆点边,流量都为无穷,拆点边是流量为价值 #include <iostream> #include <cs ...

  6. Log4Net配置注意点

    log4Net的配置文章一搜一大把,配置使用还是有一些点花费了很多时间,这里整理一下,添上坑,让Developer走的更稳. 编程式配置路径 新建一个配置文件,通过写代码来动态加载log4Net的配置 ...

  7. yum no key

    http://serverfault.com/questions/525958/redhat-yum-install-gpg-key-retrieval-failed

  8. JSP 页面传值方法总结(转)

    原文地址:http://www.cnblogs.com/java-class/p/6358964.html 阅读目录 1. URL 链接后追加参数 2. Form 3. 设置 Cookie 4. 设置 ...

  9. 初识大数据(二. Hadoop是什么)

    hadoop是一个由Apache基金会所发布的用于大规模集群上的分布式系统并行编程基础框架.目前已经是大数据领域最流行的开发架构.并且已经从HDFS.MapReduce.Hbase三大核心组件成长为一 ...

  10. JavaScript 数据类型检测总结

    JavaScript 数据类型检测总结 原文:https://blog.csdn.net/q3254421/article/details/85483462 在js中,有四种用于检测数据类型的方式,分 ...