2차 도메인 Cookie 값을 공유하기 위해서 이것저것 테스트를 다해보았다.
조건
1. A 서버를 aaa.officeappl.com 으로 설정한다.
2. B 서버를 bbb.officeappl.com 으로 설정한다.
3. A서버에서 서버네임을 쿠키로 등록한다.
4. B서버에서 쿠키를 불러들인다.
위 설정을 위해, 도메인을 구입하고 2차도메인을 생성하였다. 이건 웹 호스팅 Site에서 무료DNS 서비스를
이용하니 간편하게 되었다.
A서버의 코드이다.
<% Cookie cookie = new Cookie("servername","kplus"); cookie.setDomain("officeappl.com"); cookie.setPath("/"); cookie.setMaxAge(1*60*60); response.addCookie(cookie);
Cookie [] cookies = request.getCookies(); if(cookies != null){ for(Cookie cook : cookies){ out.write(cook.getName()); out.write(" / "); out.write(cook.getValue()); } } %> |
간단하게 쿠키 값으로 servername값에 kplus 라고 등록한 후, 등록된 쿠키를 조회하였다. 여기서 주의사항은
setDomain 으로 1차 도메인값을 지정해주는 것이다. 또한, 타 서버에서 context path를 어떠한 것으로 할지 모르기때문에
setPath 를 root 값인 "/"으로 해주어야 한다.
B서버의 코드이다.
<% Cookie[] cookies = request.getCookies(); if (cookies != null) { for (int i = 0; i < cookies.length; i++) { out.println(cookies[i].getName() + ":" + cookies[i].getValue() + "<br>"); } } %> |
위와 같이 하니 쿠키의 연동이 잘되었다. 간단한 SSO를 구현하기 위해서는 필수적으로 필요한 코딩기법이다.
한 30분정도 삽질을 했지만, 삽질의 이유가 PATH문제임을 알게되니 기분이 좋군.ㅎㅎㅎ
이상임.
-2014.02.03 랑이씀 -
'Program > JSP' 카테고리의 다른 글
[ JSTL 문법 정리 ] (0) | 2011.01.07 |
---|---|
JSPF 를 이용한 INCLUDE 설명 (5) | 2010.05.03 |
JSP에서 Servlet 이외의 URL 접급 차단법 (0) | 2010.03.05 |
[펌] MINE TYPE 정보 (0) | 2010.02.18 |
POST방식 헤더 값에 대한 정보 (1) | 2009.11.23 |