7

我最近从源代码安装了 Apache/2.4.6。目前启用的 MPM 模块是 mpm_event_module。我想启用 prefork mpm,但不确定从哪里开始。如果使用 yum 安装 apache,我知道从 /etc/sysconfig/httpd 更改 mpm 模块。但就我而言,由于 installinon 来自源代码,我不能不这样做。我尝试使用 './configure --prefix=/usr/local/apache --enable-module=prefork' 重新编译 apche,但 mpm 仍然是 mpm_event_module。显然,问题在于将 prefork 定义为 mpm。

我还可以看到安装目录有 prefork.c 模块。必须有一种方法将其定义为 mpm。

有人可以帮忙吗。

4

1 回答 1

3

在 2.4 之前的版本中,您无法在运行时更改二进制 Apache2 安装的 MPM。

--with-mpm=MODULE NAME您必须使用配置脚本的命令行选项使用所需的 MPM 编译 Apache 。要更改 MPM,必须重建二进制文件。

您可以通过执行apache2 -lhttpd -l在命令行上确定当前使用哪个 MPM Apache2 构建。

简短但非常清晰的文档:

http://httpd.apache.org/docs/2.2/mpm.html

在 2.4 版中,您还可以将 MPM 构建为动态模块,从而允许在运行时更改 MPM。

http://httpd.apache.org/docs/2.4/mpm.html#dynamic

于 2013-09-04T09:17:35.337 回答