当我尝试启动apache服务器时,我得到以下内容, 我构建了2.4.6版本并放置在本地位置。
[apacheas@twproxy1 bin]$ ./apachectl -k start
AH00534: httpd: Configuration error: More than one MPM loaded.
根据某些网站上提供的一些信息,我尝试列出可用的模块(不确定!),如下所示。
[apacheas@twproxy1 bin]$ ./httpd -l
Compiled in modules:
core.c
mod_so.c
http_core.c
event.c
可能出现什么问题?
这与openssl中最近的Heart Bleed bug有关 - 建议我们升级apache和openssl版本。 我们做了所有,但坚持上述问题/
答案 0 :(得分:31)
检查启用mods的目录中所有已启用的mod。如果您已启用List<NameValue >cars = new ArrayList<NameValue >();
,则应禁用mpm_prefork
模块。
worker
sudo a2dismod worker
答案 1 :(得分:9)
查看:/etc/httpd/conf.modules.d
您将找到一个名为00-mpm.conf
您只能取消注释这3行中的一行:
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
#LoadModule mpm_worker_module modules/mod_mpm_worker.so
#LoadModule mpm_event_module modules/mod_mpm_event.so
答案 2 :(得分:5)
在Ubuntu解决方案与上面相同但只有文件的区别:
cd /etc/apache2/mods-enabled
root@ip:/etc/apache2/mods-enabled# ll mpm_*
lrwxrwxrwx 1 root root 32 Jun 30 10:33 mpm_event.conf -> ../mods-available/mpm_event.conf
lrwxrwxrwx 1 root root 32 Jun 30 10:33 mpm_event.load -> ../mods-available/mpm_event.load
lrwxrwxrwx 1 root root 34 Jun 30 11:36 mpm_prefork.conf -> ../mods-available/mpm_prefork.conf
lrwxrwxrwx 1 root root 34 Jun 30 11:36 mpm_prefork.load -> ../mods-available/mpm_prefork.load
root@ip:/etc/apache2/mods-enabled# cat mpm_event.load
# Conflicts: mpm_worker mpm_prefork mpm_itk
#LoadModule mpm_event_module /usr/lib/apache2/modules/mod_mpm_event.so
root@ip-10-0-0-249:/etc/apache2/mods-enabled# cat mpm_prefork.load
# Conflicts: mpm_event mpm_worker mpm_itk
LoadModule mpm_prefork_module /usr/lib/apache2/modules/mod_mpm_prefork.so
即注释掉上述任何一个模块
root@ip:/etc/apache2/mods-enabled# service apache2 restart
这样做!!它对我有用!
答案 3 :(得分:2)
要在更新Apache后修复Centos 7.0下的“多个加载MPM”错误,请尝试以下操作:
sudo vim /etc/httpd/conf.modules.d/00-mpm.conf
并评论此行
#Change from
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
#To
#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
问题是正在加载多个Multi-Processing Modules,这意味着Apache无法决定应该使用哪种模型,从而导致此错误。