您的位置:首页 > 其它

IE请求无响应,服务器报异常字符-RFC7230/3986解决办法

2018-03-27 21:43 267 查看
本文转载自
http://blog.sina.com.cn/john9253 今天写代码的时候,遇到了服务器报异常字符-RFC7230/3986这种错误,查阅种种文章,无果,最后发现一个大神给出了解决办法
客户端:IE 
服务器:tomcat 
问题:有些链接打不开,客户端显示空白或者HTTP400错误请求 
分析:发现出错的链接均系直接带参数的GET,而且部分参数为中文串,作了两个尝试:a)把整个url拷贝到FF中,可以正常访问;b)把中文串改为其他英文字母数字,可以正常访问 
定位:中文编码问题 处理:将GET方法直接写的中文串修改为form提交,或者将可能有中文的模板替换变量,在客户端用encodeURI方法处理,即修改格式类似"aaa.jsp?a=中文"的链接串为"aaa.jsp?a=" + encodeURI("中文") 检验:通过,所有浏览器显示正常
   附:
服务器端异常stacktrace: 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  
atorg.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalInputBuffer.  
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.  
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.  
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.  
at   
at   
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread. 
 at
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