随枫--博客

或许是不知梦的缘故,流离之人追逐幻影!

修改Nginx&php-fpm所属用户及用户组导致的问题(续)

    在修改完Nginx和php-fpm所属用户及用户组,解决登录问题后,一直没发现啥问题,当博主准备写一篇文章记录自己配置WebHook的过程时,意外来了。

    在写完一篇较长的博文(就是那篇WebHook的),点击保存时,返回500;但是将文章篇幅减少并没有问题。

    博主的第一想法是文章超了数据库的字段所能存储的长度,由于博主用的text存储的,于是果断切mediumtext,然后复制粘贴,提交,然而并没有什么卵用,照样500。

    既然不是字段超了,博主就猜想是不是超过表单提交的限制了?由于博主服务器php和Nginx都没怎么配置大小,都是用的默认值,于是果断修改php.ini中的post_max_size和upload_max_filesize将大小均改为100,重启php-fpm和Ngin。

    然而重启之后结果再一次500,wf。

    既然这样,百度一波走你,哈哈,果然百度到很多文章。有文章说Nginx有个配置项client_max_body_size,其默认值为1m,好嘛,果断100m走你;然后php.ini的配置项max_execution_time默认30s果断600走你,max_input_time默认60s,照样600走你,memory_limit默认8m,修改到128m。改完之后重启Nginx和php-fpm。

    然而在博主心中想着这次应该可以了的时候被现实打脸了,还是500。马丹,这是要搞事情啊。突然想到有log日志,于是切到/var/log/nginx/,然而并没有最新的error日志,但是看到了access-log,果断cat,在一大段日志记录中,博主发现了希望:open() "/var/lib/nginx/tmp/client_body/0000000004" failed (13: Permission denied),又是权限的锅。

    麻溜的切到/var/lig/nginx/tmp/,ls -l 果然所属用户是Nginx,由于我们修改为了www,所以它就写不进去了,chown -R www:www tmp走你。浏览器访问博客后台,复制,粘贴长篇博文,保存,perfect,问题解决了。

    总结:由于文章比较长,所以在请求Nginx的时候它要将部分文件写入tmp目录,然而在写入的时候,Nginx现在的所属用户www并没有写入权限,华丽丽的干瞪眼,然后报错了。所以遇到问题的时候先看错误日志和日志!所以遇到问题的时候先看错误日志和日志!所以遇到问题的时候先看错误日志和日志!(重要的事讲三遍)