Sun Java System Web Proxy Server 4.0.8 관리 설명서

자동 구성 파일 이해

또한 Proxy Server를 관리하는 사용자로서 클라이언트 자동 구성 파일을 만들고 배포합니다.

자동 구성 파일의 기능

자동 구성 파일은 클라이언트 및 서버 인터넷 응용 프로그램 개발용 소형 객체 기반 스크립팅 언어인 JavaScript로 작성됩니다. 브라우저는 JavaScript 파일을 해석합니다.

브라우저를 처음으로 로드하면 자동 구성 파일이 다운로드됩니다. 파일은 브라우저가 URL을 사용하여 접근할 수 있는 모든 위치에 보관할 수 있습니다. 예를 들어 파일을 웹 서버에 보관할 수 있습니다. 브라우저가 파일 :// URL을 사용하여 접근할 수 있는 경우 파일을 네트워크 파일 시스템에 보관할 수도 있습니다.

프록시 구성 파일은 JavaScript로 작성됩니다. JavaScript 파일은 브라우저가 각 URL에 대해 사용해야 하는 프록시 서버(있는 경우)를 결정하는 단일 함수(FindProxyForURL이라고 함)를 정의합니다. 브라우저는 브라우저가 실행되고 있는 시스템의 호스트 이름 및 가져올 URL의 두 가지 매개 변수를 JavaScript 함수로 보냅니다. JavaScript 함수는 진행 방법을 알려 주는 브라우저에 값을 반환합니다.

자동 구성 파일을 사용하여 다양한 유형의 URL, 여러 서버 또는 하루 중 다양한 시간에 대해 서로 다른 프록시를 지정하거나 프록시를 전혀 지정하지 않을 수 있습니다. 즉, 여러 개의 세분화된 프록시를 가질 수 있는데, 예를 들면 어떤 한 프록시는 .com 도메인에 서비스를 제공하고 다른 프록시는 .edu 도메인에 서비스를 제공하고 또 다른 프록시는 그 이외의 모든 도메인에 서비스를 제공하는 것과 같습니다. 이 방법을 사용하면 여러 프록시가 모두 동일한 문서를 저장하는 대신 단일 파일 복사본만 캐시에 저장되기 때문에 로드를 나누고 프록시 디스크를 보다 효율적으로 사용할 수 있습니다.

또한 자동 구성 파일은 프록시 페일오버를 지원하기 때문에 프록시 서버를 사용할 수 없는 경우 브라우저가 자연스롭게 다른 프록시 서버로 전환됩니다.

Web Server로 프록시에 액세스

프록시 서버에 하나 이상의 자동 구성 파일을 저장할 수 있으며 프록시 서버가 문서만 자동 구성 파일인 웹 서버의 역할을 수행하게 할 수 있습니다. 이렇게 하면 프록시 관리자가 조직의 클라이언트에 필요한 프록시 자동 구성 파일을 유지 관리할 수 있습니다. 또한 파일을 중앙 위치에 보관할 수 있기 때문에 파일을 업데이트해야 하는 경우 한 번만 업데이트하면 모든 브라우저 클라이언트가 자동으로 업데이트 파일을 얻게 됩니다.

프록시 자동 구성 파일은 server- root/proxy-serverid/pac/ 디렉토리에 보관합니다. 브라우저에서 Proxies 탭에 파일의 URL을 입력하는 프록시 자동 구성 파일에 대한 URL을 입력합니다. 프록시의 URL 형식은 다음과 같습니다.

http://proxy.domain:port/URI

예를 들어 URL은 http://proxy.example.com이 될 수 있습니다. 호스트:포트 조합 다음에 URL의 일부로 URI를 사용하는 경우템플리트를 사용하여 다양한 자동 구성 파일에 대한 액세스를 제어할 수 있습니다. 예를 들어 /proxy.pac라고 하는 자동 구성 파일이 포함된 /test라는 URI를 만드는 경우 자원 패턴이 http://proxy.mysite.com:8080/test/.*인 템플리트를 만들 수 있습니다. 이 템플리트를 사용하여 해당 디렉토리에 적합한 액세스 제어를 설정할 수 있습니다.

자동 구성 파일을 여러 개 만들고 다른 URL을 통해 액세스할 수 있습니다. 다음 표에는 클라이언트가 액세스할 때 사용하는 URI 및 URL의 몇 가지 예가 나와 있습니다.

표 17–1 샘플 URI 및 해당 URL

URI(경로) 

프록시에 대한 URL 

http://proxy.mysite.com 

/employees 

http://proxy.mysite.com/employees 

/group1 

http://proxy.mysite.com/group1 

/managers 

http://proxy.mysite.com/managers 

역방향 프록시에서 PAC 파일 사용

역방향 프록시가 작동하는 방식으로 인해 프록시 서버와 .pac 파일 서버를 사용하기가 쉽지 않습니다. 프록시 서버가 파일 요청을 받는 경우 요청이 로컬 .pac 파일 또는 원격 문서에 대한 것인지 여부를 결정해야 합니다.

프록시 서버가 .pac 파일에 대한 유지 관리 및 서비스를 수행하는 것 이외에 역방향 프록시 역할을 수행하도록 하려면 obj.conf 파일을 편집하여 NameTrans 함수 순서가 정확한지 확인합니다.

프록시 서버가 역방향 프록시 역할을 수행하도록 정규 매핑을 만듭니다. 이것은 일반적으로 프록시에게 모든 요청을 원격 컨텐트 서버로 라우팅하도록 지시합니다. 프록시 자동 구성 파일을 추가하여 /pac 같은 특정 디렉토리에 매핑할 수 있습니다. 이 경우 .pac 파일을 가지는 클라이언트는 다음과 같은 URL을 사용합니다.

http://proxy.mysite.com/pac

주의 – 주의 –

이러한 매핑을 통해 원격 컨텐트 서버에 유사한 디렉토리가 없는지 확인합니다.


프록시 자동 구성 파일의 지시문 및 함수가 다른 매핑 이전에 나타나는지 확인하기 위해 obj.conf 파일을 편집합니다. 프록시 서버는 일반적으로 요청을 수행하기 전에 모든 NameTrans 함수를 통해 실행되기 때문에 지시문과 함수가 먼저 표시되어야 합니다. 그러나 자동 구성 파일을 통해 프록시는 즉시 경로를 인식하고 .pac 파일을 반환합니다.

다음 예는 역방향 프록시를 사용하고 자동 구성 파일을 유지 관리하는 obj.conf 파일입니다.

<Object name="default">
NameTrans from="file:" fn="map" to="ftp:"
NameTrans from="/pac" fn="pac-map" name="file" 
	to="/ns-home/proxy/pac/proxy.pac"
NameTrans fn="redirect" from="http://foo.*" url="http://www.acme.com"
NameTrans from="/ns-icons" fn="pfx2dir" dir="/ns-home/ns-icons" name="file"
NameTrans fn="reverse-map" from="http://web.acme.com" 
	to="http://proxy.acme.com:8080"
NameTrans fn="map" from="http://proxy.acme.com:8080" 
	to="http://web.acme.com"
NameTrans fn="map" from="/" to="http://web.acme.com"
PathCheck fn="url-check"
Service fn="deny-service"
AddLog fn="flex-log" name="access"
AddLog fn="urldb-record"
</Object>