写了个简单的Springboot项目,用到springboot+mysql+mybatis,作简单的微信小程序登录,存储微信用户信息,部署到阿里云 ECS服务器上后,能运行,但是隔一段时间就会报一个这样的错误:
2023-08-18 14:24:22.381 INFO 8428 --- [0.0-8080-exec-3] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header
Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x000xee0x010x000x000xea0x030x030xf80x8cM0x1a0xec0x900x930xe30x935Lx0xe70xf93!vHq0xd50xd40xe70xc4s0xa70xb60x980xe80xff0xfc0xca0xe4 ]. HTTP method names must be tokens
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:419) ~[tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269) ~[tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) [tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1722) [tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) [tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) [tomcat-embed-core-9.0.55.jar!/:na]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.55.jar!/:na]
at java.lang.Thread.run(Unknown Source) [na:1.8.0_271]
网上的几种类似方法看了,感觉不是我这种问题的原因:1.改大http header size 尝试了 不行;2.请求端用http 不要用https,我是用微信小程序测试,登录的时候里面用http,并没用https,而且上面错误时当时并没有什么做什么操作,都是小程序登录时好好的,过一段时间突然报了这个错误。