일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 주식 청약
- html
- SQL
- java
- 제이쿼리
- IPO
- MYSQL
- 리눅스
- jquery
- 코드이그나이터
- 7월 공모주 청약 일정
- linux
- JavaScript
- 공모주 청약
- 오라클
- 공모주
- 맥
- Eclipse
- css
- 주식
- Oracle
- codeigniter
- 주식 청약 일정
- 6월 공모주 청약 일정
- Stock
- php
- Stock ipo
- 공모주 청약 일정
- 자바
- 자바스크립트
- Today
- Total
개발자의 끄적끄적
[WAS]Tomcat에서 jsessionid가 URL에 붙는것 비활성화 하기 [펌] 본문
[WAS]Tomcat에서 jsessionid가 URL에 붙는것 비활성화 하기 [펌]
Tomcat서버에서 스프링 프레임웍의 <c:url> 태그를 사용할 경우 최초 호출시 URL에 jsessionid 가 붙여지게 됩니다. 이것은 버그가 아니고 의도적으로 설계된 것입니다.
새 세션이 만들어지면 클라이언트가 쿠키를 지원하는지 여부를 서버가 알 수 없으므로 쿠키와 URL에 모두 jsessionid 가 만들어 집니다. 클라이언트가 두 번째 요청부터 세션 쿠키를 보내오면 URL에 jsessionid를 붙이지 않고, 쿠키가 없으면 계속 URL에 jsessionid 를 붙이게 됩니다.
- 최초로 호출되는 index.jsp 파일
<script type="text/javaScript">
document.location.href = "**<c:url value='/cmm/main/mainPage.do'/>**";
</script>
- 호출된 URL
http://localhost:8080**/sht\_webapp/cmm/main/mainPage.do;jsessionid=1B7613A3D23C36061FD53EB9C81CBE2A**
여기에는 문제점이 있는데 <c:url> 태그를 잘못 사용하게 되면 필요한 자원이 제대로 다운로드 되지 않는경우가 발생합니다.
컨텍스트 패스를 붙이기 위해서 사용된 <c:url> 태그 입니다.
<img src="<c:url value='/'/>/images/logo.png" />
실제로 생성된 URL 입니다.
<img src="/sht_webapp;jesssionid=1B7613A3D23C36061FD53EB9C81CBE2A/images/logo.png" />
코드상에서의 해결책은 다음과 같이 바꿔서 쓰는 방법이 있겠습니다.
<img src="${pageContext.request.contextPath}/images/logo.png" />
다른 방법은 Tomcat 서버의 설정을 변경하여 jsessionid 의 URL rewriting을 아예 비활성화 하는 방법이 있습니다.
Tomcat 6.0.30 이상에서 사용할 수 있는 방법으로server.xml파일의 설정에 disableURLRewriting 속성에 true를 사용하는 방법입니다.
<Context docBase="simple_home" path="/sht_webapp" **disableURLRewriting="true" reloadable="true" />
Tomcat 7 과 Tomcat 8에서 Servlet 3.0 스펙 이상을 사용한다면 각 웹애플리케이션의web.xml파일의 태그에서 비활성화 할 수 있습니다. COOKIE 를 사용합니다.
<session-config>
<session-timeout>600</session-timeout>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
Tomcat 서버에서 jsessionid 의 URL Rewriting을 비활성화 하는 방법을 알아보았습니다.
출처:https://offbyone.tistory.com/339[쉬고 싶은 개발자]
'개발 > was & server' 카테고리의 다른 글
[was & server] apache virtualhost 설정 (0) | 2020.01.21 |
---|---|
[tomcat] 톰캣 jndi auto commit 설정 (0) | 2020.01.12 |
AWS RDS 사용하기, PHP 연결하기, RDS charset 바꾸기 [펌] (0) | 2020.01.02 |
[iis] Windows 10에 IIS 설치하기 (0) | 2019.12.28 |
[tomcat] Tomcat JNDI Oracle/Mysql 설정[펌] (0) | 2019.12.24 |