설치 > 실행 B [설정 - 기본] 설정파일 > 접속포트 > 서버이름 > 웹문서디렉토리 > 기본파일 C [설정 - 고급] 디렉토리권한 > 사용자디렉토리 > 도메인확인 > 외부프로그램 > CGI 확장자 > SSI 확장자 오류처리 D [가상디렉토리] 개념 > 만들기 E [가상호스트] 개념 > 만들기
a1. 설치
접속 시험용은 내려받은 파일을 실행시키면 압축이 해제되면서 설치가 끝납니다. ![]() 설치 디렉토리는 변경하지 말고 c:/apache 로 하세요. 1.3.12는 내려받은 파일을 압축 해제한 다음 실행파일을 실행하세요. ![]() 설치 디렉토리는 가능하면 c:/apache 로 하세요. 1.3.20은 Microsoft의 설치프로그램인 MSI를 이용하므로 Windows98이나 NT에서는 MSI를 내려받아 설치하세요. Windows 2000 또는 ME에는 MSI가 포함되어 있습니다. 그 다음 내려받은 파일을 실행하세요. ![]() 설치 디렉토리는 가능하면 c:/apache 로 하세요. a2. 실행
![]() 아파치 도스창이 계속 떠 있으면 실행이 정상적으로 된 겁니다. 아파치 도스창이 사라진다면 httpd.conf 파일에서 ServerName 항목의 앞에 붙어 있는 # 을 삭제하세요. 참고로 서비스등록, 서비스해제, 웹서버실행, 웹서버중지 파일은 아파치 제어 명령을 단축아이콘으로 만들어 둔 겁니다. 1.3.12나 1.3.20을 설치했다면 [시작] 버튼에 등록되어 있는 프로그램그룹에서 실행하세요. [설정 - 기본] b1. 설정파일
대부분은 "Port 5678" 형식으로 항목이름과 값이 한 줄에 나란히 있지만, 일부 고급 항목은 "<Directory> ... </Directory>"와 같이 태그 형식으로 되어 있기도 합니다. 첫머리에 # 이 붙어있는 줄은 주석 처리된 것입니다. # 이 붙어있는 줄을 활성화하려면 첫머리의 # 을 삭제하세요. b2. 접속포트
Port 5678 Listen 5678 도메인이 domain.com이고 특별히 웹포트포워딩 기법을 사용하지 않는다면 http://domain.com:5678로 접속합니다. HTTP 표준 포트인 80을 사용한다면 접속시 포트 지정을 하지 않아도 됩니다. b3. 서버이름
#ServerName new.host.name Apache가 시작 즉시 죽는 현상이 있다면 이 항목의 주석을 해제하십시오. b4. 웹문서디렉토리
DocumentRoot "c:/apache/htdocs" 도메인이 domain.com이라면 http://domain.com/index.html로 접속하면 c:/apache/htdocs/index.html을 보여줍니다. b5. 기본파일
DirectoryIndex index.html main.html 도메인이 domain.com이라면 http://domain.com으로 접속하면 c:/apache/htdocs에 있는 index.html을 보여주고 만약 없으면 main.html을 찾아서 보여줍니다. [설정 - 고급] c1. 디렉토리권한
<Directory /> Options ExecCGI Includes Indexes </Directory> <Directory "c:/apache/htdocs"> Options ExecCGI Includes Indexes AllowOverride None Order allow,deny Allow from all </Directory> Options 항목으로 권한을 설정하는데 다음과 같은 값들이 중복적으로 올 수 있습니다. 권한 설정에 익숙해지기 전까지는 "Options All"로 설정하세요. c2. 사용자디렉토리
UserDir "c:/apache/users/" 도메인이 domain.com이고 c:/apache/users/id 라는 디렉토리를 만들어 두었다면 접속은 http://domain.com/~id 로 합니다. c3. 도메인확인
UseCanonicalName Off 접속시 사용된 도메인을 이용하여 도메인포워딩, 통계, 보안 등을 하는 CGI를 사용한다면 이 항목을 Off로 설정하세요. On으로 설정하면 속도는 조금 빨라지지만 하위디렉토리로 접근할 수 없는 경우가 있을 수 있습니다. c4. 외부프로그램
AddType application/x-httpd-php .php .php3 .php4 .phtml ScriptAlias /php/ "c:/php/" Action application/x-httpd-php "/php/php.exe" 예에서는 PHP를 예로 들었습니다. 먼저 .php 등의 확장자를 application/x-httpd-php라는 타입이름과 연관시켰습니다. 그리고 /php/ 라는 가상의 이름을 실제디렉토리인 c:/php와 연관시켰습니다. 마지막으로 PHP를 나타내는 application/x-httpd-php 타입의 실행을 실제 PHP 번역기인 php.exe가 하도록 지정하였습니다. 세줄의 설정으로 되었지만 결과적으로 확장자 .php를 c:/php/php.exe에서 처리하도록 설정한 것이 됩니다. c5. CGI 확장자
AddHandler cgi-script .cgi .pl 확장자가 .cgi 또는 .pl이면 일단 자체 실행 CGI로 간주하지만 CGI 소스 첫 줄에 "#!c:/perl/bin/perl.exe"와 같이 PERL 번역기 경로가 명시되어 있으면 PERL CGI로 간주합니다. c6. SSI 확장자
AddType text/html .html .htm .shtml AddHandler server-parsed .shtml 먼저 확장자 .shtml을 HTML 문서를 가리키는 text/html이라는 타입이름과 연관시켰습니다. 그리고 확장자 .shtml을 SSI용 확장자로 지정하였습니다. 결과적으로 확장자가 .shtml인 파일은 일반 HTML 구문과 함께 "<!--#include file='common_head.html'-->"과 같은 SSI 구문을 가질 수 있게 됩니다. c7. 오류처리
각 오류 코드에 대하여 보여줄 메세지, 파일, URL을 설정할 수 있으며 다음과 같이 설정합니다. ErrorDocument 500 "Internal Server Error ErrorDocument 401 /error/deny.html ErrorDocument 404 http://domain.com 많이 사용되는 HTTP 오류 코드는 다음과 같습니다. [가상디렉토리] d1. 개념
만약 용량이 큰 파일들을 d:/data에 저장해 두었다고 해도 일반적인 방법으로는 그 파일들에 접근할 수 없습니다. 일반적인 방법으로는 c:/apache/htdocs 밖으로의 접속은 거부당하기 때문입니다. 가상디렉토리란 http://zonesoft.co.kr/vert와 같이 가상의 하위 경로로 접속하면 실제로는 vert라는 가상의 이름에 연관되어 있는 실제 디렉토리인 d:/data로 접속되는 기능을 말합니다. 일반적인 경우에는 필요없는 설정이므로 위의 설명에 해당되어 꼭 필요한 경우에만 사용하세요. d2. 만들기
Alias /vert/ "d:/data/" <Directory "d:/data"> Options All AllowOverride None Order allow,deny Allow from all </Directory> [가상호스트] e1. 개념
만약 http://koreaip.net으로 접속했을 때는 d:/html에 있는 다른 웹사이트를 보여주고 싶다면 어떻게 해야 할까요?. 아무런 조치없이 일반적인 방법으로 해서는 c:/apache/htdocs로만 접속이 들어갑니다. 가상호스트란 koreaip.net에 대한 디렉토리 설정을 별도로 해서 d:/html로 접속될 수 있도록 하는 기능을 말합니다. 일반적인 경우에는 필요없는 설정이므로 위의 설명에 해당되어 꼭 필요한 경우에만 사용하세요. e2. 만들기
NameVirtualHost zonesoft.co.kr <VirtualHost zonesoft.co.kr> ServerName zonesoft.co.kr ServerAlias zonesoft.co.kr www.zonesoft.co.kr org.zonesoft.co.kr DocumentRoot c:/apache/htdocs </VirtualHost> <VirtualHost koreaip.net> ServerName koreaip.net ServerAlias koreaip.net www.koreaip.net org.koreaip.net DocumentRoot d:/html </VirtualHost> 또는 다음과 같은 설정 방법도 있으니 참고하세요. NameVirtualHost * <VirtualHost *> ServerName zonesoft.co.kr ServerAlias zonesoft.co.kr www.zonesoft.co.kr org.zonesoft.co.kr DocumentRoot c:/apache/htdocs </VirtualHost> <VirtualHost *> ServerName koreaip.net ServerAlias koreaip.net www.koreaip.net org.koreaip.net DocumentRoot d:/html </VirtualHost>
|