在安装apache之前需要准备一些必要的依赖包

gcc安装:

#yum install -y gcc

gcc-c++安装:

#yum install gcc-c++ 

apr安装:

下载包:apr-1.5.2.tar.gz,然后tar解压缩到任意目录下.然后进入解压缩后的目录下进行如下编译:

# ./configure --prefix=/usr/local/apr
# make
# make install 

apr-util安装: 

下载包:apr-util-1.5.4,同样tar解压缩到任意目录下,然后进入解压缩后的目录下进行编译:

#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
#make
#make install
pcre安装:

下载包: pcre-8.38.zip ,进行编译安装:

#./configure --prefix=/usr/local/pcre
#make
#make install

注意:喜欢追新的朋友要注意,如果你下载pcre2的话,apache2.4会出现编译不通过.至于如何解决这个问题.还没有来得及研究.建议不要使用pcre2.

以上内容是对于apache2.4安装时所需要的必要依赖包,接下来便是apache2.4的正式编译安装过程。

首先去官网下载一个 httpd-2.4.12.tar.gz 源码包;

然后将它解压缩到你指定的目录下,进行解压缩,代码如下:

#tar -zxvf httpd-2.4.12.tar.gz 

解压缩后会在这个源码包的同级目录下生成一个同名的文件夹,然后进入这个文件夹进行编译:

#./configure --prefix=/data/apache24 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre
#make
#make install

上面的代码中需要注意以下的配置项:

--with-apr=

--with-apr-util=

--with-pcre=

这三个分别是apache安装时所需要的依赖包的路径,所以这三个配置后面跟的就是之前我们所下载的依赖包的位置;

到此我们的 apache2.4 便全部安装完毕了.  如图:

配置过程:

如上图,先进入 conf 目录下,修改 httpd.conf 文件,先来确定你要使用的端口,如下图:

再来修改你的服务名称,如下图:

最后进入bin目录启动apache,启动命令如下:

#./apachectl start
#./apachectl stop
#./apachectl restart

上面这种启动方式仅限于你当前正处于这个bin目录下,假如你没有在bin目录下的话,你可以这样启动:

# /data/apache24/bin/apachectl stop
# /data/apache24/bin/apachectl start
# /data/apache24/bin/apachectl restart 

而实际上最好的启动方式就是让它开机启动,那要怎么配置?

步骤如下:

先将你安装的apache启动服务复制到系统启动目录中,如下:

#cp /data/apache24/bin/apachectl /etc/rc.d/init.d/httpd 

然后用 vi 操作它,增加一些信息,如下:

#vi httpd

接下来将这个httpd新启动脚本配置到启动服务中,如下:

#chkconfig --add httpd 

这样就配置好了,我们来查看一下是否多了一个httpd服务,如图:

以后,我们每次启动服务器时,这个apache就会自动启动了;

如果我们需要停掉的话,也不再需要像上两个例子那么麻烦了,我们可以处在任何位置时都能够进行apache的启动停止操作了,代码如下:

# service httpd restart
# service httpd start
# service httpd stop

总结:再有经验的人也避免不了在安装的过程中遇到麻烦,下面就把遇到的一些典型问题公布一下:

错误1:checking for APR... configure: error: the --with-apr parameter is incorrect. It must specify an install prefix, a build directory, or an apr-config file.

解决方案:

这是在安装apache过程中遇到的问题,从错误信息中明确的可以知道,你在安装apache之前缺少了apr包,而apache在编译时是需要你指定这个apr包所在的目录才行的.

所以下载个apr包就ok了。安装方法看最前面;

错误2:configure: error: no acceptable C compiler found in $PATH

解决方案:

这个不用说就是缺少能够执行C语言编译的组件,所以你需要下载 gcc 和 gcc-c++。

Linux 编译安装 apache 2.4的更多相关文章

  1. Linux编译安装Apache+PHP

    Linux编译安装Apache+PHP 来自:自学it网,http://www.zixue.it/. 1]编译安装Apache+PHP 1.安装程序依赖库和开发环境   为了省事把所需要的库文件全都安 ...

  2. linux编译安装Apache

    1 前言 编译安装Apache HTTP Server,目前最新的版本为2.4.41,做好apr,apr-util,pcre的安装后编译安装即可. 2 准备工作 三个:apr,apr-util,pcr ...

  3. suse linux 编译安装Apache时报“APR NOT FOUND”的解决方法

    今日编译apache时出错: #./configure --prefix……检查编辑环境时出现: checking for APR... noconfigure: error: APR not fou ...

  4. linux 编译安装apache

    1.下载apache.安装apache #wget http://apache.etoak.com//httpd/httpd-2.4.4.tar.gz #tar zxvf httpd-2.4..4.t ...

  5. Linux 通过编译安装apache服务以及配置

    Linux 编译安装apache服务 一.安装 1.通过编译安装,首先需要下载源代码安装包 apache下载链接:http://httpd.apache.org/download.cgi 2.解开源代 ...

  6. Linux下编译安装Apache Http Server

    Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...

  7. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  8. linux编译安装php apache mysql (已试过)

    阅读目录 (全部使用源码安装方式,先安装mysql,然后是apache,再是php,这样好像能防止挺多问题的,期间出现问题基本是依赖没有或者版本不对) 1.简介 2.安装apache 2.1.yum方 ...

  9. Linux学习之编译安装apache

    疯狂吐槽腾某云..编译安装apache折腾了一下午..还是我不太熟练. 首先要先准备好安装apache的三个依赖包以及apache包.(一定要准备好!!折腾了一下午的小白握拳!!) -rw-r--r- ...

随机推荐

  1. iOS模拟器分辨率的问题(转载)

    转载地址:http://justsee.iteye.com/blog/2123545   不积跬步 无以至千里 不积小流 无以成江海   博客 微博 相册 收藏 留言 关于我     ios8/sdk ...

  2. ajax传递json数据,springmvc后台就收json数据

    1.ajax数据的封装 var json = {"token":token};//封装json数据 $.ajax({ url:'', data:JSON.stringify(jso ...

  3. C# Winform中DataGridView的DataGridViewCheckBoxColumn CheckBox选中判断

    1.DataGridViewCheckBoxColumn CheckBox是否选中 在判断DataGridView中CheckBox选中列的时候,用DataGridViewRow.Cells[0].F ...

  4. js中:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  5. pygame实现的黑白块游戏

    运行时需要pygame库. 下载地址:http://files.cnblogs.com/files/zzrom/white.zip 程序截图:

  6. C++中explicit

    [explicit] 1.用于抑制隐式转换,即: X x = ; // error X x(); // ok 2.只对一个实参的构造函数有效,但是,可以用多有多个实参的构造函数,目前没有意义: cla ...

  7. MFC 多线程

    MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息   队列和消息循环. 工作者线程没有消息机制,通 ...

  8. Jquery 中 $('obj').attr('checked',true)失效的几种解决方案

    转载自:搜狐博客 大拙无为 1.$('obj').prop('checked',true) 2. $(':checkbox').each(function(){ this.checked=true; ...

  9. javascript中遍历EL表达式List集合中的值

    http://www.cnblogs.com/limeiky/p/6002900.html

  10. 利用sql命令把结果集输出到文件

    利用sql命令把结果集输出到文件 红色部分的三条命令完成把结果集输出到文件!! [root@test root]# psql -hlocalhost -Utest testWelcome to psq ...