기본적으로 tomcat에 헤더 사이즈를 설정 하지 않으면 tomcat 에서는 8 * 1024 bytes (8K) 지정이 된다
보통 상황에서는 문제가 없을것이다 하지만 헤더에 많은 정보를 담을수 밖에 없는 서비스를 만들때는 고려를 해야된다.
일반적으로는 cookies에 클라이언트 단에 정보를 저장하는 방법을 취할수있는데 그정보가 http에서는 header에 실어져서 서버로 전송하게 된다.
cookies를 담는 헤더 정보는 아래는 4가지 정보가 있다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Cookie Contains stored HTTP cookies previously sent by the server with the Set-Cookie header.
Set-Cookie Send cookies from the server to the user agent.
Cookie2 Used to contain an HTTP cookie, previously sent by the server with the Set-Cookie2 header, but has been obsoleted by the specification. Use Cookie instead.
Set-Cookie2 Used to send cookies from the server to the user agent, but has been obsoleted by the specification. Use Set-Cookie instead.
간단하게 테스트 해볼려고 한다. spring boot로 서비스를 만들어서 임베디드 톰캣으로 서비스를 확인 해볼려고 한다.
먼저 tomcat에 헤더 사이즈를 늘려서 호출 해보았다. 아래는 테스트 코드 spring을 사용하고 있어서 RestTemplate으로 테스트 코드를 작성해보았다.
-Djava.net.debug=ssl record Print a trace of each SSL record (at the SSL protocol level). handshake Print each handshake message as it is received keygen Print key generation data for the secret key exchange. session Print SSL session activity. defaultctx Print the default SSL initialization information. sslctx Print information about the SSL context. sessioncache Print information about the SSL session cache. keymanager Print information about calls to the key manager. trustmanager Print information about calls to the trust manager.dataFor handshake tracing, print out a hex dump of each message.verboseFor handshake tracing, print out verbose information.plaintextFor record tracing, print out a hex dump of the record.
-Djava.net.debug=record,keygen,handshake
위에 파라미터로 ssl 관련 디버그를 진행 할수있다
설정을 하면 로그에 ssl 관련 로그들이 찍히면서 서버 내부동작에서 에러를 확인 할수가 있다.