`

APACHE在LINUX上的编译安装

阅读更多

http://www.linux.gov.cn/netweb/mat/ApacheMenu_zh_CN/programs/configure.html

apache拥有4层结构,从核心到外层的module。而外层的module可以用通过静态和动态两种方式与apache共同工作。这也就引入下文的“动态”和“静态”两种编译安装方式:

静态编译:

编译的时候,所有的模块自己编译进httpd 这个文件中 ,启动apache的时候这些模块就已经加载进来了,可以直接来使用,而不用再httpd.conf中在LoadModule来加载,只要在 <ifmodule></ifmodule> 中来配置就可以了。

动态编译:

编译的时候,使用enable-module=shared 或者enable-modules-shared=module来动态编译。 动态显然就不编译到httpd里面去了,启动的时候根本不会加载这个模块, 而是给你一个module.so 文件。你想用,就在httpd.conf中使用 loadmodule 这个语法来加载,这个模块才有效。

区别是:

静态的模块通常在http.conf中用<ifmodule></ifmodule> 来配置,动态的要先loadmoule来加载,然后再<ifmodule></ifmodule>配置。
官方说静态的比动态的在性能方面多5%左右。

相对来说,静态的效率高些,而动态方式配置方面灵活。想想如果编译进去的C这个module你想升级或者去掉,静态方式的就只能重新编译apache了。

下面这句在apache源文件夹下运行,可以查看默认情况下apache都给你装了那些module进去:

./configure –help | grep disable

让apache日后可以动态编译和加载模块:

如果想让apache日后可以支持动态编译(DSO)更多的module,需要在初次安装时把so这个模编译到核心。

如果编译中包含任何DSO模块,则mod_so会被自动包含进核心。如果希望核心能够装载DSO,但不实际编译任何DSO模块,则需明确指定:

针对apache1.x:    –enable-module=so

针对apache2.x: –enable-so=static

apache模块的类型:

基本(B)模块默认包含,必须明确禁用;

扩展(E)/实验(X)模块默认不包含,必须明确启用。

那么,针对以上这些类型的模块,有以下几种操作方式:

–disable-MODULE
禁用MODULE模块(仅用于基本模块)
–enable-MODULE=shared
将MODULE编译为DSO(可用于所有模块)
–enable-MODULE=static
将MODULE静态连接进核心(仅用于扩展和实验模块)
–enable-mods-shared=MODULE-LIST
将MODULE-LIST中的所有模块都编译成DSO(可用于所有模块)
–enable-modules=MODULE-LIST
将MODULE-LIST静态连接进核心(可用于所有模块)

针对–enable-modules和–enable-module-shared有两个懒办法就是 most参数和all参数,分别表示“很多的”和“所有”。

例如:

mod_alias是个基本模块,不想安装的话就: –disable-alias

mod_rewrite是个扩展模块,想动态加载它:–enable-rewrite=shared,想静态加载就是:–enable-rewrite=static

想静态编译mod_alias和mod_rewrite:–enable-modules=’alias rewrite’

想动态编译mod_alias和mod_rewrite:–enable-modules-shared=’alias rewrite’

针对apache2.2.x的一些例子:

最大化静态安装apache:

./configure –prefix=/path/to/local –enable-modules=all

最大化动态安装apache:

./configure –prefix=/path/to/local –enable-mod-shared=all

静态安装rewrite、动态安装deflate以及headers

./configure –prefix=/path/to/local –enable-rewrite=static –enable-deflate=shared –enable-headers=shared

不安装基本的alais,保留以后的扩展DSO能力:

./configure –prefix=/path/to/local –enable-so=static –disable-alias

分享到:
评论

相关推荐

    linux 下apache2.4.26编译安装所需文件

    总结来说,编译安装Apache 2.4.26在Linux上需要下载并安装APR和APR-Util库,然后配置、编译和安装Apache源代码。过程中可能需要根据服务器的特定需求进行定制配置,确保服务器能够正确响应HTTP请求。这个过程虽然比...

    linux下编译安装mysql,apache,php文档

    - 在安装过程中,可以选择简体中文作为系统语言。 - 安装完成后,即可拥有一个全新的Linux环境用于后续软件的编译安装。 #### 编译安装MySQL 1. **准备安装文件:** - 从MySQL官方网站下载适用于Linux系统的...

    linux离线安装apache

    - **问题:** 在安装过程中遇到“yum锁进程”问题。 - **解决方案:** 删除锁文件。 ```bash rm -f /var/run/yum.pid ``` - **问题:** 缺少GCC和G++。 - **解决方案:** 离线安装所需的rpm包。 ```bash rpm -...

    如何使用编译方式在Linux上安装与配置Mysql Apache PHP.pdf

    使用编译方式在 Linux 上安装与配置 Mysql、Apache 和 PHP Linux 作为一种操作系统,具有完全免费、完全兼容 POSIX 1.0 标准、多用户、多任务、丰富的网络功能、可靠的安全、稳定性能、支持多种硬件平台等优点,日...

    Linux下Apache+PHP+Mysql安装与配置

    * 在安装过程中,需要注意编译过程中的错误,出现错误需要查找原因,不能继续 MAKE。 * 安装完成后,需要检查服务是否启动成功,例如检查 Apache 和 MySQL 服务是否启动成功。 总结,文章介绍了 Linux 下 Apache+...

    编译安装apache服务器

    本文档主要讲述了如何在Linux环境下通过编译的方式安装Apache服务器的过程,并介绍了为确保Apache能够成功安装所需要的几个依赖库的安装步骤。编译安装是一种相对灵活且可以高度定制化的安装方式,允许用户根据自己...

    linux apache2 编译成功

    至此,Apache2已经在你的Linux系统上成功编译并安装。你可以通过访问`http://localhost`来测试Apache是否正常工作。 值得注意的是,配置Apache时还可以根据需求调整其他参数,如设置文档根目录、启用SSL支持、配置...

    使用编译方式在Linux上安装与配置Mysql Apache PHP介绍.pdf

    在Linux上编译安装Apache,需要下载源码包,运行configure脚本来配置编译选项,然后编译和安装。通过编译安装,我们可以定制Apache的特性,如选择启用哪些模块,如mod_php、mod_rewrite等,以满足特定的Web服务需求...

    虚拟机中如何在Linux上安装和配置Apache服务器

    本文将详细介绍在 Linux 上安装和配置 Apache 服务器的步骤,并提供了详细的配置指导。 一、安装Apache服务器 在安装 Apache 服务器之前,需要下载相应的安装包,包括 httpd-2.4.3.tar.gz、apr-1.4.6.tar.gz、apr-...

    apache2 linux 安装资源

    5. **配置Apache**:在安装目录下的`conf/httpd.conf`文件中,根据需求调整服务器配置,如端口、文档根目录、模块加载等。 6. **启动与测试**:使用`/path/to/apache/bin/apachectl start`启动Apache服务器,并通过...

    apache2源代码编译所需软件

    Apache2是世界上最流行的Web服务器软件之一,其源代码编译安装可以让你自定义配置,适应特定的系统环境和需求。本教程将详细讲解如何编译安装Apache2,并介绍相关依赖软件。 首先,我们需要下载Apache2的源代码。在...

    Apache2.2 for Linux安装手册

    Apache HTTP Server 是世界上最流行的Web服务器软件之一,尤其在Linux操作系统上被广泛使用。Apache2.2是其一个重要的版本,提供了许多增强的功能和优化。在Linux环境下安装Apache2.2的步骤如下: 1. **获取安装包*...

    Linux CentOS离线环境下安装Apache所需要的完整包

    下面将详细介绍这些文件以及它们在安装过程中的作用。 1. **apr-iconv-1.2.2.tar.gz**:这是一个用于字符集转换的库,Apache HTTP服务器使用它来处理不同编码之间的转换。 APR (Apache Portable Runtime) 的一部分...

    Linux上apache的安装文件

    本文件包提供了在Linux上安装Apache所需的核心组件,包括httpd、apr、apr-util以及pcre库。接下来,我们将详细介绍这些组件以及如何在Linux系统上安装和配置Apache。 1. **httpd**: 这是Apache HTTP Server的主要...

    apache在linux环境安装

    ### Apache在Linux环境下的安装详解 #### 一、前言 Apache是一款广泛使用的Web服务器软件,它具有稳定性强、安全性高、配置灵活等优点,在Linux环境下安装Apache是很多系统管理员和开发人员的一项基本技能。本文将...

    linux 安装Apache+openssl 过程

    在安装Apache之前,先要安装apr。通常,apr的安装包可以从Apache官方网站下载。下载完成后,使用tar命令解压,进入解压后的目录,执行configure脚本指定安装路径,然后编译并安装。 2. 安装apr-util: APR-util是...

    linux下编译安装Apache.MySQL.PHP环境.pdf

    至此,你已经在Linux环境中成功编译安装了Apache、MySQL和PHP。然而,这仅适用于熟悉源代码编译和系统管理的用户。对于初学者,推荐使用预编译的软件包或自动化工具如yum、apt-get等进行安装,以简化过程并减少潜在...

    Linux下Apache安装

    为了验证Apache是否成功启动,可以在另一台机器上(如Windows系统)的浏览器地址栏输入Linux服务器的IP地址。如果看到Apache的默认欢迎页面,就表明安装成功了。 #### 五、检查动态加载模块 最后,检查`/export/...

    Linux系统服务编译安装Apache源码包

    通过以上步骤,我们就完成了在Linux系统上编译安装Apache源码包的过程。这不仅让我们能够使用最新的版本,还允许对Apache进行更深入的定制和优化,以满足特定的应用场景。在实际操作中,需要注意的是,每个步骤都...

Global site tag (gtag.js) - Google Analytics