今天来总结一下在Linux中软件安装,通常我们应该知道,安装软件有两种方法:一种是软件包的安装,也就是rpm包的安装,就是指这些软件包都是 已经编译好的二进制rpm包,我们通过rpm安装工具和yum安装工具就可以直接安装了。另一种则是源代码安装,这种软件安装就是指它只有源代码,没有经 过编译的二进制,需要通过手动去编译安装的。

rpm包是别人所编译好的软件包,比如说编译好的rpm包没有某个功能,也我们又想用,那我们就得自去手动下载源代码来自行安装了,自定义去安装程序包,这个是我们要撑握的。

下面我们就来说说源代码编译安装httpd:
   操作系统:CentOS release 6.4 x86_64
   安装前提:GCC、Develoment Tools、Server Platform Development  
   安装的软件包:httpd-2.2.25.tar.bz2

首先我们先查看一下系统中有没有安装好的httpd,rmp -q httpd就可以查看到,如果有我们就先卸载,rpm -e httpd就可以卸载,如果没有那就安装。

以安装httpd-2.2.25源码的软件包为例,我们要检查系统中需要的安装环境,yum
grouplist可以查看InstalledGroups里有没有Server Platform Development和Development
tools这两项,然后再gcc -v查看一下gcc编译器有没有安装好,做好这些工作那我们就去下载所需要安装的源代码软件包了
httpd-2.2.25.tar.bz2、这个我从我们的教室的服务器上下载好了、直接get下载到本地就OK了,下载好我们就开始安装了。

安装httpd-2.2.25.tar.bz2源码软件包的步骤:
   解压软件包到本地:
   # tar xf httpd-2.2.25.tar.bz2

cd到解压好的目录中:
   # cdhttpd-2.2.25

在这里我们可以看到解压的文件中生成了一个configure的文件,我们可以./configure --help看看帮助文档,这里就不看了,继续下一步

./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so
   --prefix=/usr/local/httpd  :这个是指定我们安装的路径
   --sysconfdir=/etc/httpd :这个是指定的配置文件路径
   --enable-so :这个是指允许模块化使用
   这样我们回车就开始了,程序比较大,可能时间比较长,耐心等待吧.....

编译完之后我们开始执行make命令了,这个也比较久,等吧......

make完了就开始执行make install真正开始执行安装了;

好了,安装完之后我们进到安装目录看一下生成的文件:/usr/local/httpd  
 在bin目录生成一个叫ahachectl的脚本,我们直接在命令行中输入ahachectl,系统说找不到这个命令,因此我们要配置一下PATH环境
变量,所以我们就在/etc/profile.d/目录下建一个httpd.sh的文件,如下:

# vim /etc/profile.d/httpd.sh
   PATH=/usr/local/httpd/bin:$PATH  
   export PATH

保存退出即可!

我们echo $PATH看看有没有这个路径了

看!没有、那是系统还没有识别,要配置文件生效那我们就得让系统重读配置文件了:
   # . /etc/profile.d/httpd.sh

再echo $PATH就看到我们刚才写的那个路径了;

如果不配置环境变量那我们每次启动就都得写全完整路径了:如
   # /usr/local/httpd/bin/apachectl start

配置完环境变量和重读配置文件后我们就可以直接启动了。
   # apachectl start

netstat -tnl:用这个命令我们查看一下是不是已经监听了80端口:

再网页测试一下!ifconfig查看一下虚拟机的IP地址:

这样、我们的httpd源码安装就完成了!

再来看看/usr/local/httpd下的include文件、这里存放的全是头文件,为了让系统可以通过/usr/include/这个路径也能找到我们的头文件、那我们就要做个链接到这个/usr/include这时来了;
   输出头文件给系统:
   ln -sv /usr/local/httpd/include /usr/include/httpd

同样、我们也要输出库文件,在/etc/ld.so.conf.d/目录下创建一个httpd.conf的文件:
   # vim /etc/ld.so.conf.d/httd.conf
   /usr/local/httpd/lib

保存退出,再让系统重新生成库文件路径缓存:
   # ldconfig -v

最后再输出man帮助文档,编辑/etc/man.config:
   # vim /etc/man.comfig
   在后面加上一行:
   MANPATH /usr/local/httpd/man  保存退出即可!

结束:

大概的安装过程就是这样,如有什么不妥、万望指出、不胜感激、人无完人、有做得不到之处或错误的地方希望多多提点、在此小弟先感谢你的关注了!

