大佬们,救救可怜的孩子吧

@啊央 2020-06-14 09:29:40
本地post上传就没任何问题,部署到服务器后,前端post上传数据,小数据就没问题,数据一大点就报这个错
2020-06-14 00:35:28.783  INFO 11996 --- [nio-9090-exec-1] 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. HTTP method names must be tokens
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:416) ~[tomcat-embed-core-9.0.31.jar!/:9.0.31]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:260) ~[tomcat-embed-core-9.0.31.jar!/:9.0.31]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1639) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_252]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_252]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_252]



application.properties配置如下

spring.servlet.multipart.max-file-size = -1
spring.servlet.multipart.max-request-size = -1
server.tomcat.max-http-form-post-size = -1
server.max-http-header-size = 10000000

#https端口号.
server.port=9090
#证书的路径.
server.ssl.key-store=/root/springboot/jyc.jks
#证书密码
server.ssl.key-store-password=gmk51ng94nh
#秘钥库类型
server.ssl.keyStoreType = JKS


求大神指点,困扰了好几天的问题
...全文
845 点赞 收藏 19
写回复
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_39936465 2020-06-18
引用 16 楼 @啊央 的回复:
[quote=引用 14 楼 筱筱木的回复:]server: max-http-header-size: 4048576 tomcat: max-http-post-size: 1000MB #请求参数长度 spring: servlet: multipart: enabled: true max-file-size: 1000MB #单个文件的最大上限 max-request-size: 1000MB #单个请求的文件总大小上限
不行啊,试过了[/quote] 如果本地可以,而服务器部署有问题的话,可以考虑是否是网络环境问题,到达服务器前是否经过防火墙,路由器,交换机等等,检查一下上述设备配置的策略是否会产生影响。
回复
夜白宋 2020-06-17
你的请求url是否存在特殊字符?某些特殊字符也可能引起这个问题
回复
筱筱木 2020-06-17
server.tomcat.max-http-post-size=0
回复
人情茶色 2020-06-16
你试一下设置文件上传大小看一下
回复
夜白宋 2020-06-16
能不能把你上传接口的注解和参数找出来看看
回复
@啊央 2020-06-16
引用 14 楼 筱筱木的回复:
server: max-http-header-size: 4048576 tomcat: max-http-post-size: 1000MB #请求参数长度 spring: servlet: multipart: enabled: true max-file-size: 1000MB #单个文件的最大上限 max-request-size: 1000MB #单个请求的文件总大小上限
不行啊,试过了
回复
@啊央 2020-06-16
引用 12 楼 夜白宋的回复:
能不能把你上传接口的注解和参数找出来看看
@RequestMapping(value = "/add",method = RequestMethod.POST)     public boolean addcommodityUser(CommodityUser commodityUser){         System.out.println(commodityUser.toString());         CommodityUser u = basetoimage.yashuo(commodityUser);         SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");         Date date=new Date();         String dateStr=sdf.format(date);         u.setTime(dateStr);         return commodityService.add(u);     }
回复
筱筱木 2020-06-16
server: max-http-header-size: 4048576 tomcat: max-http-post-size: 1000MB #请求参数长度 spring: servlet: multipart: enabled: true max-file-size: 1000MB #单个文件的最大上限 max-request-size: 1000MB #单个请求的文件总大小上限
回复
@啊央 2020-06-15
引用 7 楼 夜白宋的回复:
1.试一试在properties中增加 server: port: 项目端口 # 下面这个参数是为解决问题而新增的 tomcat: max-http-header-size: 8192 2.把https请求改成http尝试一下
第一的我有用在上面的代码里 第二的我用http访问就出现这个报错Request method 'GET' not supported 我用的是post方式呀,咋就说没有get
回复
墨雨幽痕 2020-06-15
引用 5 楼 @啊央 的回复:
[quote=引用 4 楼 幻剑尘心的回复:]https访问http协议导致出现的问题吧
那为啥小数据没问题呢,而且我在springboot弄了https了呀,小程序只能https去获取数据[/quote] 数据大小导致的问题看7楼
回复
夜白宋 2020-06-15
1.试一试在properties中增加 server: port: 项目端口 # 下面这个参数是为解决问题而新增的 tomcat: max-http-header-size: 8192 2.把https请求改成http尝试一下
回复
@啊央 2020-06-15
引用 1 楼 tianfang的回复:
数据大,大到多少? tomcat前端还有什么?tomcat是运行在APR模式吗
大佬来看一下
回复
@啊央 2020-06-15
引用 4 楼 幻剑尘心的回复:
https访问http协议导致出现的问题吧
那为啥小数据没问题呢,而且我在springboot弄了https了呀,小程序只能https去获取数据
回复
墨雨幽痕 2020-06-15
https访问http协议导致出现的问题吧
回复
@啊央 2020-06-15
几十k就不行了,而且服务器内网就可以正常使用
回复
s478853630 2020-06-15
引用 楼主 @啊央 的回复:
本地post上传就没任何问题,部署到服务器后,前端post上传数据,小数据就没问题,数据一大点就报这个错
2020-06-14 00:35:28.783  INFO 11996 --- [nio-9090-exec-1] 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. HTTP method names must be tokens
	at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:416) ~[tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:260) ~[tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1639) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_252]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_252]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.31.jar!/:9.0.31]
	at java.lang.Thread.run(Thread.java:748) [na:1.8.0_252]
application.properties配置如下

spring.servlet.multipart.max-file-size = -1
spring.servlet.multipart.max-request-size = -1
server.tomcat.max-http-form-post-size = -1
server.max-http-header-size = 10000000

#https端口号.
server.port=9090
#证书的路径.
server.ssl.key-store=/root/springboot/jyc.jks
#证书密码
server.ssl.key-store-password=gmk51ng94nh
#秘钥库类型
server.ssl.keyStoreType = JKS
求大神指点,困扰了好几天的问题
我也跟小程序对接过文件上传,用Apache的commons-fileupload-x.jar就能解决 也是https,没有文件大小限制,并且支持批量上传,可以做出进度条
回复
aw277866304 2020-06-15
为什么不做一下try catch处理,把错误信息抛出来? 你请求的是不是https???改成http试一下。
回复
@啊央 2020-06-14
几k的数据就可以,差不多10k以上的就不行了。 tomcat是spring boot内置的 前端是小程序
回复
tianfang 2020-06-14
数据大,大到多少? tomcat前端还有什么?tomcat是运行在APR模式吗
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2020-06-14 09:29
社区公告
暂无公告