Apache web 서버 및 서버의 네임서버화에 대해 알아 보자!
1. Apache web 서버란 ?
- Apache의 어원은 A PAtCH에서 나온 말이다. 세계의 웹서버 시장에서 50% 이상을 점유하고 있는 좋은 웹서버 일뿐만이 아니라, 기능, 보안, 속도와 무료라는 큰 매력을 가지고 있다. 하지만, 가장 큰 단점이 아파치 자체로 인한 서버 장애시 대처방법이 없는 것과, 버전이 올라갈 때 마다 나오는 새로운 내용에 대해서 체계적인 매뉴얼이 부족한 것도 그렇고 GUI방식의 웹서버의 설정이 안되는 것등의 단점이 있음.
2. Apache 서버 설치과정
1). httpd-2.2.25.tar.gz 버전을 /usr/local 에 다운 받음
2). cd /usr/local 디렉토리로 이동후 tar 명령어를 사용 압축을 품 tar xvfz httpd-2.2.25.tar.gz
3). cd ./httpd-2.2.25 디렉토리로 이동 후 ./configure --prefix=/app/apache --enable-so 명령어로 파일을 설치 할 준비를 함
> --prefix 옵션은 설치 디렉토리를 /app/apache로 지정해주고
> --enable-so 옵션은 아파치에 DSO 방식으로 모듈이 적재되도록 하는 옵션. DSO 방식이란 사용할 모듈을 주소공간에 가져와서 사용하는 것으로 사용된 모듈을 다시 불러와 재컴파일 하는 일이 없게함. 처음 서버를 구동할 때 시간이 좀 더 걸리거나 일부 플랫폼에서 지원이 안된다는 단점이 있지만 한번 불러오면 속도도 빠르고 확장이 쉽다는 장점이 있음.
4). make 명령어 실행
5). make install 명령어 실행
---- 여기까지가 기본 패키지 설치 및 실행 준비
3. Apache 서버 설정 및 실행
> 구성파일
* 실행 데몬 : /app/apache/bin/httpd
* 관리 스크립트 : /app/apache/bin/apachectl
* 설정 파일 : /app/apache/conf/httpd.conf
* 초기 서비스 파일 : /app/apache/htdocs/index.html
* 컴파일 옵션에 따라 달라질 수 있음
* 추가 설정 /etc/hosts 파일에 IP와 서버의 도메인 명을 입력
> 서버 구동
/app/apache/bin/apachectl {start | stop | restart}
> httpd.conf 파일의 구문 점검 (경로 : /app/apache/conf/httpd.conf)
/app/apache/bin/httpd -t
* httpd.conf 파일의 문법상의 오류를 찾아줌
* "Syntax OK" : 오류 문법 없음
> 3개의 섹션으로 구성
* 전역 환경 설정 부분
* 기본 서버 구성
* 가상 호스트 부분
> httpd.conf 파일 내의 설정 옵션
'전역 환경 설정'
* ServerRoot "/app/apache"
- 웹 서버의 설정파일, 로그파일 등이 저장되는 최상위 디렉토리
* Timeout 120
- 서버와 클라이언트의 연결시에 아무런 메시지가 없을 때에 오류로 처리되는 초단위 시간
* MaxClients 150
- 접속 가능한 최대 client 수
* Startservers 20
- 초기 서버 프로세스의 수
* MinSpareServers / MaxSpareServers
- 대기 상태의 프로세스 수
'기본 서버 구성'
* ServerAdmin root@localhost
- 관리자의 메일주소
* DocumentRoot "/app/apache/htdocs"
- 웹 서버의 홈 디렉토리 (메인 페이지 파일이 있는 경로)
* DirectoryIndex index.html index.java index.php
- 메인 페이지 파일명
* ErrorLog "/logs/error_log"
- 웹 서버에 문제가 발생시에 에러를 기록하는 로그 파일
* CustomLog "logs/access_log combind"
- 외부에서 접근한 기록에 대한 로그파일
* UserDir public_html
- 개인 홈 디렉토리 지정
- 기본 구성 폼 -
<Directory "/app/apache/htdocs">
Options indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
<Directory>
IP 기반 호스트
<VirtualHost 접속IP>
DocumentRoot 홈 디렉토리
ServerName IP 또는 도메인명
</Virtual Host>
<Virtual Host> 항목에는 모든 전역 설정 파라미터가 기술 가능
예
<VirtualHost 192.168.10.10>
DocumentRoot /home/httpd/10
<기본 구성 폼 추가>
ServerName 192.168.10.10
</VirtualHost>
> 아파치 웹서버 만들기
위의 설치 준비 과정을 거친 후
위 경로에서
해당 코딩을 활성화 시킨 뒤 해당 경로의 conf 파일을 아래와 편집
st01과 te01은 동일한 아이피에 서로 다른 웹 페이지를 갖고 있는 아파치 웹 서버, 도메인도 보유하고 있음
* 호스팅 디렉토리에 대한 접근 설정이 유효해야 함
* conf/extra/httpd-vhosts.conf를 참고
* apache 설정보다 name server 설정이 우선
* 호스팅 중인 호스트명이 name 서버에서 확인 되야 함
* 시스템의 호스트명과 /etc/hosts에 기록된 이름이나 IP를 동일하게 설정
댓글 없음:
댓글 쓰기