tomcat常见问题

摘要:
requestTargetAllow只能配置为三个字符:|、{、}。对于其他字符,仍会报告错误。如果使用了|{}以外的其他字符,则需要以下配置。

1、Invalid character found in the request target [/?a=fetch&content=<php>die(@md5(HelloThinkCMF))</php>]. The valid characters are defined in RFC 7230 and RFC 3986

tomcat版本是8.5.57

解决方法:

Tomcat在 8.5版本后,在http解析时做了严格限制。requestTargetAllow 只能配置|、{、} 这三个字符,对于其他的(例如" < > [ ] ^ ` { | } .),依旧报错,如果使用了|{}之外的其他字符,那就还需要如下配置。
1.在tomcat安装路径中conf/catalina.properties中最后添加2行:

tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}
org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true

2.在conf/server.xml中的<Connector>节点中,添加2个属性(可以接收任意特殊字符的组合,自行配置):

relaxedPathChars="|{}[],"
relaxedQueryChars="|{}[],"

免责声明:文章转载自《tomcat常见问题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇SqlServer 增加字段、修改字段类型python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告(二)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Jakarta Java Mail属性参数配置

前言 Jakarta Mail网址:https://eclipse-ee4j.github.io/mail SMTP协议可匹配的属性:https://eclipse-ee4j.github.io/mail/docs/api/com/sun/mail/smtp/package-summary.html 翻译(Package com.sun.mail.smtp...

解决The valid characters are defined in RFC 7230 and RFC 3986错误问题

分析原因: 导致上述问题是因为tomcat自tomcat 8.0.35版本之后对URL参数做了比较规范的限制,必须遵循RFC 7230 and RFC 3986规范,对于非保留字字符(json格式的请求参数)必须做转义操作,否则会抛出Invalid character found in the request target. The valid chara...

.net连接SAP的几种方式

  .net连接SAP的几种方式 一、 SAP .net connector 这是SAP专为.net连接开发的一个工具,简单方便,但是只支持VS2003.当然想在VS2003以上的版本使用可以选择在VS2003上包装下再用。 使用方法: 1.首先安装SAP .net connector,一路next即可 2.打开VS2003,新建一个项目,打开s...

RFC 2544 性能测试

什么是RFC 2544?网络设备性能测试的一组指标,包括吞吐率、时延、丢包率、背靠背。 * * * 吞吐率(Throughput). 定义:被测设备在不丢包的情况下,所能转发的最大数据流量。通常使用每秒钟通过的最大的数据包数或者字节数来衡量。· 作用:反映被测试设备所能够处理(不丢失数据包) 的最大的数据流量。 ps:使用仪表(IXIA 等)测试时可以使用...

vue前端使用axios传参注意事项

axios只支持键值对传参,如果只有一个数据也要封装为键值对,ids为后台接收的参数例如const data = { ids: JSON.stringify(parameter) } 1.如果后台接收的数据类型为数组类型,则,前台组装数据为1,2,2,4,3注意不要加()和[],否则出错2.如果传递集合形式: ids=[1,18,19,20,21,22,2...

谈谈网络协议 – HTTP协议

HTTP HTTP(Hyper Text Transfer Protocol),译为超文本传输协议 是互联网中应用最广泛的应用层协议之一 设计HTTP最初的目的是:提供一种发布和接收HTML页面的方法,由URI来标识具体的资源 后面用HTTP来传递的数据格式不仅仅是HTML,应用非常广泛 (为何叫 超文本?因为它传输的数据除了文本还有图片,视频,音频...