0

임베디드 서버 구성에서 Jetty를 사용하고 있습니다. 클라이언트가 쿠키를 수락하지 않으면 Jetty는 URL 재 작성을 사용하여 URL 자체에 세션 ID를 인코딩합니다 (URL에 ;jsessionid=xxx 등을 추가).Embedded Jetty - 외부 URL에 대한 URL 다시 쓰기 사용 안 함

내 문제는, 휴식에게 내가 리디렉션 외부 URL 재 작성이 URL (즉, ;jsessionid=xxx는 URL에도 존재하는) 내가 클라이언트 리디렉션 할 때 외부 URL에 (A HTTP 302을 사용하여, 일시적으로 이동)이다 .

외부 URL에 대해 내장 된 Jetty에서 URL 재 작성을 선택적으로 비활성화 할 수 있습니까? 이것은 부두의 버그입니까? 나는 부두 9.4.7을 사용하고있다. 나는 또한 org.eclipse.jetty.servlet.SessionDomain 옵션을 설정하려했지만 아무런 도움이되지 않았습니다.

답변

1

나는 마지막으로 부두 코드 경로를 파헤쳐 대답을 찾았습니다. 관심있는 독자에 대한

ServletContextHandler context = ... 
context.setInitParameter(
    "org.eclipse.jetty.servlet.CheckingRemoteSessionIdEncoding", 
    "true"); 

주 : 임베디드 부두에 대한 예를 들어

org.eclipse.jetty.servlet.CheckingRemoteSessionIdEncoding=true 

이 관련된 코드는 org.eclipse.jetty.server.Response::encodeURL() (라인 477에 대한 당신은 다음과 같은 초기화 옵션을 활성화해야 v9.4.7).