Я использую Apache 2.4 на моем сервере. Мои сценарии используют много команд system()
и они требуют работы в одном режиме процесса.
Когда я запускаю apache, используя команду:
apachetctl -X
(обычно это режим отладки, который работает как один процесс, если я не ошибаюсь), он работает нормально. Однако, если я запускаю Apache как системный демон, он больше не работает и дает довольно странные результаты.
Я прокомментировал следующую строку в httpd.conf
LoadModule mpm_event_module modules/mod_mpm_event.so
это не помогло, затем я раскомментировал его и дал следующую конфигурацию в файле httpd-mpm.conf
:
<IfModule mpm_event_module>
StartServers 1
MinSpareThreads 1
MaxSpareThreads 1
ThreadsPerChild 1
MaxRequestWorkers 1
MaxConnectionsPerChild 0
</IfModule>
Но это все равно не сработает.
В каталоге /etc/httpd/modules/
есть и другие модули, связанные с потоками и процессами:
mod_mpm_event.so
mod_mpm_worker.so
mod_mpm_prefork.so
В документации я прочитал, что они должны быть предварительно скомпилированы в Apache, но когда я вызываю команду apachectl -l
все, что я получаю, это:
# apachectl -l
Compiled in modules:
core.c
mod_so.c
http_core.c
Итак, мой вопрос заключается в следующем. Как настроить Apache 2.4, чтобы он работал в том же режиме, как если бы он был запущен с помощью команды apachectl -X
. Спасибо большое.