Где я могу получить информацию о том, какой MPM Apache использует в моей системе Linux?
Как найти то, что использует MPM-модель Apache в Linux (рабочий, prefork или event)
Ответ 1
Вы можете увидеть это, проверив, какие модули скомпилированы с Apache.
См. вывод следующей команды:
# httpd -l
Оттуда найдите prefork.c
.
Ответ 2
httpd -V
тогда найдите строку Server MPM
.
Пример:
# httpd -V
Server version: Apache/2.2.15 (Unix)
Server built: Aug 2 2013 08:02:15
Server Module Magic Number: 20051115:25
Server loaded: APR 1.3.9, APR-Util 1.3.9
Compiled using: APR 1.3.9, APR-Util 1.3.9
Architecture: 64-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
Ответ 3
заметил, что в предыдущих ответах не упоминается apachectl
!
[dlam @some-ubuntu-box ~] $apachectl -V | grep -i mpm
Сервер MPM: событие
-
[dlam @some-fedora-box: ~] $httpd -V | grep -i mpm
Сервер MPM: Prefork
Ответ 4
В Ubuntu 14.04
a2query -M
Сообщает event
, prefork
, worker
Вы можете изменить его, добавив символические ссылки для mpm_<chosen>
от mods-available
до mods-enabled
в /etc/apache2
.
За один раз разрешено только одно.
Ответ 5
Если это linux, по умолчанию он должен быть по умолчанию. Прочтите здесь для получения дополнительной информации об apache mpm.