Linux下编译安装Apache 2.4
Linux一般会自带httpd服务,但是版本一般不是最新,性能也不是最好,生产中建议手动安装官方源码包,安装Apache官方包之前首先要停止之前的httpd服务,停止后也可以卸载之前的版本
准备工作做完,首先去官网下载Apache的源码包,http://httpd.apache.org/ 这里下载的是最新的httpd-2.4.18.tar.bz2这个包

下载之后,上传到服务器,释放:
tar -jxvf httpd-2.4..tar.bz2
进入目录:
cd httpd-2.4.
执行配置帮助命令,可以依次查看相应的帮助:
./configure --help | more
执行写入配置,其中apache24目录不用自己创建,安装过程会自动创建,后面也是一样:
./configure --prefix=/usr/apache24
到这里发现出了个错误,

提示没有APR这个组件,apr的作用就是维护相应的软件安装库,已解决相应的平台缺陷等,之前Apache老版本不会出现这个问题,所以首先安装apr,网址是:http://apr.apache.org/,这里包括apr、apr-util、apr-iconv这三个包

目前只下载前面两个安装就行,即apr和apr-util,下载好之后正式开始安装
安装apr:
$ tar -zxvf apr-1.5..tar.gz
$ cd apr-1.5.
$ ./configure --prefix=/usr/local/apr
$ make
$ make install
上面的配置参数--prefix就是指定安装目录,执行没问题稍等一会就安装好了,
继续安装apr-util:
$ tar -zxvf apr-util-1.5..tar.gz
$ cd apr-util-1.5.
$ ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
$ make
$ make install
上面配置参数的--with-apr表示apr-util安装需要依赖apr,所以指定apr的安装目录,到这里apr-util也安装完成了
然后配置依赖安装Apache:
./configure --prefix=/usr/apache24 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
没想到又出错了,看看错误提示:

可以看出,少了程序pcre,需要去http://pcre.org/ 获取,那么现在应该访问这个网站下载,进去网站之后很容易就找到下载链接:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

这里下载pcre-8.38.zip这个版本即可,其他的也是没问题的
下载成功,安装pcre:
$ unzip pcre-8.38.zip
$ cd pcre-8.38
$ ./configure --prefix=/usr/local/pcre
$ make
$ make install
到现在,pcre也安装成功了
现在开始安装apache,进入源码包目录,执行命令:
$ ./configure --prefix=/usr/apache24 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
$ make
$ make install
编译过程时间有点长,耐心等待一下,执行完毕,Apache就安装完成了,
注意:如果make中出现错误,必须执行make clean清除所有缓存文件后继续,如果是在make install过程中出现错误,必须执行make clean并且删除生成了安装目录,然后重新执行make和make install
安装完成之后删除原来释放出来的那些目录即可,如果以后要卸载,只要不忘记安装目录,直接删除安装目录就可以,也不会出现任何残留垃圾
原来Apache的源码包下有个INSTALL文本文件,可以打开看一下:

这里可以看到最基本的安装和启动方法,当然,更多的参数的配置还需要参考安装目录下的帮助文档或者官方在线文档,这里就不详细说了
现在可以进入启动Apache httpd服务了:
/usr/apache24/bin/apachectl start
停止服务在安装目录下使用:
bin/apachectl stop
现在访问对应的ip地址,看到It works!即表示安装成功

服务器的默认根目录在/usr/apache24/htdocs/
需要注意,第一次如果启动出现错误,要关闭系统自带的httpd服务,然后用vim打开conf/httpd.conf文件找到#ServerName www.example.com:80
把这行代码前面的#去掉,保存退出,然后重新启动Apache就可以正常运行了
Linux下编译安装Apache 2.4的更多相关文章
- Linux下编译安装Apache Http Server
Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...
- Linux下编译安装Apache及模块
Apache是时下最流行的Webserver软件之中的一个,支持多平台,可高速搭建web服务,并且稳定可靠.并可通过简单的API扩充.就能够集成PHP/Python等语言解释器. 文章这里解说怎样在l ...
- linux下编译安装apache
在linux(CentOS6.5)上安装Apache,要首先确保以下程序事先安装 apr:The mission of the Apache Portable Runtime (APR) projec ...
- Linux下编译安装Apache报APR not found错误的解决办法
我在编译安装完Nginx.MySQL和PHP(见之前一篇博客:LNMP环境搭建详细教程)之后,进行apache的编译安装: cd /usr/local/src wget http:.tar.gz ta ...
- linux中编译安装Apache、PHP、MySQL(上)
1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...
- 在linux下手动安装 apache, php, mysql--终极版
在linux下手动安装 apache, php, mysql: 参考: http://www.cnblogs.com/lufangtao/archive/2012/12/30/2839679.html ...
- CentOS 下编译安装Apache
CentOS 下编译安装Apache 卸载原有的apache 首先从 http://httpd.apache.or 下载apache源码包httpd-2.4.4.tar.gz然后从 http://ap ...
- (转)Linux下编译安装log4cxx
Linux下编译安装log4cxx 一个项目的服务器端在Linux平台下,用到了开源日志库log4cxx,这个库是apache项目的一个子库.功能很不错.下面记录下它的编译和安装过程. log4cxx ...
- LINUX下编译安装PHP各种报错大集合
本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...
随机推荐
- UML类图之类与类的关系
类与类之间的关系是在需求分析阶段确定的. 类与类之间的关系.有一般化关系.关联关系.聚合关系.合成关系和依赖关系. 1.一般化关系表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关 ...
- Linux服务器管理: 系统的定时任务crond
cornd 是定时任务的守护进程 这个服务系统是默认启动的 [root@localhost/]#/etc/init.d/crond strat|restart|stop [root@localhos ...
- hdu5024 Wang Xifeng's Little Plot (水
http://acm.hdu.edu.cn/showproblem.php?pid=5024 网络赛 Wang Xifeng's Little Plot Time Limit: 2000/1000 M ...
- 我常用的eclipse快捷键
重写父类方法:右键点击, 进source,进override/implement 单行注释(或多行注释) Ctrl+/ 文档注释:shift+alt+J 整块注释: Ctrl+shift+/ 取消整块 ...
- 让我们一起学Node.js-文章列表
新浪的博客最近不给力,只好在博客园落个窝.至此之后,技术随笔会在博客园以及新浪的博客上同时更新,如果新浪给力的话~~~ 如果你想看先前新浪博客上分享的技术,请点击此处 忘尘子新浪博客! 我是拜读了朴灵 ...
- PHP 线程安全与非线程安全版本的区别深入解析
Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍 ...
- php缓存技术总结
缓存是指临时文件交换区,电脑把最常用的文件从存储器里提出来临时放在缓存里,就像把工具和材料搬上工作台一样,这样会比用时现去仓库取更方便.因为缓存往往使用的是RAM(断电即掉的非永久储存), ...
- spring缓存Ehcache(入门2)
使用Ehcache缓存工具类. 一.由于使用了maven,所以需要引入依赖包: <dependency> <groupId>net.sf.ehcache</groupId ...
- PHP基础之 继承(一)
========================================= * 继承 extends *============================ ...
- 被拒原因——You have selected the Kids Category for your app, but it does not include the required privacy policy. Please update your app metadata to include a privacy policy URL and ensure that the URL yo
对于一些孩子类的应用,必须加上隐私政策网址(URL),直接截个图吧! 就是你上架的时候,填写应用信息,里面有一个隐私政策网址(URL),望后者不掉坑里了!!!