웹마스터 팁

apache.gif
들어가기전에...

안녕하세요?
이 글은 제가 웹에서 찾은 글입니다.
윈도우용 아파치가 작업표시줄에 항상 떠있고 로그인을 해야 실행되는
단점을 보안할 수 있습니다.
유용히 쓰이길~~ ^^


아파치를 실행하기 위한 방법으로 두가지가 있다 :
하나는 NT 에서 제공하는 "서비스" 를 이용하는 것이다 (단, 이것은 NT 에서만 사용가능하다) 컴퓨터 부팅후에도 아파치가 자동으로 작동하기를 원한다면 이 옵션은 아마도 최고의 선택 방법일 것이다. 이 기능은 로그오프 한 후에도 계속 동작할 것이다. 윈도우 95 사용자들은 Console Window 를 이용하여 사용가능하다.

"서비스" 로서 아파치를 작동시키려 한다면, 먼저 그 서비스를 인스톨 하여야 한다. 시작메뉴 --> 프로그램 --> Apache Web Server 의 "install Apache as Service(NT only)" 옵션을 실행시키자!! 아파치를 실행시키기 위해서는 제어판 안에 있는 "서비스" 를 먼저 오픈한 다음 아파치를 선택하고 그때 "Start" 를 클릭하면 된다. 이때 아파치는 백그라운드로서 작동할 것이며, 스톱을 원한다면 위와 같은 방법으로 다시 "Stop" 을 클릭하면 된다.

다른 방법으로 서비스를 작동시킬수도 있는데 , 도스창에서 다음과 같은 방법으로 시작 및 중지시킬수도 있다.

NET START APACHE
NET STOP APACHE

또는, 시작메뉴에서 "Apache Server" 를 선택하여 콘솔윈도우에서 아파치를 실행시켜라 !!
이것은 도스창을 하나 오픈 한다음 아파치를 작동시킨다. 이 윈도우는 아파치를 중지시킬때 까지 계속 작동할 것이다. 아파치를 중지시키기 원한다면 6 번 메뉴 "종료" 를 참고하기 바란다.

아파치를 시작한후에(도스창 또는 "서비스" 를 이용) 80 번포트로 접근할수 있을 것이다.
(포트는 설정파일에서 Port,Listen or BindAddress 를 이용하여 바꿀수 있다)
브라우저를 하나 실행시키고 아래와 같이 URL 을 입력하면 웹서버의 default page 에 엑세스 할수있을 것이다.

http://localhost/ 또는 http://127.0.0.1

엑세스에 성공하면 웹 서버는 환영의 메세지로 대답할 것이며 , 아파치 메뉴얼의 링크를 볼수 있다(자세한 것은 아파치에서 제공하는 메뉴얼 또는 http://www.apache.kr.net 을 방문) 만약 아무것도 일어나지 않거나 에러메세지를 본다면 먼저 logs 디렉토리의 error_log 파일을 보기 바란다. 문제의 원인을 이 로그파일로 인해 쉽게 찾을수 있을 것이다.
conf 디렉토리안의 설정파일등을 자기 서버에 맞게 적절하게 설정하여 사용하기를 바란다.

5-2. 세부적인 작동 방법
시작메뉴의 아이콘과 NT 서비스 관리자는 아파치를 좀더 쉽게 관리할수 있도록 간단한 인터페이스를 제공해 주고 있다. 그러나 이것들은 단지 커맨드라인에서 쉽게 사용할수 있도록 해줄뿐이다. 자 그럼 ! 일단 아파치가 설정파일들을 어떻게 찾는지 알아보자. 모든 것이 자동으로 해결해 줄거라고 믿지 말자 ! 만약 이렇게 생각하고 있다면 큰 오산이다. 아파치는 아래와 같은 방법중의 하나로 실행할 수 있다.


-C 스위치를 통해 ServerRoot 를 설정할수 있다.
도스창에서 -f 스위치를 사용
도스창에서 -d 스위치를 사용
바이너리 파일을 인스톨 하였다면 윈도우의 레지스터리 값을 이용
컴파일시에 서버루트를 설정

아파치컴파일시에 서버루트는 "/apache" 로 설정된다. 이 값은 아파치 실행시 -V 옵션을 통해 HTTPD_ROOT 의 설정된 값을 확인할수 있다. 아파치를 시작할때 아무런 옵션없이 실행될때에는 자동으로 HTTPD_ROOT 가 작업디렉토리가 된다. 윈도우 하에서 시작메뉴 또는 서비스관리자에서 아파치를 아무 인수없이 불러낼 경우에는 윈도우의 레지스터리 값을 이용해 시작된다. 레지스터리 키값은 바이너리가 인스톨 되는 과정에 설치될 것이며 regedit 또는 regedit 32 를 이용하여 다음과 같은 키 값을 볼수 있을 것이다.

HKEY_LOCAL_MACHINESoftwareApache GroupApache1.3.1ServerRoot

만약 바이너리 버전을 인스톨 하지 않으면 아파치는 없어진 레지스터리 값에 대해 불만을 토로할 것이다. :-) 설정파일을 다른곳에서 찾을수만 있다면 이 경고는 무시해도 좋으며, 에러메세지는 다음과 같다 :

