세션 추적 옵션
HTTP 세션 지원에는 세션 추적도 포함됩니다. 세션 추적에 쿠키, URL 재작성 또는 SSL(Secure Sockets Layer) 정보를 사용할 수 있습니다.
쿠키를 사용하여 세션 추적
쿠키를 사용한 세션 추적이 기본값입니다. 쿠키를 사용하여 세션을 추적하는 데에는 특별한 프로그래밍이 필요하지 않습니다.
URL 재작성을 사용한 세션 추적
세션 추적에 URL 재작성을 사용하는 애플리케이션은 특정 프로그래밍 가이드라인을 준수해야 합니다. 애플리케이션 개발자는 다음을 수행해야 합니다.
- URL 인코딩을 위한 서블릿 프로그래밍
- 애플리케이션에 대한 시작점으로 서블릿 또는 JSP(JavaServer Pages) 파일 제공
또한 URL 재작성 사용에서는 세션 관리 기능에서 URL 재작성을 사용으로 설정해야 합니다.
URL 인코딩을 위한 세션 서블릿 프로그래밍
서블릿이 URL을 브라우저에 리턴하는지 또는 경로를 재지정하는지에 따라 encodeURL 메소드 또는 encodeRedirectURL 메소드를 서블릿 코드에 포함시키십시오. 다음은 현재 서블릿 코드에서 대체할 사항을 보여주는 예제입니다.
브라우저에 리턴할 재작성 URL
현재 다음과 같은 명령문이 있다고 가정합니다.
out.println("<a href=\"/store/catalog\">catalog<a>");
URL을 출력 스트림에 전송하기 전에 encodeURL 메소드를 호출하도록 서블릿을 변경하십시오.
out.println("<a href=\"""); out.println(response.encodeURL ("/store/catalog")); out.println("\">catalog</a>"");
경로 재지정할 재작성 URL
현재 다음과 같은 명령문이 있다고 가정합니다.
response.sendRedirect ("http://myhost/store/catalog");
URL을 출력 스트림에 전송하기 전에 encodeRedirectURL 메소드를 호출하도록 서블릿을 변경하십시오.
response.sendRedirect (response.encodeRedirectURL ("http://myhost/store/catalog"));
encodeURL 메소드 및 encodeRedirectURL 메소드는 HttpServletResponse 오브젝트의 파트입니다. 이러한 호출은 URL을 인코딩하기 전에 URL 재작성이 구성되는지 확인합니다. URL 재작성이 구성되지 않으면 호출이 원래 URL을 리턴합니다.

- 관리 콘솔에서 를 클릭하십시오.
- 추가 특성 아래에서 사용자 정의 특성을 선택하십시오.
- 사용자 정의 특성 페이지에서 새로 작성을 클릭하십시오.
- 페이지 설정에서 이름 필드에 구성할 특성을 입력하고 값 필드에 설정할 값을 입력하십시오.
- 적용 또는 확인을 클릭하십시오.
- 콘솔 작업 표시줄의 저장을 클릭하여 구성 변경사항을 저장하십시오.
- 서버를 다시 시작하십시오.
시작점으로 서블릿 또는 JSP 파일 제공
초기 화면에 표시된 대로 애플리케이션에 대한 시작점에서는 세션 사용이 필요하지 않을 수 있습니다. 그러나 일반적으로 애플리케이션에 세션 지원이 필요한 경우(서블릿과 같은 애플리케이션의 일부가 세션 지원을 필요로 함을 의미함) 세션이 작성된 후 세션 지원을 필요로 하는 서블릿(또는 다른 애플리케이션 컴포넌트)의 세션 ID를 영구화하기 위해 모든 URL이 인코딩됩니다.
다음 예제는 JSP 파일에 Java™ 코드를 임베드하는 방법을 보여줍니다.
<%
response.encodeURL ("/store/catalog");
%>
SSL 정보를 사용한 세션 추적(더 이상 사용되지 않음)

SSL(Secure Sockets Layer) 정보를 사용한 세션 추적에는 특별한 프로그래밍이 필요하지 않습니다.
SSL 정보를 사용하려면 세션 관리 특성 페이지에서 SSL ID 사용을 켜십시오. SSL 세션 ID는 웹 브라우저와 HTTP 서버 사이에서 협상되기 때문에 이 ID는 HTTP 서버 실패 후 유지되지 않습니다. 그러나 외부 HTTP 서버가 WebSphere Application Server와 브라우저 사이에 있는 경우 애플리케이션 서버의 실패는 SSL 세션 ID에 영향을 주지 않습니다.
IBM® HTTP Server 및 iPlanet 웹 서버에서만 SSL 추적이 지원됩니다. 웹 서버에서 옵션을 구성하여 SSL 세션 ID의 지속 시간을 제어할 수 있습니다. 예를 들어, IBM HTTP Server에서 구성 변수 SSLV3TIMEOUT를 설정하여 SSL 세션 ID에 적절한 지속 시간을 제공합니다. 너무 짧은 간격으로 인해 세션이 조기 종료될 수 있습니다. 또한 일부 웹 브라우저에는 SSL 세션 ID의 지속 시간에 영향을 미치는 자체 타이머가 있을 수 있습니다. 이러한 웹 브라우저는 세션 추적을 위한 유용한 메커니즘 역할을 하기에 충분히 긴 시간 동안 SSL 세션 ID를 활성 상태로 두지 않을 수 있습니다. WebSphere Application Server의 내부 HTTP Server도 SSL 추적을 지원합니다.
복제된 환경에서 SSL 세션 ID를 세션 추적 메커니즘으로 사용하는 경우 쿠키 또는 URL 재작성을 사용하여 세션 선호도를 유지하십시오. 쿠키 또는 재작성 URL은 웹 서버가 각 요청에 대해 세션을 적절하게 같은 서버로 라우팅할 수 있도록 하는 세션 선호도 정보를 포함합니다.