Я устанавливаю PHP 5.4 с Apache 2.4 на Ubuntu 14.04. 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!
Что это означает?
Вы можете найти его, просмотрев всю конфигурацию 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 a2enconf
и man a2ensite
.