kkamagi's story

IT, 정보보안, 포렌식, 일상 공유

OS

Apache 에러 유형 모음(정리중)

까마기 2020. 1. 27. 20:00
728x90
반응형

안녕하세요. 

 

포스팅 또는 스크랩한 글에 대한 정리가 필요할 것 같아 통합 또는 정리작업 중입니다.

 

이번에는 apache 에러 관련하여 정리하였습니다.

 

먼저, apache 실행 시 오류입니다.

 

1. Apache 실행 시 에러 및 조치

 

1) 메세지 : Cannot load /usr/local/apache/libexec/libphp4.so into server: /usr/local/apache/libexec/libphp4.so: cannot resotre segment prot after reloc: Permission denied와 같은 메세지 발생.

 

우선 libphp4.so 의 경로를 확인합니다.

(which 또는 find 명령어 사용.)

 

경로가 /usr/local/apache/modules/libphp4.so 라고 가정합니다.

 

예시 : # chcon -t texrel_shlib_t [libphp4.so의 경로].

# chcon -t texrel_shlib_t /usr/local/apache/modules/libphp4.so

 

그 다음 apache 데몬을 재시작합니다.

 

 

2) 메세지 : libphp5.so: cannot restore segment prot after reloc: Permision denied와 같은 메세지 발생.

또는 httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf.

Cannot load /usr/local/apache/modules/libphp5.so into server.

 

php를 설치한 후 위 메세지를 포함하여 apache 웹 서버를 실행할 때 출력되는 메세지로, 해결방법은 다음과 같습니다.

 

restorecon 명령어를 수행합니다.

# /sbin/restorecon -R -v /usr/local/apache/modules

또는 아래 명령어를 수행합니다.

# chcon -t texrel_shlib_t /usr/local/apache/modules/libphp5.so

위 명령어 수행 후 apache 데몬을 재시작합니다.

# service httpd restart

 

 

3) 메세지 : Address already in use: make_sock: could not bind to address 0.0.0.0.80 .

 

/usr/local/apache/bin/apachectl start 명령어로 apache 시작 시 위와 같은 에러가 출력될 때가 있습니다.

 

0.0.0.0:80 즉, 80포트를 통한 소켓 연결이 불가능하다는 에러 내용이며, 80포트로 실행되고 있는 프로세스가 있다는 의미이다. 해당 프로세스를 찾아 종료하여야 합니다.

# killall httpd 또는 # netstat -antp 명령어를 통해 해당 pid를 찾은 후 pid를 kill합니다.

kill이 완료되었으면 다시 apache를 재시작합니다.

 

4) 원인 : selinux.

# chcon 명령어를 통해 /home/www/에 접근이 가능하도록 설정합니다.

# chcon -R -t httpd_user_content_t /home/www

 

반응형

'OS' 카테고리의 다른 글

vmware hyper-v 설정 충돌  (0) 2020.02.08
samba server 설치  (0) 2020.02.02
[리눅스] 특정 프로세스의 세션 개수 체크 스크립트  (0) 2020.01.21
배치 파일 - 실행 결과 보기  (0) 2020.01.14
tar 사용법  (0) 2020.01.14