C:Program FilesApache>apache
[Sun Jan 03 22:19:24 1999] [warn] Registry does not contain value SOFTWAREApach
e GroupApache1.3.3ServerRoot
fopen: No such file or directory
httpd: could not open document config file /apache/conf/httpd.conf

"ServerRoot" 의 키 값에는 conf 디렉토리도 포함되어 있다. 아파치가 시작될때 이 디렉토리로부터 httpd.conf 파일을 읽어 들인다. 만약 httpd.conf 에 포함되어 있는 ServerRoot 의 값이 위의 레지스터리 값과 다른것을 가지고 있다면 아파치는 기존의 레지스터리 값을 잊어버리고 설정파일에 설정된 디렉토리를 사용할 것이다. 여러분들이 아파치 디렉토리 또는 설정 파일을 새로운 곳으로 복사하였다 하더라도 httpd.conf 에서 새로운 ServerRoot 의 위치만 지정해 주면 아파치는 다시 쉽게 가동될 것이다.

아파치를 작동시키기 위하여 커맨드라인에서 다음과 같은 명령어를 사용할수 있다:

apache -s

아파치는 실행될 것이며, Control-C 가 눌러질때 까지 멈추지 않고 계속 작동할 것이다.
(윈도우 95 에서는 -s 옵션이 필요하지 않다.)
Windows NT 서비스 로서 작동하는 것을 인스톨 하려면 :

apache -i

서비스에서 제거하려면 :

apache -u


6. 종료

윈도우 95 에서 콘솔프로그램에 의해 아파치가 작동하고 있다면 또다른 도스창을 오픈한 다음 다음과 같은 명령어로 작동중인 아파치에게 멈출것을 명령할 수 있다.

apache -k shutdown

주의: 이 옵션은 아파치 1.3.3 그리고 이 이상의 버전에서만 가능하다. 초창기 버전에서 사용하려면 콘솔윈도우에서 Control-C 를 사용하여 shut down 시킬수 있다. 아파치 콘솔 윈도우에서 Control-C 를 눌러 작동을 중지시키기 보다는 이 옵션을 사용하기 바란다. 왜냐하면 이 옵션은 아파치에게 현재의 작업등을 깨끗하게 처리하고 멈추라고 지시하기 때문이다.) 이 옵션을 사용하지 않고 강제종료시는 흔히 다음과 같은 메세지를 볼 수 있을 것이다.

[Sat Jan 02 16:33:40 1999] [warn] pid file c:/program files/apache/logs/httpd.pi
d overwritten -- Unclean shutdown of previous apache run?
Apache/1.3.3 (Win32)

또한 아파치에게 재시작을 지시할 수 있다. 이것은 아파치의 중지없이도 설정파일등을 다시 읽을수 있다. 그 만큼 서버다운시간을 줄일 수 있다는 이야기 이기도 하며, 아파치를 재시작 하기 위해서는 다음과 같이
실행하면 된다.

apache -k restart

주의 : 이 옵션은 아파치 1.3.3 그리고 이 이상의 버전에서만 가능하다. 이전 버전에서는 콘솔윈도우에서 Control-C 를 사용해 서버를 shut down 시켜야 한다.

이 명령어는 유닉스에서 사용하던 kill -TERM pid 그리고 kill -USR1 pid 와 동등한 기능을 윈도우에서도 제공한다.

7. 필자 한마디

