티스토리 뷰
apache2.4 AH00051: child pid 1486424 exit signal Segmentation fault (11)
Root_js 2024. 7. 30. 08:14아래 조치사항은 어디까지나 나의 경우이니 참고용으로 봐주세요~
웹서버 세팅이 완료된 후 테스트를 하던 중 아파치 에러로그 발생하기 시작
참고로
Rocky Linux release 8.9
php7.2
에 apache와 php는 별도로 컴파일해서 설치
내경우는 간헐적으로 404페이지가 뜰때나 rewrite 모듈 사용할때 err_empty_response 가 뜨는 문제였음
처음엔 이문제가 apache2.4 AH00051: child pid 1486424 exit signal Segmentation fault (11)
이문제와 관련이 있다고 생각도 못했고 아파치설정 변경하고 php.ini 설정 변경해가면서 테스트함
하다하다 안되서 IDC 요청했으나 며칠에 걸쳐 테스트한 결론은 모듈쪽 오류인거까진 확인했는데 하나하나 테스트를 해봐야할꺼같다고 회신이 옴
셀프 테스트를 시작함
저 에러가 발생하는 경우 높은 확률로 coredump를 떠서 확인을 함
apache 설치 경로상의 httpd.conf 파일 열어서 하단에
CoreDumpDirectory /tmp
추가 후 저장 경로는 파일 용량이 충분한 곳으로 설정
지정한 폴더 권한을 apache에서 사용하는 권한과 동일하게 맞춤 내경우는 nobody
apachectl restart 아파치 재시작
재시작해도 안되는경우는 stop 후 start 하라는데 그래도 안생김
구글링을 시작함
코어덤프 설정을 아래 경로에서 한다고 함
/proc/sys/kernel/core_pattern
위 파일 내용 수정하고 이것저것 해봐도 코어 파일이 안생김 그래서 일단 원래대로 돌려놓고
그러다가 문득 정말 안생기는걸까? 싶어서 전체 검색을 때림
find / -name core*
그랬더니 아래 경로에 파일이 생기고 있음
/var/lib/systemd/coredump/
덤프파일 확인했으니 gdb 통해서 디버깅
덤프파일 생성 확장자가 lz4로 생성됨 압축파일이니 풀어야 디버깅 가능
gdb /usr/local/httpd/bin/httpd /var/lib/systemd/coredump/core.httpd.65534.e368e68e7d6d494a9cff1d15a64b3156.1445143.1722234264000000
위 명령어 실행하면 gdb가 시작되고
bt를 입력하면 backtrace 정보를 보여줌
내경우의 bt정보인데 뭔소린지 하나도 모르겠어서 위에서부터 하나씩 모듈을 닫아보기로 함
그랬더니 mod_url 모듈때문이였음
서버 OS 설치 및 기본 세팅은 내가 하지 않아서 어떻게 설정되어있는지 모르지만 mod_url 은 한글 주소 쓸때 사용하는 모듈이라 일단 그냥 닫아둠
하루 지난 지금까지 추가적인 에러는 발생하지 않음..
최종상황만 쭉 적었지만 하루 날려 작업한 내용.. ㅠㅠ
'serverSide > Linux' 카테고리의 다른 글
ubuntu22.04 sqlsrv_connect() install sqlsrv php7.2 nginx (0) | 2024.12.04 |
---|---|
apache2.4 php htaccess 설정 (0) | 2024.07.18 |
Ubuntu 22.04 no matching host key type found. Their offer: ssh-rsa,ssh-dss (0) | 2024.05.16 |
awk 를 사용해서 nginx apache 로그 파일 분석 (0) | 2023.12.12 |
ubuntu22.04 설치 후 기본 세팅 (2) | 2023.11.03 |