쓰리래빗츠 북은 아파치 톰캣을 사용합니다. 쓰리래빗츠 북 3.0.10 버전부터 다음 예외가 발생할 수 있습니다.
java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986
아파치 톰캣 8.0.39 버전부터 요청 URL 쿼리 문자열에 |
과 같이 지원하지 않는 문자열을 사용했을 때 발생합니다. RFC 7230과 RFC 3986 문서에서 정의한 글자만을 지원합니다.
|
글자를 %7C
로 바꾸면 정상적으로 동작합니다.
사용자에게 인코딩을 강제할 수 없기에 다음 순서로 아파치 톰캣 설정을 바꿔 해결할 수도 있습니다.
3RABBITZ_HOME/tomcat/conf/server.xml
파일을 엽니다.Connector
태그에relaxedQueryChars
속성을 추가합니다. 속성 값으로 허용할 문자열을 정의합니다.
<Connector port="1975" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" maxPostSize="-1" Server="3Rabbitz" relaxedQueryChars="^`\|{}[]" />
쓰리래빗츠 북을 다시 시작합니다.
쓰리래빗츠 북 3.0.34 버전부터 Connector
태그에 relaxedQueryChars
속성을 추가했습니다. 단 이전에 설치했다면 이를 직접 추가해야 합니다. 업데이트할 때 자동으로 추가하지 않습니다.