아파치가 프리 포크 또는 작업자로 실행 중인지 (또는 실행하도록 구성되어 있는지) 어떻게 알 수 있습니까?
답변
MPM은 컴파일 타임에 구성됩니다. 나중에 알아내는 한 가지 방법은 모듈로 컴파일 된 목록을 작성하는 것입니다. 이 목록에는 선택한 MPM이 포함됩니다. -l 플래그를 사용하여 아파치 바이너리를 실행하여 목록을 작성할 수 있습니다.
andreas@halleck:~$ apache2 -l
Compiled in modules:
core.c
mod_log_config.c
mod_logio.c
worker.c
http_core.c
mod_so.c
andreas@halleck:~$
여기서 worker.c 모듈을 찾게되므로 worker MPM을 실행하고 있습니다.
답변
Series8217과 Andol의 답변이 모두 틀립니다.
문제는 Apache가 prefork 또는 worker를 실행 중인지 확인하는 방법이었습니다 . 다른 답변에서 제공하는 조언 은 현재 기본 또는 다른 선택이 사용되는 경우가 아니라 기본 MPM이 무엇인지 알려줍니다 (컴파일 된 모듈 기반).
경우 httpd -V
쇼 prefork의 그 단지 수단의 prefork의는 컴파일 된 기본 MPM입니다. 이 프로세스에 표시된대로 Apache 구성 파일 설정을 변경하여이를 대체 할 수 있습니다.
- 구성 파일 편집 (예 :
/etc/sysconfig/httpd
CentOS / RedHat) - 이 줄을 추가하거나 주석 해제하십시오.
HTTPD=/usr/sbin/httpd.worker
- 아파치 다시 시작
이 프로세스를 사용하여 실제로 실행중인 MPM을 표시 할 수 있습니다.
- Apache mod_info 활성화
- 일반적으로 mod_info URL을 쿼리하십시오.
curl localhost/server-info
- “서버 설정”섹션에 “MPM 이름 : 작업자”가 표시됩니다.
httpd -V
다시 실행 -작업자가 아닌 프리 포크가 계속 표시됩니다.
결론 :
httpd -V
실제로 사용중인 옵션이 아닌 기본 옵션을 표시합니다.
많은 웹 사이트에는 httpd -V
Apache가 prefork 또는 worker를 실행 중인지 확인 하는 데 사용되는 답변이 있습니다 . 그들은 모두 틀렸다. 위 절차를 시도하여 스스로 확인하십시오.
답변
우분투 14.04에서
a2query -M
지시 event
, prefork
,worker
당신은에 대한 기호 링크 추가하여 변경할 수 있습니다 mpm_<chosen>
에서 mods-available
에 mods-enabled
의를 /etc/apache2
.
한 번에 하나만 허용됩니다.
답변
RedHat 및 파생 제품에서 시작 top
하거나 ps aux
httpd 프로세스 이름을 확인하십시오.
httpd
Apache가 prefork로 실행되고 있음을 의미httpd.worker
작업자로 실행되고 있음을 의미
답변
RHEL / Fedora / etc에서을 실행하십시오 httpd -V
. 다음과 같은 출력이 제공됩니다.
Server version: Apache/2.2.21 (Unix)
...
Architecture: 64-bit
Server MPM: Prefork
...
여기서 ‘Server MPM’은 ‘Prefork’이므로 서버에서 prefork MPM을 실행하고 있습니다.
답변
크리스 존슨이 맞습니다. httpd.conf =>로 이동하여 다음 줄을 추가하십시오.
<Location /server-info>
SetHandler server-info
</Location>
아파치를 다시 시작하십시오 : /etc/init.d/httpd restart. 그런 다음 브라우저로 localhost / server-info 에 액세스 하고 MPM 이름 섹션을보십시오 .
답변
다음은 사용중인 MPM을 결정하는 데 신뢰할 수있는 다른 방법입니다. 에 다음을 추가하십시오 httpd.conf
.
<IfModule prefork.c>
Header append X-MPM prefork
</IfModule>
<IfModule worker.c>
Header append X-MPM worker
</IfModule>
그런 다음를 사용하여 헤더를 확인하십시오 curl -I localhost | grep X-MPM
.