无法在 Ubuntu 14.04 上使用 Apache 2.4 启用 mpm_prefork

无法在 Ubuntu 14.04 上使用 Apache 2.4 启用 mpm_prefork

我在 Ubuntu 14.04 上安装 PHP 5.4 和 Apache 2.4。Php 5.4 在 apt-get 上不可用,所以我必须从源代码安装它。我已经安装了

apache2-prefork-dev
apache2-mpm-prefork

我使用以下命令配置 PHP

./configure --with-apxs2=/usr/bin/apxs2 --with-mysql --with-curl

然后我构建并安装。我在 /etc/apache2/apache2.conf 中添加了以下几行:

LoadModule mpm_event_module /usr/lib/apache2/modules/mod_mpm_prefork.so
LoadModule php5_module  modules/libphp5.so
AddType application/x-http-php  .php

当我尝试重新启动 Apache 时出现此错误:

module mpm_event_module is already loaded, skipping

我搜索了 .conf 文件,但之前没有加载该模块。编辑:

正如@Andrew Schulman 的回答,我可以在

/etc/apache2/mods-available/mpm_event.load

当我跑步时

a2enmod mpm_event

我明白了:

Considering conflict mpm_worker for mpm_event:
Considering conflict mpm_prefork for mpm_event:
Considering conflict mpm_itk for mpm_event:

我该如何解决这个冲突?

编辑2:

我用了

a2dismod 

mpm_event_module 

并加载了 mpm_prefork_module。Apache 重新启动正常,但当我尝试运行

a2enmod mpm_prefork_module 

我明白了:

ERROR: Module mpm_prefork_module does not exist! 

这是什么意思?

答案1

您可以通过查找整个 Apache 配置来找到它:

grep -r mpm_event_module /etc/apache2

它几乎肯定位于 /etc/apache2/mods-available/mpm_event.load 中。在 Debian/Ubuntu 中,启用和禁用 Apache 模块的标准方法是运行例如

a2dismod mpm_event
a2enmod mpm_prefork

参见man a2enmod,且同样man a2enconfman a2ensite

相关内容