Apacheconfiguration为mpm_worker – 为什么它仍然显示为mpm_prefork?

我相信我在Ubuntu 13.10下正确configuration了Apache MPM,包括PHP-FPM和FCGI,并禁用了mod_php。 当我运行顶部时,我可以清楚地看到多个Apache(〜2-3 MB)和php(〜25-30 MB)进程在运行,随着用户/请求的增加而增加。

现在,令我困惑的是,当我用a2查询-M返回时:

prefork

或者用apachectl -V

 Server MPM: prefork threaded: no forked: yes (variable process count) 

这个可以吗? 还是我错过了一些设置?

鉴于这个问题缺乏信息,这里有一些猜测。 假设从安装了标准MPM的Ubuntu库安装Apache 2.4,看起来你只需要从prefork “切换”到worker注意:您只能select一个MPM来启动Apache,即您必须“解除”当前的MPM,然后“enmod”所需的MPM

如果是这样,则使用以下命令进行切换:

  a2dismod mpm_prefork a2enmod mpm_worker service apache2 restart 

要在运行service apache2 restart命令之前检查configuration,可以使用apache2ctl -t

还要注意:如果你没有以root身份login(你不应该这样做),那么你可能需要在sudo前面加上每一个命令行才能拥有足够的权限。