Sun ONE 로고     이전      목차      색인      다음     
Sun ONE Application Server 7, Update 1 관리자 설명서



웹 서버 플러그 인 구성

이 장에서는 Sun ONE Application Server가 HTTP (HyperText Transfer Protocol) 요청을 처리하는 방법과 Sun ONE Application Server에 웹 서버 플러그 인을 구성 및 사용하는 방법에 대해 설명합니다. 또한 Microsoft IIS 및 Apache 웹 서버에 웹 서버 플러그 인을 사용하고 구성하는 방법에 대해서도 설명합니다.

이 장에서는 다음 내용을 설명합니다.

웹 서버 플러그 인 정보

웹 서버 플러그 인은 Sun ONE Web Server 또는 Sun ONE Application Server가 특정 HTTP 요청을 다른 서버에 전달하도록 지시할 수 있도록 하는 HTTP 역 프록시 플러그 인입니다. 예를 들어, 인터넷에 연결된 웹 서버가 특정 웹 응용 프로그램의 요청을 회사 방화벽 뒤에 있는 응용 프로그램 서버로 전달하도록 구성할 수 있습니다.

Sun ONE Application Server 내에서 웹 서버 플러그 인을 통해 하나의 서버 인스턴스가 다른 서버 인스턴스로 HTTP (웹) 요청을 전달할 수 있습니다.

웹 서버 플러그 인은 다음 기능을 수행합니다.

  • 가능한 프록시 서버의 연결을 다시 사용합니다. 이를 통해 받는 요청을 처리하기 위해 새 연결을 열 필요가 없어집니다.
  • 웹 서버 플러그 인은 수신할 때마다 요청과 응답의 스트리밍을 시작합니다. 즉, 플러그 인은 원격 서버에 전달하기 전에 요청이나 응답이 완전히 수집될 때까지 기다리지 않습니다.
  • 웹 서버 플러그 인은 동일한 원격 서버에 대한 여러 아웃바운드 HTTP 연결을 필요에 따라 관리합니다. 웹 서버 플러그 인이 전달한 요청에 대해 형성된 연결을 아웃바운드 HTTP 연결이라고 합니다.

웹 서버 플러그 인의 작동 방식을 이해하려면 HTTP 요청의 기본을 이해하고, 특히 HTTP 요청을 처리하기 위해 Sun ONE Application Server가 사용하는 방법에 대해 알고 있어야 합니다.

클라이언트 요청 처리

Sun ONE Application Server는 HTTP 요청을 직접 수용하고 응답할 수 있는 응용 프로그램 서버입니다. 이 절에서는 HTTP 기본에 대해 설명하고 Sun ONE Application Server가 요청을 처리하는 방식에 대해 설명합니다. 이 절에서는 다음 항목에 대해 설명합니다.

HTTP 기본

요약하자면 HTTP/1.1 프로토콜은 다음과 같이 작동합니다.

  • 클라이언트(일반적으로 브라우저)가 서버에 대한 연결을 열고 요청을 보냅니다.
  • 서버가 요청을 처리하고, 응답을 생성한 다음 Connection: Close 헤더가 있으면 연결을 닫습니다.

요청은 요청된 자원을 나타내는 URI (Universal Resource Identifier)와 공백으로 구분된 HTTP 프로토콜 버전인 GET 또는 POST와 같은 메소드를 나타내는 행으로 구성됩니다.

이 메소드 뒤에는 일반적으로 헤더, 헤더의 끝을 나타내는 빈 줄 및 본DD문 데이터가 나옵니다. 헤더는 요청 또는 클라이언트 본문 데이터에 대한 다양한 정보를 제공합니다. 헤더는 일반적으로 POST 및 PUT 메소드의 경우에만 전송됩니다.

아래의 예의 요청은 브라우저가 foo.com 서버에게 /index.html의 자원을 전송하라는 요청을 전송합니다. 이 예에서는 메소드가 GET (요청의 시점이D 데이터를 보내는 것이 아니라 데이터를 받기 위한 것이므로)이기 때문에 본문 데이터가 전송되지 않습니다.


