개인 자료 정리 홈페이지 입니다.

Note > 리눅스 명령어 모음httpd 명령어 및 간단한 상태 분석By a3040, Published on Invalid Date

상황에 따라서 현재 httpd 가 어떻게 컴파일 되어 있는지 상황이 어떤지 확인 해야할 경우가 있습니다.


1. httpd가 실행 가능한가 확인해보기

2. 버전 확인해보기

3. 컴파일시 서버 기본 설정 확인해보기

4. 설정 파일 확인해 보기

5. httpd 서버 실행하기

6. 동작 상태 확인


httpd는 아파치 하이퍼텍스트 전송 프로토콜 (HTTP) 서버 프로그램이다. 자체(standalone) 데몬 프로세스로 실행하도록 설계되었다. 원한다면 요청을 처리하기위해 자식 프로세스와 쓰레드들을 만든다.

일반적으로 httpd를 직접 실행하기보다는 유닉스기반 시스템에서는 apachectl을 통해, 2000, XP에서는 서비스로Windows 9x와 ME에서는 콜솔 프로그램으로 실행해야 한다.


1. httpd가 실행 가능한가 확인해보기

- 현 os에서 동작하는지 확인 가능합니다.

www]# ./bin/httpd -h

Usage: ./bin/httpd [-D name] [-d directory] [-f file]

          [-C "directive"] [-c "directive"]

          [-v] [-V] [-h] [-l] [-L] [-S] [-t] [-T] [-F]


2. 버전 확인해보기

- 버전을 확인합니다.

 www]# ./bin/httpd -v

Server version: Apache/1.3.37 (Unix)

Server built:  Dec 17 2006 17:32:36


apache2 -V


3. 컴파일시 서버 기본 설정 확인해보기

설정파일 및 실행 후 로그 관련 도메인에 연결된 정보를 확인하기 기본 설정을 확인할 필요가 있습니다.


컴파일 때의 기본 설정을 확인 합니다.

 www]# ./bin/httpd -V

Server version: Apache/1.3.37 (Unix)

Server built:  Dec 17 2006 17:32:36

Server's Module Magic Number: 19990320:18

Server compiled with....

...

 -D HTTPD_ROOT="/www"

 -D DEFAULT_PIDLOG="logs/httpd.pid"

 -D DEFAULT_ERRORLOG="logs/error_log"

 -D SERVER_CONFIG_FILE="conf/httpd.conf"

...


현재의 설정일 경우 옵션 없이 httpd가 실행될때 기본 설정 파일을 찾는 위치는 /www/conf/httpd.conf 입니다.

기본 로그 파일의 위치는 /www/logs 입니다.


4. 설정 파일 확인해 보기


설정 파일을 확인 합니다.

 ./bin/httpd -t

httpd -t

에러일 경우 에러가 무엇인지 나타납니다. 기본 설정으로 테스트 하기 때문에 윗쪽에서 분석했던 위치의 설정파일을 확인해줍니다.

정상일 경우 Syntax Ok 가 출력됩니다.


특정 설정 파일이 현재의 httpd컴파일 상태로 실행가능한가? 확인

./bin/httpd -f /etc/httpd/conf/httpd.conf -t



5. httpd 서버 실행하기

파일을 구성합니다. ServerRoot 및 httpd.conf 설정을 정상구성 후 실행해봅니다.


실행 확인 및 실행 - 정상 상태

www]# ./bin/httpd

기본은 80번이고 특별한 일 없이 실행됩니다.

정상 실행된 경우 그냥 저렇게 다음 명령어를 기다리고 끝입니다.



실행 되는 설정과 안되는 경우의 설정들 예시


www]# ./bin/httpd -f /etc/httpd/conf/httpd.conf

Syntax error on line 148 of /etc/httpd/conf/httpd.conf:

Cannot load /etc/httpd/modules/mod_auth_basic.so into server: /etc/httpd/modules/mod_auth_basic.so: undefined symbol: apr_table_unset

설정파일의 기본 로드 모듈과 현재 실행시킨 httpd와 맞지 않습니다. 실행 안됨


 www]# ./bin/httpd -f /www/conf/httpd.conf <--- 동작하도록 수정한 기본 설정 파일입니다. 실행후 그냥 다음 명령 요청 나오면 시작된 것입니다.

 www]#./bin/apachectl stop 은 설정에있는 pid 파일을 이용해서 현재 실행중인 httpd를 종료하는 명령어입니다.


 www]# ./bin/httpd -f /old_05/www/conf/httpd.conf

특정 위치의 설정 파일이 정상 동작하는 결과가 나온 상태입니다.


안되는 경우는 재 설치 혹은 에러에 따른 처리를 해줘야합니다.


6. 동작 상태 확인

ps -ef |grep httpd  명령등을 이용해서 프로세스 상태를 확인합니다.

브라우저 등을 이용해서 외부 접속 상태를 확인합니다.

설정위치의 log를 이용해서 추가 에러를 수정합니다.



httpd - 아파치 하이퍼텍스트 전송 프로토콜 서버 - Apache HTTP Server Version 2.4