记录一次 500 错误

1.服务器 500错误.当 gitlab 拉到本地代码后 ,对比本地代码发现没有 vendor 服务器
a.开始怀疑找 nginx 的错误日志和 access.log 日志,发现都没问题.就是报 500 错误
b.然后怀疑 env.php 错误,应该用online 的 MySQL 地址,但后来想想应该还没到这就报错了,所以不是这
c.然后怀疑是 nginx 的配置错误.更改了 fastcgi_pass 为 #fastcgi_pass unix:/var/run/php5-fpm.sock;后,报 502 错误.也不是这
d.最后查根源,根据本地可以跑,查流程
1.首先查93 行 /Users/xx/Desktop/project/xx/e/ThinkPHP/Library/Think/Controller.class.php ( 10.54 KB )
打断点发现没到这里
2.查 83 行 thinkPHP 中的/Users/xx/Desktop/project/xx/e/ThinkPHP/ThinkPHP.php ( 4.54 KB )
打断点也没到这里
3.突然想到63 行 /Users/xx/Desktop/project/xx/e/vendor/autoload.php ( 0.17 KB )
这里肯定没执行,果然,线上都没有 vendor 这个目录,
解决方法:
1.用 filezilla 的 ftp 上传,因为这个是跳板机进入的服务器,所以不能用
2.后来用 mac 自带的 sz, rz 工具, 用 rz 上传本地 vendor 到线上.先打包
3.unzip vendor .解决问题.

其实这个没有上传 vendor 根源在于 本机的 global_vendor 配置中默认加了 vendor

你可能感兴趣的:(记录一次 500 错误)