Назад | Перейти на главную страницу

«MPM не загружен», но я даже не использую mpm

Запуск Apache2 на Ubuntu Precise64 в Vagrant. Когда я пытаюсь запустить его, он говорит:

vagrant@precise64:/etc/apache2$ /etc/init.d/apache2 start
 * Starting web server apache2
 *
 * The apache2 configtest failed.
Output of config test was:
AH00534: apache2: Configuration error: No MPM loaded.
Action 'configtest' failed.
The Apache error log may have more information.

Но дело в том, что моя /etc/apache2/apache2.conf файл нигде не требует MPM! Я бы вставил его сюда, но получился бы огромный пост ...

Я попытался найти журнал ошибок, но тоже нигде не нашел. Помогите?

Редактировать: apache2 -l дает это:

vagrant@precise64:/$ apache2 -l  
Compiled in modules:             
  core.c                         
  mod_so.c                       
  mod_watchdog.c                 
  http_core.c                    
  mod_log_config.c               
  mod_logio.c                    
  mod_version.c                  
  mod_unixd.c                    
  mod_unixd.c                    

Похоже, что никакой mpm не установлен? Если MPM не установлен и в моем файле конфигурации не упоминается MPM, почему я все еще вижу эту ошибку?

Я была такая же проблема. Я случайно перезаписал /etc/apache2/apache2.conf. Чтобы исправить это, мне пришлось бежать sudo apt-get purge apache2 чтобы полностью удалить apache, а затем запустить sudo apt-get install apache2 получить оригинал apache2.conf файл обратно.

НОТА: Резервное копирование любых пользовательских файлов в /etc/apache2/sites-available перед продувкой.

apache2 -t -D DUMP_MODULES (или -M) должен предоставить вам список модулей. Вы должны увидеть worker.c, prefork.c или event.c. Используйте это, чтобы определить, какой MPM вы используете.

Посмотрите в своих файлах конфигурации, есть ли что-то подобное (если вы используете префорк MPM).

Вот пример:

<IfModule mpm_prefork_module>
StartServers          5
MinSpareServers       5
MaxSpareServers      10
MaxClients          150
MaxRequestsPerChild   0
</IfModule>

Добавьте такой блок в свой файл конфигурации, и он должен работать. Убедитесь, что apache2-mpm-prefork (или worker, или событие) правильно установлен.

Прочтите эту документацию, чтобы помочь вам выбрать (это обязательно) подходящий MPM для вашего использования: http://httpd.apache.org/docs/2.2/mpm.html