1998 년이 지나 어느덧 어느새 새해가 밝았습니다. 1998 년의 해는 정말로 우리 국민들 모두에게 힘들었던 한해였던 것 같군요. 국내에 아파치를 소개하는 홈페이지를 개설했던 것이 엊그제 같은데 벌써 1년 하고도 많은 시간이 흘렀습니다. 국내에 인터넷이 많이 보급되면서 부터 개인들이 웹서버를 구축하여 운영하는 사례가 많이 생기고 있고 그러다 보니 운영환경도 유닉스에서 윈도우로 많이 바뀌어 가고 있는 추세입니다.
이에 많은 분들이 윈도우 환경에서 아파치를 좀더 쉽게 사용할 수 있도록 시간을 내어 Win32 for Apache 에 관한 글을 써보았습니다. 평일에는 계속된 업무로 인하여 시간을 내지 못하고 모아둔 자료와 조금씩 써 내려갔던 글들을 모아 모아 작업을 진행하였습니다. (새해가 시작되는 날부터 1999.1.1 ~)
한번은 작업을 하다 알수없는 원인으로 인하여 컴퓨터가 부팅되어 작업하였던 모든 글이 날아가 버리는 사태가 발생하기도 하였습니다. 경험해 보신분은 알겠지만 정말 허탈합니다. :-) 하여튼 우여곡절 끝에 이 페이지를 세상에 내놓게 되었습니다. 아직은 이 문서가 부족한 점이 많으리라 생각되며 그래도 이 문서를 통하여 많이 분들이 도움을 얻는다고 생각하니 뿌듯하군요. 이 문서에 잘못된 곳이나 내용이 이상한 곳을 발견하시면 저에게 알려주십시오. 단, Win32 for Apache 에 대한 질문등에는 응답이 없을수 있습니다 . 아파치에
관한 문의사항은 게시판을 이용하셔서 많은 분들이 정보를 공유하였으면 합니다. 참고로 이 문서는
아파치에서 제공하는 자료와 저의 개인적인 생각 및 추가 덫붙임으로 만들어 졌습니다.

Copyright Notice : 이곳에서 작성되어진 문서들이 저작자의 동의없이 마구 배포되어 지고 있습니다.
물론 많은 분들이 정보를 공유할수 있다는 점에서는 찬성합니다만, 본인이 쓴 것처럼 작성되어지는
경우(저작자 또는 URL 삭제)등이 있습니다. 이곳에서 공개되어 지는 모든 정보는 URL 링크 또는
저작자의 동의하에 윈본그대로를 배포하여야 합니다.

제목 글쓴이 날짜
[FreeBSD] qmail+mysql+vpopmail+qmailadmin 설치 [1] DeX™ 2002.11.26
Apache + PHP + Mysql확실한 연동 및 리눅스 재설치 정보 [2] file 최종우 2002.11.26
리눅스 서버를 구축해 보자! #1 [11] 꼬토 2002.11.21
보안설정을 하다^^ 유의할점. [3] Dopesoul 2002.10.14
나만의 ftp서버 만들기 제2부 -serv-u 4.0- [12] 레드 2002.10.09
자동 apm 설치 쉘스크립트(리눅스) [5] file 김동현 2002.09.15
PHP에서의 SQL문 보안취약성 [5] 김영빈 2002.09.09
[Apache] 윈도우 NT 계열에 서비스 등록하기 [1] file 스카이 2002.09.08
What is the MRTG? [4] Dopesoul 2002.09.06
웹호스팅 세팅기 1편 - 설치하기(2부) [3] 임현 2002.08.22
FTP 에 사용자추가후 로그인부분 추가하기 - 로그인 부분 [2] file DearMai 2002.08.12
FTP 에 사용자추가후 로그인부분 추가하기 - 사용자추가부분 [5] file DearMai 2002.08.12
ASP + MS SQL 기반 게시판 설치하기 - 두번째 file 오픈소스 2002.07.12
ASP + MS SQL 기반 게시판 설치하기 - 첫번째 file 오픈소스 2002.07.12
[알아서 나쁠것없는 10원짜리 팁!] 수십 수백명사용자의 일괄생성 방법! [6] 임현 2002.05.09
리눅스 아주 간단한 사용자 계정 주기-_- [7] i- 2002.03.12
관리자모드 - 관리자그룹만 모든 회원리스트보기 [2] 이지혜609 2007.10.23
포인트부여시 ...회원로그인 [2] 구본순 2007.08.28
mysql 관리하는 프로그램입니다. (7/26 13:03) 수정 [4] file 제로저아 2007.07.18
mysql 안쓰는 간단한 게시판. [20] 제로저아 2007.07.15