실행하면 service apache start
로그 파일에 다음 항목이 표시됩니다.
[mpm_event:notice] [pid 1906:tid XXX] AH00489: Apache/2.4.23 (Unix)
OpenSSL/1.0.2g PHP/7.0.9 configured -- resuming normal operations
[core:notice] [pid 1906:tid XXX] AH00094: Command line: '/usr/sbin/httpd'
[mpm_event:notice] [pid 1906:tid XXX] AH00492: caught SIGWINCH, shutting down gracefully
그런데 서비스가 apache
시작되지 않았나요? 인터넷에서 SIGWINCH
[ ]의 의미를 찾을 수 있지만 Window size change
이 경우에는 별로 도움이 되지 않습니다.
문서 /etc/systemd/system/apache.service
:
[Unit]
Description=The Apache Webserver [FaF Compiled]
After=network.target nss-lookup.target time-sync.target
[email protected] plymouth-quit.service xdm.service
[Service]
Type=notify
PrivateTmp=true
ExecStart=/usr/sbin/httpd -k start
ExecReload=/usr/sbin/httpd -k graceful
ExecStop=/usr/sbin/httpd -k graceful-stop
KillMode=mixed
[Install]
WantedBy=multi-user.target
Alias=httpd.service apache.service
SLES 12 SP1에서 실행 중입니다. 나는 Apache를 직접 컴파일했습니다. 실행하면 apachectl -k start
잘 작동하고 PHP 코드에 액세스하여 실행할 수 있습니다.
내 질문:
제가 뭘 잘못했나요, apache
서비스가 시작되지 않네요. 나는 그것을 활성화했습니다 systemctl enable apache
. 출력은 다음과 같습니다.
ln -s '/usr/lib/systemd/system/apache2.service' '/etc/systemd/system/httpd.service'
ln -s '/usr/lib/systemd/system/apache2.service' '/etc/systemd/system/apache.service'
ln -s '/usr/lib/systemd/system/apache2.service' '/etc/systemd/system/multi-user.target.wants/apache2.service'
답변1
systemd
Apache에게 중지를 지시하여 신호와 로그를 graceful-stop
생성합니다 . (이 신호는 Apache에서 (남용) 사용됩니다.)SIGWINCH
caught SIGWINCH, shutting down gracefully
SIGWINCH
IMO, 잘못된 구성을 포함한 다른 버그로 인해 중지되고 정상적인 동작인 관련 증상이 나타날 수도 있습니다.
일반적으로 기본적으로 SLES 디렉터리에 있는 Apache 오류 로그를 주의 깊게 읽어 보시기 바랍니다 /var/log/apache2
.
답변2
답변3
댓글에서Red Hat 버그 보고서링크된 곳토마스의 대답:
httpd가 성공적으로 시작되었음을 systemd가 인식하도록 하려면 00-systemd.conf를 실행해야 합니다.
나는 이것을 실행했고 작동했습니다.
ln -sr /etc/httpd/conf.modules.d/00-systemd.conf /etc/httpd/conf.d/00-systemd.conf
systemctl restart httpd
저는 Amazon Linux 2를 사용하고 있습니다(RHEL/Centos 7에서도 작동할 수 있음).