Apache 2.2.32编译安装

Apache 编译安装
  apache 官网下载地址: http://www.apache.org/dyn/closer.cgi 你也可以使用下
面的地址下载。实际上,我们所谓的
apache ,真正的名字叫 httpd
下载:
# cd /usr/local/src/
# wget http://mirrors.sohu.com/apache/httpd-2.2.32.tar.bz2
解压 :
# tar jvxf httpd-2.2.32.tar.bz2
配置编译参数 :
# cd httpd-2.2.24
# ./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre
--prefix
指定安装到哪里, --enable-so 表示启用 DSO --enable-deflate=shared 表示动态
共享的方式编译
deflate 模块,后面的参数同理。既然可以动态共享当然也可以用静态的方
5
式编译 deflate 模块。那什么是动态共享,什么是静态? apache 编译安装完成后会生成一个
核心的二进制可执行文件叫做
httpd ,这个文件作为核心文件,提供服务时就是它在处理用
户的请求,但是有一些功能,比如这里提到的
expires 就是配置静态文件(图片)过期时间
的,也就是说图片可以在用户浏览器的临时缓存目录中缓存多久。这些功能是作为
httpd
一个扩展模块来工作的,那么这种扩展模块有两种存在的方式,一种是直接在编译的时候和
httpd 文件拧到一起,组成一个体积大的文件,这种叫做静态。而另外一种方式是,扩展模
块作为一个独立的文件存在,只有在使用这个模块时再去调用它,这种叫做动态共享。两种
方式中,动态的好处是,核心文件
httpd 比较小,模块随时用随时加载,耗费内存相对较少。
而静态的优势是,在服务启动时,会把所有模块加载,用到时很快就执行,效率较高。我还
是比较倾向用动态。如果
./configure 这一步你出现了这样的错误 :
error: mod_deflate has been requested but can not be built due to prerequisite failures
解决办法是 :
# yum install -y zlib-devel
为了避免在 make 的时候出现错误,所以最好是提前先安装好一些库文件 :
# yum install -y pcre pcre-devel apr apr-devel
编译和安装:
# make
# make install
以上两个步骤都可以使用 “echo $?” 来检查是否正确执行,否则需要根据错误提示去解决
问题。

你可能感兴趣的:(Linux)