PHP POST 接受长字符串时出现500错误

逃离我推掉我的手 2022-01-14 06:43 396阅读 0赞

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

昨天在开发的时候遇到一个问题,form entype=“multipart/form-data” 表单提交时显示500错误。

开始我以为是php代码问题,我检查了一遍代码,没有问题。 之后设置断点,依旧报错500,这就说明断点代码就没有执行,表单提交动作根本没有触发后端的php代码。 于是,我将注意力放在了php配置上,反复修改配置调试,而且重装了php依然无效。 最后在查看php错误日志的时候,顺便也看了下nginx的错误日志,这才发现问题所在

  1. 2016/12/19 10:49:22 [crit] 31870#0: *197 open() "/var/lib/nginx/tmp/client_body/0000000008" failed (13: Permission denied), client: XXX, server:XXX, request: "POST /admin/XXX.php?act=post HTTP/1.1", host: "XXX", referrer: "http://host/admin/XXXphp?act=post"

从这行报错可以看出,nginx在接收提交数据时,请求失败,因为权限不够被拒绝。 再来到/var/lib/文件下在,看到该文件夹下的 nginx 的权限为

  1. drwx------ 3 www apache 4096 Apr 4 00:30 nginx

所以将该文件夹的权限修改为755,问题就解决了。

反思:在解决问题的过程中,没有及时查看错误日志,查找具体原因,一味凭猜测在调试修改,结果花费了很多时间。

转载于:https://my.oschina.net/u/1036767/blog/808216

发表评论

表情:
评论列表 (有 0 条评论,396人围观)

还没有评论,来说两句吧...

相关阅读