记磁盘占满导致的 post 提交失败返回 500 错误的原因

用户反馈,在提交表单时(post)显示错误页面(nginx 500错误),注:表单有上传文件。

注:用户访问的是前端机(反向代理)
排除了 php 代码问题,发现磁盘满了,清理后问题便解决了。

重点不是磁盘满了所导致的,另感到迷惑的是,磁盘满了页面既然能正常显示,而 post 提交却不行。

网上查了相关资料,nginx 有个 client_body_temp 的东东

如果客户端POST一个比较大的文件,长度超过了nginx缓冲区的大小,需要把这个文件的部分或者全部内容暂存到client_body_temp目录下的临时文件
client_body_buffer_size默认设置,8k或者16k

因为 post 提交有上传文件,大于nginx缓冲区的大小, client_body_temp_path 无法写入,这大概就是为什么页面能显示但post提交失败的原因。

本作品采用《CC 协议》,转载必须注明作者和本文链接
welcome come back
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
95
粉丝
24
喜欢
156
收藏
348
排名:324
访问:2.9 万
私信
所有博文
社区赞助商