HTTP 서비스 : apach


httpd의 실행 스크립트

/etc/init.d/httpd start 


/etc/httpd : httpd의 기준 디렉터리

/etc/httpd/conf or conf.d : 설정 파일

/etc/httpd/log : 로그가 기록되는 디렉터리(심볼릭 링크)

/etc/httpd/modules : 웹 서버 모듈 디렉터리(심볼릭 링크)

/etc/httpd/run : PID 정보를 기록할 디렉터리(심볼릭 링크)


1. 전역 설정


httpd.conf의 설정 테스트

httpd -t


1) ServerTokens : 서버 정보 공개 수준

Prod : ProductOnly로 웹 서버의 종류인 Apache만 공개

Min : Minimal로 웹 서버의 종류와 버전까지 공개

OS : 웹 서버의 종류, 버전, 운영체제까지 공개

Full : 모든 정보와 사용된 모듈 등을 공개


ex) ServerTokens Prod


2) ServerRoot, PidFile : 디렉터리 및 Pid파일

ServerRoot : 아파치 웹 서버의 디렉터리 구조가 시작되는 기준 위치

PidFile : 아파치 서버가 시동될 때 자신의 프로세스 고유 번호를 기록할 파일의 위치


ex)  SeverRoot "/etc/httpd"

PidFile : run/httpd.pid   # /etc/httpd/run/httpd.pid


3) Timeout : 타임아웃 설정

세션타임아웃 설정


ex) Timeout 300


4) KeepAlive, MaxKeepAliveRequests, KeepAliveTimeout : Keep Alive 기능

KeepAlive : HTTP KeepAlive 기능을 on/off

MaxKeepAliveRequests : 지속적인 접속 내에서 최대 처리 가능한 누적 요청 수

KeepAliveTimeout : 마지막 요청 이후 접속을 유지할 타임아웃


ex)  KeepAlive On

MaxKeepAliveRequests 50

KeepAliveTimeout 1


5) prefork 모델의 서버 풀 조정

<IfModule prefork.c>

StartServers 8                 # 초기시작할 서버 프로세스의 갯수

MinSpareServers 5         # 예비 프로세스의 최소치

MaxSpareServers 20         # 예비 프로세스의 최대치

ServerLimit 256                 # 서버 프로세스의 최대 갯수

MaxClients 56                             # 클라이언트의 최대 접속 허용 갯수

MaxRequestsPerChild 4000 # 한 개의 서버 프로세스(자식)가 처리할 최대 누적 요청 갯수

</IfModule>


6) Listen 지시어

접속 포트 지정


ex) Listen 80


7) LoadModule 지시어

모듈을 적재하는 명령어


ex) LoadModule [module] [filename]


8) Include 지시어

확장 기능에 대해서 환경 설정 시 편의


9) User,Group : 아파치 작동 유저/그룹

아파치를 실행할 유저/그룹


ex)  User apache

Group apache


+ Recent posts