Consegui compilar o Apache 2.2.22 com o seguinte comando para habilitar o MPM de trabalho
./configure --with-included-apr --prefix=/path/to/install/apache-2.2.22 --enable-so --with-mpm=worker
Como eu mudo do prefork para o worker mpm no Redhat Linux 64bit.
/bin/httpd -l
Compiled in modules:
core.c
mod_access.c
mod_auth.c
mod_include.c
mod_log_config.c
mod_env.c
mod_setenvif.c
mod_ssl.c
prefork.c
http_core.c
mod_mime.c
mod_status.c
mod_autoindex.c
mod_asis.c
mod_cgi.c
mod_negotiation.c
mod_dir.c
mod_imap.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_so.c
bin/httpd -V
Server version: Apache/2.0.55
Server built: Mar 7 2006 00:10:58
Server's Module Magic Number: 20020903:11
Architecture: 32-bit
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D HTTPD_ROOT="/opt/httpd/apache-2.0.55"
-D SUEXEC_BIN="/opt/httpd/apache-2.0.55/bin/suexec"
-D DEFAULT_PIDLOG="logs/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="logs/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
Edite o arquivo / etc / sysconfig / httpd. Mudar
#HTTPD=/usr/sbin/httpd.worker
para
HTTPD=/usr/sbin/httpd.worker
e reinicie o serviço do apache.
No RHEL7 usando o Apache httpd versão 2.4.6, é possível alterar o seguinte arquivo e carregar mpm alternativo, como prefork ou workers ou event
Modifique o seguinte arquivo com base na sua exigência:
/etc/httpd/conf.modules.d/00-mpm.conf
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
#LoadModule mpm_worker_module modules/mod_mpm_worker.so
#LoadModule mpm_event_module modules/mod_mpm_event.so
systemctl reinicia o httpd
Tags apache-2.2 prefork