설치
환경
- OS : Rocky Linux 9 mini
- Memory : 2GB
- HDD : 20GB
- ssh connection tool : mobaXterm
이 글에서는 아파치를 Rocky Linux 9에서 구동해보고자 한다. 아파치 버전은 2.4.57이다.
설치는 아래의 명령어를 통해서 쉽게 할 수 있다.
dnf install -y httpd
버전 확인
httpd의 버전을 확인할 수 있다.
httpd -v
설치 경로
아파치의 기본 설치 경로는 /etc/httpd이다.
작동방식
아파치는 서버가 동작하면 기초적인 작업을 마친 후, 설정파일에서 기본 설정값으로 지정된 80 포트로 들어오는 클라이언트의 요청을 기다리고 요청에 대한 필요한 데이터를 응답한다.
구동 방법
아파치 구동 방법은 두 가지가 있다.
- systemctl (서비스 관리 유틸리티)를 이용한 구동.
- apachectl 스크립트를 이용한 구동.
공식 문서에서는 apachectl을 사용하는 것을 권장한다. apachectl을 이용하여 특정 작업을 위한 인자를 받아서 httpd에 적절한 신호를 보내서 작업을 수행한다. SysV init 스크립트로 런레벨(runlevel)에 지정된다.
명령어는 다음과 같이 작성한다.
apchectl [command]
시작
아피치 httpd 데몬을 시작한다. 이미 실행 중이면 오류가 발생한다.
Active에서 활성화 상태와 언제 시작했는지 알 수 있다. Main PID로 pid의 값을 확인할 수 있다.
apachectl start
중지
아피치 httpd 데몬을 중단한다.
Active에서 비활성 상태를 확인할 수 있다.
apachectl stop
재시작
아피치 httpd 데몬을 재시작한다. 데몬이 재시작 시 실패하지 않음을 확인하기 위해 재시작 전에 자동으로 configtest 명령과 같이 설정파일을 검사한다.
apachectl restart
아피치 httpd 데몬을 재시작한다. 현재 실행을 중단하지 않고 설정파일 적용을 위해 재시작한다. 이전 로그파일을 즉시 닫지 않기 때문에 로그순환 스크립트(logrotate)에서 이 명령을 사용하면, 이전 로그파일을 처리하기 전에 로그파일을 닫기 위해 오래 기다려야 한다. 위와 동일하게 설정파일을 검사한다.
실무에서는 아파치 서버는 동작하고 있기 때문에 프로세스를 종료할 수 없어서 이 방식을 사용할 거라고 생각한다.
apachectl graceful
문법 검사
설정파일의 문법을 검사한다. 구문 오류나 특정 설정오류에 대한 자세한 정보를 알려준다.
apachectl configtest
상태 정보
간단한 상태 정보를 출력한다. 현재 서비스 중인 요청 목록을 출력하지 않는다.
apachectl status
참고
사이트맵 - Apache HTTP Server Version 2.4
httpd.apache.org