[转载]http://tanxw.blog.51cto.com/4309543/1362910

CentOS 6.4源码编译安装httpd并启动测试的更多相关文章

  1. CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境

    CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境 什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/ ...

  2. CentOS 7.4 源码编译安装 Redis

    一.CentOS 7.4  源码编译安装 Redis 1.下载源码并解压 wget http://download.redis.io/releases/redis-4.0.10.tar.gz tar ...

  3. centos 6.5源码编译安装subversion 1.8.10

    一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...

  4. Linux源码编译安装httpd

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

  5. Centos 7.5源码编译安装zabbix4.0报fatal error: mysql.h: No such file or directory

    系统环境:CentOS 7.5是最小化安装的 编译信息 编译选项: root@Server01 zabbix-]# ./configure --prefix=/usr/share/applicatio ...

  6. nginx在centos 7中源码编译安装【添加grpc的支持】

    安装依赖软件 1.安装编译工具gcc gcc是一个开源编译器集合,用于处理各种各样的语言:C.C++.Java.Ada等,在linux世界中是最通用的编译器,支持大量处理器:x86.AMD64.Pow ...

  7. centos 下nginx源码编译安装

    1.下载nginx 进入nginx官网下载nginx的稳定版本,我下载的是1.10.3. 下载:wget http://nginx.org/download/nginx-1.10.3.tar.gz 解 ...

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

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

  9. centos 7 下 rabbitmq 3.8.0 & erlang 22.1 源码编译安装

    centos 7 下 rabbitmq 3.8.0 & erlang 22.1 源码编译安装 安装前请检查好erlang和rabbitmq版本是否相匹配参考:RabbitMQ Erlang V ...

随机推荐

  1. JavaEE(9) - Session EJB的生命周期、事务及拦截器

    1. SessionBean的生命周期 无状态Session Bean: 不存在状态-->待命状态-->被销毁状态 不存在状态-->待命状态: 1)通过构造器创建EJB实例 2)执行 ...

  2. Node.js 开发指南笔记

    第一章:node简介 介绍了node是什么:node.js是一个让javascript运行在服务器端的开发平台, node能做些什么:[书上的] 具有复杂逻辑的网站 基于社交网络的大规模Web应用 W ...

  3. JMeter怎么使用代理服务器

    一.JMeter有一个内置的代理服务器,主要用户使用浏览器录制脚本,在左侧的WorkBench中添加HTTP Proxy Server即可, 其中port表示代理服务器段口号, URL Pattern ...

  4. H264 编解码器架构简单

    看完后H264/AVC 编解码器演示,头脑是刚刚离开以下三个: 1.H264并且不明白如何指定的编解码器来实现,仅定义了一个编码视频位流的语法.和比特流进行解码,这与MPEG 类似. 2.H264而一 ...

  5. [置顶] Spring中DI设置器注入

    Java的反射机制可以说是在Spring中发挥的淋漓尽致,下面要看的代码就是通过反射机制来实现向一个类注入其实际依赖的类型,这个过程的实现会交由Spring容器来帮我们完成. JavaBean中针对属 ...

  6. linux_coom _ Linux文件比较,文本文件的交集、差集与求差

    交集和差集操作在集合论相关的数学课上经常用到,不过,在Linux下 对文本进行类似的操作在某些情况下也很有用. comm命令 comm命令可以用于两个文件之间的 比较,它有一些选项可以用来调整输出,以 ...

  7. Angularjs -- 核心概念

     angularjs旨在减轻使用AJAX开发应用程序的复杂度,使得程序的创建.測试.扩展和维护变得easy.以下是angularjs中的一些核心概念. 1. client模板      多页面的应用通 ...

  8. MD5处理图片加密算法

    Android MD5加密算与J2SE平台一模一样,由于Android 平台支持 java.security.MessageDigest这个包.实际上与J2SE平台一模一样. 首先: 输入一个Stri ...

  9. Unix命令操作

    基本命令 [ man 查看 ]--万能命令 1.ls 列出文件 (-al) 2.cd 转换目录 3.mkdir 建立新目录 4.cp 拷贝文件 (-R) 5.rm 删除文件 (-rf) 6.mv 移动 ...

  10. SQL2005性能分析一些细节功能你是否有用到?(三)

    原文:SQL2005性能分析一些细节功能你是否有用到?(三) 继上篇: SQL2005性能分析一些细节功能你是否有用到?(二) 第一: SET STATISTICS PROFILE ON 当我们比较查 ...