You need to enable this through the ALLOW_BACKSLASH property: https://tomcat.apache.org/tomcat-8.5-doc/config/systemprops.html
On Thu, Jun 15, 2017 at 2:44 PM, Cai, Charles [COMRES/RTC/RTC] < charles....@emerson.com> wrote: > Hi Guys, > > Looking for help here after search on the web for couple hours: > > I'm currently doing some testing on Tomcat 8.5.9 I'm trying to encode > all the URL that is requesting to my server. > One thing I have noticed it wasn't working is the `\` (back slash) can't > be allowed in the URL. > > I'm getting the error saying: > INFO [https-jsse-nio-8443-exec-10] > org.apache.coyote.http11.Http11Processor.service > Error parsing HTTP request header > Note: further occurrences of HTTP header parsing errors will be logged at > DEBUG level. > java.lang.IllegalArgumentException: Invalid character found in the > request target. The valid characters are defined in RFC 7230 and RFC 3986 > > The test requesting URL is like this: > https://localhost:8443/passthrough.jsp?ntUserName=comany\testuser > > Currenty, I tried those two approachs: > 1st, set the server.xml with URIEncoding: > http://tomcat.apache.org/tomcat-7.0-doc/config/http.html > > 2nd, add the following filter: > https://wiki.apache.org/tomcat/FAQ/CharacterEncoding#Q1 > > It should be like this after the encoding (replace `\` with `%5C` ) : > https://localhost:8443/passthrough.jsp?ntUserName=comany%5Ctestuser > > but none of those options worked for me. > > Thank you > > Charles Cai > >