您的位置:首页 > 运维架构 > Tomcat

Tomcat 9 设置 maxPostSize="0" Post 请求丢失问题修复

2018-04-08 13:13 1501 查看
昨天客户发现后台上传大文件失败问题, 我上传30MB左右的文件试了一下, 果然获取不到正确的返回值。

刚开始怀疑是上传过程中请求超时所以获取不到返回的结果, 改了一下connector 和 mod_jk的链接超时时间, 这次能获取结果了, 但是上传失败, 看了一下日志发现是上传文件大小限制导致了上传失败。

然后打开server.xml文件在connector节点加了 maxPostSize="0" disableUploadTimeout="true" 这两个属性, 当时我没有测试别的请求就上传了, 奇葩问题就在这出现了。 上传倒是成功了, 但是参数不对, 就这个问题折磨了我几个小时。。。 就在这个时候客户说登陆不进去了。

我退出登陆后再次登陆, 登陆失败。因为登陆请求是用post方法发送的, 页面没有任何错误信息, 我以为是ssl或者别的问题, 各种试, 各种搜索, 找不到类似这种的答案。

最后某国外网站上有人遇到了类似的问题, 有人回答说可能是maxPostSize="0"这个属性的问题, 于是我删了这个属性试了一下, 唉 进去了!

然后我再次搜索maxPostSize的取值范围, 很多人说0就是没有限制, 但是我用的是tomcat9, 设置成0的话tomcat的post请求长度就0了, 也就是说没有长度, 跟get的差不多了。 然后还有人说最合适的值是-1, 我去设置了一下-1后一切正常了!

最后正确的值是 maxPostSize="-1" 了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: