ThinkPHP5 报错 500



众所周知500错误是服务器内部错误,一般发生在PHP代码出现错误的时候。一般没有任何返回值,更没说能正常显示页面了。然而,我今天在开发新的项目的时候,把之前的代码复制一份,并上传到服务器。虽然有返回值,页面也能访问,但是却一直有500错误的提醒。
经过排查后发现,在配置文件 config.php
中把 app_debug
项设置为 false
,500错误消失。但是 app_debug
项肯定不会是“罪魁祸首”,思索半天,突然想到唯一的可能性,就是权限的问题。因为上传所使用的账户为 root
,而 apache
的运行用户为 www
所以就会发现权限引起的各种难解决的问题。
chown -R www.www /data/wwwroot/
find /data/wwwroot/ -type d -exec chmod 755 {} \;
find /data/wwwroot/ -type f -exec chmod 644 {} \;
将文件用户改为 www
并赋予对应的权限,问题解决!