GET /index.html HTTP/1.0

User-agent: Mozilla

Accept: text/html, text/plain, image/jpeg, image/gif, */*

Host: foo.com


서버는 요청을 받아서 처리합니다. 서버는 여러 요청을 동시에 처리할 수 있지만 각 요청을 개별적으로 처리합니다. 각 요청은 요청 처리 프로세스를 구성하는 일련의 단계로 분리됩니다.

서버는 HTTP 프로토콜 버전, HTTP 상태 코드 및 공백으로 분리된 응답 구문이 포함된 응답을 생성합니다. 그 뒤에는 일반적으로 헤더가 나옵니다. 헤더의 끝은 빈 줄로 표시됩니다. 그 뒤에 응답의 본문 데이터가 있습니다. 일반적은 HTTP 응답은 다음과 같습니다.


HTTP/1.0 200 OK
Server: Standard/7.0
Content-type: text/html
Content-length: 83
<HTML>
<HEAD><TITLE>Hello World</Title></HEAD>
<BODY>Hello World</BODY>
</HTML>

상태 코드 및 응답 구문은 클라이언트에게 서버가 요청을 처리한 방식을 알립니다. 일반적으로 상태 코드 200이 반환되는 것은 요청이 성공적으로 처리되었으며 본문 데이터에 요청된 항목이 포함되어 있음을 의미합니다. 다른 결과 코드는 다른 서버나 브라우저 캐시로의 리디렉션, "404 Not Found"와 같은 여러 HTTP 오류 유형을 나타냅니다.

요청 처리 프로세스의 단계

Sun ONE Application Server가 처음 시작되면 특정 초기화 작업을 수행한 다음 클라이언트
(예: 브라우저)의 HTTP 요청을 대기합니다. 요청을 받으면 먼저 가상 서버를 선택합니다.

가상 서버가 선택되면 가상 서버의 obj.conf 파일은 다음 단계를 통해 요청 처리 방식을 지정합니다.

  1. AuthTrans (인증 변환)
  2. 요청에 전송된 인증 정보(예: 이름 및 암호)를 확인합니다.

  3. NameTrans (이름 변환)
  4. 논리적 URI를 논리적 파일 시스템 경로로 변환합니다.

  5. PathCheck (경로 확인)
  6. 로컬 파일 시스템의 유효성을 확인하고 요청자가 파일 시스템의 요청된 자원에 액세스 권한을 갖고 있는지 확인합니다.

  7. ObjectType (객체 유형 지정)
  8. 요청된 자원의 MIME (Multi-purpose Internet Mail Encoding) 유형(예: text/html, image/gif 등)을 결정합니다.

  9. Service (응답 생성)
  10. 응답을 생성하여 클라이언트에 반환합니다.

  11. AddLog (로그 항목 추가)
  12. 로그 파일에 항목을 추가합니다.

  13. Error (서비스)
  14. 이 단계는 이전 단계에서 오류가 발생한 경우에만 실행됩니다. 오류가 발생하면 서버는 오류 메시지를 기록하고 프로세스를 취소합니다.

웹 서버 플러그 인 구성

웹 서버 플러그 인의 구성 및 동작은 구성 파일 집합에 의해 결정됩니다. Sun ONE Application Server는 클라이언트의 요청을 처리할 때마다 이 파일에 정의된 구성을 찾습니다. 구성 파일의 이름은 obj.conf 및 init.conf입니다. obj.conf 파일에는 server1-obj.conf와 같이 가상 서버의 이름이 접두어로 붙습니다. 자세한 내용은 "obj.conf 파일"을 참조하십시오.

Sun ONE Application Server의 각 인스턴스에는 시작할 때 서버가 참조하는 자체 init.conf 파일이 있습니다.

이전 항목에서 설명했듯이 obj.conf 구성 파일에는 Sun ONE Application Server에게 클라이언트 요청 및 응답 프로세스의 각 단계에서 무엇을 수행할지 지시하는 지시(지시문)가 포함되어 있습니다. 각 지시문은 SAF (Server Application Function)를 호출합니다.

obj.conf 파일은 Sun ONE Application Server의 운영에 필수적인 파일입니다. 관리 인터페이스를 통해 서버를 변경하면 시스템은 obj.conf를 자동으로 업데이트합니다.

init.conf 구성 파일은 초기화 도중 서버를 구성하는 변수의 값을 설정합니다. 서버는 서버 시작 도중 이 파일에 지정된 구성 매개 변수를 실행합니다. 자세한 내용은 Sun ONE Application Server Administrator? Configuration File Reference를 참조하십시오.

다음 그림에서는 웹 브라우저, 프런트엔드 웹 서버, 백엔드 응용 프로그램 서버 및 웹 서버 플러그 인의 service-passthrough와 auth-passthrough SAF 사이의 관계를 설명합니다.

   웹 브라우저, 웹 서버, 응용 프로그램 서버, 웹 서버 플러그 인 SAF 사이의 관계
이 그림은 웹 브라우저, 프런트엔드 웹 서버, 백엔드 응용 프로그램 서버 및 웹 서버 플러그 인의 service-passthrough와 auth-passthrough SAF 사이의 관계를 보여줍니다.

웹 서버 플러그 인 SAF 참조

이 절에서는 다음 SAF (Server Application Functions)의 기능과 동작에 대해 설명합니다.

init-passthrough

init-passthrough 기능은 웹 서버 플러그 인을 초기화합니다. 이 기능을 호출해야 웹 서버 플러그 인을 사용할 수 있습니다.

예:

Init fn="load-modules" shlib="c:/plugins/passthrough.dll" funcs="init-passthrough,auth-passthrough,check-passthrough,service- passthrough" NativeThread="no"

Init fn="init-passthrough"

auth-passthrough

auth-passthrough SAF는 AuthTrans-class 지시문에서 사용할 수 있습니다.

auth-passthrough 기능은 받는 HTTP (웹) 요청에서 중개 서버에서 실행 중인 service-passthrough가 인코딩한 클라이언트 정보를 검사합니다. 클라이언트 정보에는 다음이 포함됩니다.

  • 요청을 보낸 수신자의 IP 주소
  • 보낸 클라이언트가 사용하는 SSL 키 크기
  • 보낸 클라이언트가 제시하는 SSL 클라이언트 인증서

auth-passthrough가 인코딩된 클라이언트 정보를 감지하면 요청을 service-passthrough가 실행 중인 매개 서버가 전달한 요청이 아니라 보낸 클라이언트의 직접 요청으로 간주합니다.

다음과 같은 2계층 배포 시나리오에서 유용합니다.

  • Sun ONE Application Server 인스턴스가 회사 방화벽 뒤의 두 번째 방화벽에 의해 숨겨진 경우
  • S1AS 인스턴스에 직접 허용된 클라이언트 연결이 없는 경우

이러한 네트워크 아키텍처에서 클라이언트는 항상 프록시 플러그 인이 실행 중인 프런트엔드 웹 서버에 연결합니다. 이 웹 서버는 요청을 Sun ONE Application Server로 전달하는 서버입니다. 이것은 Sun ONE Application Server가 프록시 호스트(이 경우 웹 서버)의 요청만 받을 수 있고 클라이언트 호스트에서 직접 받을 수 없습니다. 즉, 두 개의 방화벽 뒤에 있는 Sun ONE Application Server 인스턴스에 배포된 응용 프로그램이 클라이언트의 IP 주소와 같은 클라이언트 정보를 쿼리하면 응용 프로그램은 프록시 호스트 IP를 받게 됩니다. 이것이 전달된 요청의 실질적인 보낸 호스트이기 때문입니다. auth-passthrough SAF를 사용하면 이 정보 대신 원격(프록시를 거친) 클라이언트 정보가 나타나도록 이 동작을 수정할 수 있습니다.

auth-passthrough를 사용하면 인증에 사용될 수 있는 정보(예를 들어, 요청을 보낸 측의 IP 주소)를 무시하는 것이 가능하기 때문에 auth-passthrough가 실행 중인 서버에는 신뢰할 수 있는 클라이언트나 서버만 연결할 수 있도록 하는 것이 중요합니다. 더욱 주의하는 의미에서 회사 방화벽 뒤의 서버에서만 auth-passthrough를 실행하는 것이 좋습니다. 인터넷을 통해 액세스할 수 있는 서버에서는 auth-passthrough SAF를 실행하지 않는 것이 좋습니다. auth-passthrough SAF는 보낸 클라이언트에 대한 관련 정보가 요청된 경우에만 사용해야 합니다.

위에서 설명한 시나리오의 경우 SSL 클라이언트 인증을 웹 서버에 대해서만 켜고 응용 프로그램 서버의 경우에는 항상 꺼서 구성이 제대로 작동하도록 할 수 있습니다.

명령 예:

AuthTrans fn="auth-passthrough"

service-passthrough

service-passthrough SAF는 Service-class 지시문에서 사용할 수 있습니다.

service-passthrough SAF는 한 서버의 요청을 다른 서버로 전달하여 처리할 수 있습니다. 원래 요청이 수신된 연결 유형에 독립적으로, 원격 서버에 대해 SSL 또는 비 SSL (HTTPS 또는 HTTP) 연결을 사용하도록 service-passthrough SAF를 구성할 수 있습니다. service-passthrough SAF는 원격 서버에서 실행 중인 auth-passthrough 함수에 의해 디코딩될 수 있는 보낸 클라이언트에 대한 정보를 인코딩합니다.

service-passthrough 지시문은 다음과 같이 obj.conf 구성 파일에서 다른 지시문과 결합하여 사용합니다.

<Object name="passthrough">

ObjectType fn="force-type" type="magnus-internal/passthrough"

Error reason="Bad Gateway" fn="send-error" uri="$docroot/badgateway.html"

</Object>

<Object name="default">

....

NameTrans fn="assign-name" from="(/webapp1|/webapp1/*)" name="passthrough"

...

</Object>

백엔드 응용 프로그램 서버가 다운되면 사용자에게는 로컬 HTML 파일인 badgateway.html이 대신 표시됩니다. service-passthrough SAF를 실행 중인 서버가 액세스 권한을 갖고 있는 파일을 서비스해야 하고 거부된 요청만 백엔드 응용 프로그램 서버에 전달해야 하는 경우 ObjectType 행을 다음과 같이 변경합니다.

ObjectType fn="check-passthrough" type="magnus-internal/passthrough"

check-passthrough

check-passthrough SAF는 ObjectType-class 지시문에서 사용할 수 있습니다.

check-passthrough 함수는 요청된 자원(예: HTML 문서 또는 GIF 이미지)을 로컬 서버에서 사용할 수 있는지 확인합니다. 요청된 자원이 로컬에 존재하지 않으면 check-passthrough SAF는 요청을 다른 서버로 전달하여 service-passthrough SAF가 처리하도록 지시하는 유형을 설정합니다.

매개 변수:

type - (선택 사항) 요청 자원이 존재하지 않을 경우 설정할 유형입니다. 기본값은 "magnus-internal/passthrough"입니다.

예

ObjectType fn="check-passthrough"

웹 서버 플러그 인 사용

Sun ONE Web Server나 Sun ONE Application Server 인스턴스에 플러그 인을 추가하려면 다음 단계를 수행합니다.

  1. libpassthrough.so (UNIX의 경우)가 install_dir/plugins/passthrough/bin 디렉토리에 있고 passthrough.dll 파일(Windows의 경우)이 install_dir/bin 디렉토리에 있는지 확인합니다. 플러그 인을 Sun ONE Web Server 6.0에 추가할 때는 플러그 인을 Sun ONE Application Server 7 설치에서 복사해야 합니다.
  2. 다음 행을 install_dir/config/init.conf (Sun ONE Application Server 7의 경우) 또는 install_dir/config/magnus.conf (Sun ONE Web Server 6.0의 경우) 구성 파일에 추가합니다. 각 행은 Init로 시작되며 모두 한 줄에 들어갑니다.
  3. Windows:

    Init fn="load-modules" shlib="c:/install_dir/bin/passthrough.dll" funcs="init-passthrough,auth-passthrough,check-passthrough, service-passthrough" NativeThread="no"

    Init fn="init-passthrough"

    UNIX:

    Init fn="load-modules" shlib="install_dir/plugins/passthrough/bin/libpassthrough.so" funcs="init-passthrough,auth-passthrough,check-passthrough,service-passthrough" NativeThread="no"

    Init fn="init-passthrough"

  4. config/appserver-server-instance-obj.conf 구성 파일의 맨 위에 다음 행을 추가하여 passthrough <Object>를 obj.conf에 추가합니다. Sun ONE Application Server에서는 config/<appserver-server-instance>-obj.conf 파일에 대해 이 단계를 수행해야 합니다.
  5. <Object name="passthrough">
    ObjectType fn="force-type" type="magnus-internal/passthrough"
    Service type="magnus-internal/passthrough" fn="service-passthrough" servers="
    server"
    Error reason="Bad Gateway" fn="send-error" uri="$docroot/badgateway.html"
    </Object>

    여기서 서버는 다음 형식의 URL입니다.

    http://servername:port

  6. install_dir/config/obj.conf 구성 파일의 기본 객체 맨 위에 다음과 같은 행을 추가하여 전달할 URI를 구성합니다.
  7. NameTrans fn="assign-name" from="(/uri|/uri/*)" name="passthrough"

    uri는 원격 서버에 배포된 웹 응용 프로그램의 컨텍스트 루트이며 passthrough는 단계 3에서 할당된 obj.conf의 <Object> 이름입니다.

    예:

    <Object name="default">
    ...
    NameTrans fn="assign-name" from="(/webapp1|/webapp1/*)" name="passthrough"
    ...
    </Object>

  8. 서버를 다시 시작합니다.



주

Solaris 및 Linux의 경우 플러그 인 라이브러리의 이름은 libpassthrough.so입니다. Windows에서 플러그 인 라이브러리의 이름은 passthrough.dll
입니다.



웹 서버 플러그 인을 사용하도록 Microsoft IIS 구성

Microsoft Internet Information Services가 웹 서버 플러그 인을 사용하도록 구성하려면 Microsoft IIS에서 사용할 수 있도록 웹 서버 플러그 인을 구성하고, 웹 서버 플러그 인을 사용하도록 Microsoft IIS를 구성해야 합니다.

또한 서버 풀이 여러 서버에서 실행되는 여러 응용 프로그램을 처리하도록 구성할 수도 있습니다.

이 절에서는 다음 항목에 대해 설명합니다.

IIS에서 사용할 수 있도록 웹 서버 플러그 인 구성

웹 서버 플러그 인을 IIS에서 사용할 수 있도록 구성하려면 다음 작업을 수행하십시오.

  1. C:\ 명령줄 프롬프트에서 다음 명령을 입력하여 IIS wwwroot 디렉토리 아래에 웹 서버 플러그 인용 디렉토리를 만듭니다.
  2. md \Inetpub\wwwroot\sun-passthrough

  3. 플러그 인 파일을 C:\Inetpub\wwwroot\sun-passthrough 디렉토리에 복사합니다.
  4. 텍스트 편집기를 사용하여 Sun ONE Application Server가 설치된 시스템의 URL을 C:\Inetpub\wwwroot\sun-passthrough\sun-passthrough.properties 파일에 추가합니다.
  5. 텍스트 편집기를 통해 다음 정보를 추가해야 합니다.

    server=http://appservername:port

    여기서 appservername은 Sun ONE Application Server가 설치된 시스템의 호스트 이름 또는 IP 주소이며 port는 이것이 수신하는 포트의 번호입니다(이 값은 일반적으로 80으로 설정됨).

  6. Sun ONE Application Server가 서비스할 컨텍스트 루트를 C:\Inetpub\wwwroot\sun-passthrough\sun-passthrough.properties 파일에 나열합니다.
  7. 이러한 컨텍스트 루트는 Sun ONE Application Server에 배포된 응용 프로그램의 컨텍스트 루트에 해당해야 합니다. 이들 컨텍스트 루트에 대한 요청은 Sun ONE Application Server이 서비스해야 하며 다른 요청은 IIS 웹 서버에서 처리합니다. 요청을 웹 응용 프로그램에 전달할 명령줄은 다음과 같습니다.

    passthrough=/webapplication

    여기서 /webapplication은 웹 응용 프로그램의 컨텍스트 루트입니다. 모든 요청을 Sun ONE Application Server에 전달하려면 다음 행을 추가하십시오.

    passthrough=/

이제 Microsoft IIS 루트 디렉토리에 웹 서버 플러그 인을 구성했습니다. 이제 작업을 완료하려면 Microsoft IIS가 웹 서버 플러그 인을 사용하도록 구성해야 합니다.

IIS가 웹 서버 플러그 인을 사용하도록 구성

IIS가 웹 서버 플러그 인을 사용하도록 구성하려면 Windows 인터넷 서비스 관리자를 열어야 합니다. 인터넷 서비스 관리자는 "제어판" 폴더의 "관리 도구" 폴더에 있습니다.

인터넷 서비스 관리자를 열고 다음 작업을 수행합니다.

  1. 플러그 인을 활성화할 웹 사이트를 선택합니다. 이 웹 사이트의 이름은 일반적으로 "기본 웹 사이트"입니다.
  2. 웹 사이트를 마우스 오른쪽 버튼으로 누른 다음 "속성"을 선택하여 "속성" 노트북을 엽니다.
  3. "ISAPI 필터" 탭을 열고 "추가" 버튼을 누른 다음 아래 단계에 따라 새 ISAPI 필터를 추가합니다.
    1. "필터 이름" 필드에 Sun ONE Application Server를 입력합니다.
    2. "실행 파일" 필드에 C:\Inetpub\wwwroot\sun-passthrough\sun-passthrough.dll을 입력합니다.
    3. "확인"을 누르고 "속성" 노트북을 닫습니다.

  4. 이제 새 가상 디렉토리를 만들어서 구성해야 합니다. 다음 단계에 따라 새 가상 디렉토리를 만들고 구성하십시오.
    1. 기본 웹 사이트를 마우스 오른쪽 버튼으로 누른 다음 "가상 디렉토리"를 선택합니다. "가상 디렉토리 작성 마법사"가 열립니다.
    2. "별칭" 필드에 sun-passthrough를 입력합니다.
    3. "디렉토리" 필드에 C:\Inetpub\wwwroot\sun-passthrough를 입력합니다.
    4. "실행 권한" 확인란이 선택되어 있고 다른 모든 사용 권한 확인란은 선택되어 있지 않아야 합니다.
    5. "마침"을 누릅니다.

  5. 웹 서버를 중지했다 시작해야 새 설정이 적용됩니다. 웹 서버를 중지하려면 웹 사이트를 오른쪽 버튼으로 누르고 "중지"를 선택합니다. 웹 서버를 시작하려면 웹 사이트를 오른쪽 버튼으로 누르고 "시작"을 선택합니다.
  6. 그 후 웹 브라우저에 다음 사항을 입력하여 웹 응용 프로그램 컨텍스트 루트에 액세스합니다.

    http://webservername/webapplication

    여기서 webservername은 웹 서버의 호스트 이름 또는 IP 주소이며, /webapplication은 웹 서버, 웹 서버 플러그 인 및 Sun ONE Application Server가 제대로 작동하는지 확인하기 위해 C:\Inetpub\wwwroot\sun-passthrough\sun-passthrough.properties 파일에 나열된 컨텍스트 루트입니다.

여러 서버 풀 구성

sun-passthrough.properties 파일에 서버 풀을 구성하여 웹 응용 프로그램을 여러 응용 프로그램 서버로 분할할 수 있습니다. 즉, 일부 응용 프로그램은 한 서버 집합에서 실행하고 다른 응용 프로그램은 다른 서버 집합에서 실행할 수 있습니다. 각 서버 풀마다 문자와 숫자로 구성된 고유한 이름을 선택합니다. "웹 서버 플러그 인을 사용하도록 Microsoft IIS 구성" 절의 설명대로 Microsoft IIS에 대한 웹 서버 플러그 인을 설치 및 구성하는 단계를 마쳤으면 C:\Inetpub\wwwroot\sun-passthrough\sun-passthrough.properties 파일을 편집하고 서버 풀에 대해 선택한 고유 이름에 관련 서버 및 passthrough 등록 정보 행을 접두어로 추가합니다. 서버 풀 이름 뒤에는 점(.)을 입력합니다.

예를 들어, sun-passthrough.properties 파일의 다음 행은 두 개의 서버 풀을 정의합니다.
첫 번째 서버 풀은 server-a와 컨텍스트 루트 /app1에 대한 서비스 요청으로 구성됩니다. 두 번째 서버 풀은 server-b와 /app2 및 /app3 컨텍스트 루트에 대한 서비스 요청으로 구성됩니다.

server=http://server-a

passthrough=/app1

serverpool2.server=http://server-b

serverpool2.passthrough=/app2

serverpool2.passthrough=/app

샘플 sun-passthrough.properties 파일

# Sun ONE Application Server web server plugin for IIS

#

# This file is used to configure the Sun ONE Application Server web server

# plugin for IIS. Lines beginning with a '#' are ignored.

# server

#

# The server property specifies the URL of an application server. If multiple

# server properties are given, the plugin will distribute load across the

# specified application servers.

#

server=http://localhost:8080

# passthrough

#

# The passthrough property specifies the context root (virtual directory) of a

# web application. Requests for the given context root will be passed to the

# application server for processing. If 'passthrough=/' is specified, all

# requests will be passed to the application server for processing.

#

# passthrough properties should be ordered from most to least specific. For

# example, 'passthrough=/apps/app1' should appear before 'passthrough=/apps'.

#

# Multiple passthrough properties are allowed.

#

#passthrough=/webapp

#passthrough=/servlets

#passthrough=*.jsp

passthrough=/

# prefix

#

# The prefix property specifies the IIS virtual directory that contains the

# plugin DLL, sun-passthrough.dll.

#

prefix=/sun-passthrough

# error-url

#

# The error-url property specifies the URL of a page to redirect the client to

# when the application server is unavailable.

#

#error-url=/badgateway.htm

# It is possible to configure multiple server pools by prefixing the server

# and passthrough property names with a pool name followed by a period ('.').

# Pool names can be any sequence of letters and numbers.

#

# For example, the following properties define two server pools. One server

# pool will service the web applications at '/app1' and the other will service

# the web applications at '/app2' and '/app3':

#

#serverpool1.server=http://server-a

#serverpool1.passthrough=/app1

#

#serverpool2.server=http://server-b

#serverpool2.passthrough=/app2

#serverpool2.passthrough=/app3

웹 서버 플러그 인을 Apache 서버에 사용하도록 구성

이 절에서는 Apache 소스 코드를 컴파일하고 Apache 웹 서버의 설치를 구성하는 방법에 대해 설명합니다.

  1. 최신 Apache 배포판은 www.apache.org에서 다운로드합니다.
  2. 소스 배포판의 압축을 풉니다. 소스 배포판은 압축되어 있습니다. Apache 1.3.22를 설치하는 경우 소스 배포판의 이름은 apache_1.3.22.tar.gz입니다.

  3. 다음 명령을 사용하여 압축 파일의 압축을 풉니다.
  4. $ tar -zxvf apache_1.3.26.tar.gz

    이 명령은 현재 작업 디렉토리에 apache_1.3.26이라는 디렉토리를 만듭니다.

  5. 이제 Apache 소스 코드를 컴파일하도록 환경을 구성해야 합니다. 소스 배포판에는 환경에 Apache를 제대로 컴파일하기 위해 필요한 지원 파일(예: 헤더, 공유 라이브러리 및 유틸리티 프로그램)이 있는지 검사하는 configure라는 스크립트가 함께 제공됩니다.
  6. 환경을 구성하려면 Apache 소스 디렉토리로 이동하여 다음 단계를 계속합니다.

    1. Apache를 Solaris나 Linux에 설치할 때 다음 경로가 있는지 확인합니다.
      • CC=/usr/dist/share/devpro/5.x-sparc/bin/cc
      • PATH에 있어야 하며 이 명령은 다음 경로에서 찾을 수 있습니다. /usr/ccs/bin
      • 파일을 작성합니다. 이 명령은 다음 경로에서 찾을 수 있습니다. /usr/ccs/bin/make

    2. 다음 명령을 실행합니다.
    3. $ ./configure &ndash;enable-module=proxy --prefix=/usr/local/apache

    위의 명령에 지정된 디렉토리는 변수입니다. Apache를 설치한 경로를 지정할 수 있습니다. prefix 인수는 Apache를 설치할 위치를 나타냅니다. 이 명령을 실행하면 화면에 몇 줄의 출력이 나타납니다. 이 명령은 시스템 구성에 따라 빌드할 Makefile을 작성합니다. configure에 오류가 있으면 다음을 진행하기 전에 설치해야 하는 헤더 파일이나 유틸리티 프로그램이 손실될 수 있습니다.

  7. configure 스크립트가 성공적으로 실행된 후 다음과 같이 make 명령을 사용하여 Apache를 컴파일할 수 있습니다.
  8. $ make

    이 명령을 실행하면 프로세스가 Apache 소스 코드를 컴파일하고 Apache를 링크하고 있음을 나타내는 몇 줄의 출력이 화면에 표시됩니다. 이 프로세스는 대부분 오류 없이 종료됩니다. 하지만 오류가 발생하면 Apache의 모든 라이브러리 파일 및 유틸리티 프로그램이 제대로 다운로드되었는지 확인하십시오.

  9. 이제 Apache를 설치해야 합니다. Apache는 /usr/local/apache 디렉토리(또는 사용자가 지정한 다른 디렉토리)에 설치됩니다. Apache를 설치하려면 다음 명령을 실행하십시오.
  10. $ make install

    이 명령이 성공적으로 실행되면 시스템에 Apache가 설치됩니다. 그러면 다음 디렉토리에서 Apache의 설치 파일을 볼 수 있습니다.

    /usr/local/apache

    기본 구성 파일인 httpd.conf는 /usr/local/apache/ 디렉토리에 설치됩니다.

  11. 다음 명령을 실행하여 Apache를 구성합니다.
  12. $ Configure Apache

    Apache는 httpd.conf 파일을 통해 구성됩니다. 이 파일은 Apache 서버의 여러 동작 매개 변수를 결정하는 다양한 Apache 지시문으로 구성됩니다. Apache 단순 설치의 경우 다음 몇 개의 지시문을 수정해야 합니다.

    • Server Root &ldquo; (Server Root는 Apache를 설치한 디렉토리. 예: Server Root &/usr/local/apache or /space/apache).
    • Port &ldquo; 5000&rdquo; (사용자 선택)&rdquo;

그러면 Apache가 기본 동작 및 웹 서비스에 맞게 구성됩니다. 설정하고자 하는 다른 매개 변수가 있는 경우 구성 파일을 참조하십시오.

  1. Apache에는 Apache를 시작, 중지 및 다시 시작하는 apachectl이라는 스크립트가 번들되어 있습니다. Apache를 시작하려면 다음 명령을 실행합니다.
  2. $ /usr/local/apache/bin/apachectl start

    Apache를 중지하려면 다음 명령을 실행합니다.

    use /usr/local/apache/bin/apachectl stop

    시작한 뒤에는 Apache의 설치를 테스트할 수 있습니다. Apache가 실행되면 웹 브라우저에 다음 명령을 입력하십시오. http://localhost/. 제대로 설치가 완료되어 Apache가 실행된 경우 메시지가 표시되는 테스트 페이지가 나타납니다.


이전      목차      색인      다음     
Copyright 2003 Sun Microsystems, Inc. 모든 권리는 저작권자의 소유입니다.