TP5项目在lnmp环境上线出现500错误

我的未来我决定 提交于 2019-12-04 15:01:52

今天准备把之前用tp5框架写的一个小项目上线的服务器上

在windows下没问题,但是上传到服务器后访问接口出现500错误

用的是lnmp的环境,文件上传后把所有权限都打开,都显示

HTTP ERROR 500的错误,服务器内部错误

该网页无法正常运作

mz.kechangfu.cn 目前无法处理此请求。 HTTP ERROR 500 1 2 3 4 5 6

在入口文件index.php中加入

error_reporting(E_ALL); ini_set('display_errors', '1'); 1 2 来打印所有错误信息

代码打印出

Warning: require(): open_basedir restriction in effect. File(/home/wwwroot/mz.kchangfu.cn/thinkphp/start.php) is not within the allowed path(s): (/home/wwwroot/mz.kchangfu.cn/public/:/tmp/:/proc/) in /home/wwwroot/mz.kchangfu.cn/public/index.php on line 22

Warning: require(/home/wwwroot/mz.kchangfu.cn/thinkphp/start.php): failed to open stream: Operation not permitted in /home/wwwroot/mz.kchangfu.cn/public/index.php on line 22

Fatal error: require(): Failed opening required '/home/wwwroot/mz.kchangfu.cn/public/../thinkphp/start.php' (include_path='.:/usr/local/php/lib/php') in /home/wwwroot/mz.kchangfu.cn/public/index.php on line 22 1 2 3 4 5 6 三、分析错误内容

  查看问题描述以及资料,发现是php open_basedir 配置的问题,php不能引入其授权目录上级及其以上的文件,默认配置在php.ini(/usr/local/php/etc/php.ini),但是我的open_basedir 并没有配置,默认被注释了。

#在php.ini open_basedir = //没有打开也是空的 #在.user.ini open_basedir=/home/wwwroot/mz/public:/tmp/:/proc/ #在fastcgi.conf fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 1 2 3 4 5 6 只需把 fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 改成

fastcgi_param PHP_ADMIN_VALUE "open_basedir=/home/wwwroot/:/tmp/:/proc/"; 1 解决

open_basedir 配置项的文件权限问题,如果遇到了这样的情况,把php.ini 服务器nginx、Apache的配置文件都检查下。

作者:kchangfu 来源:CSDN 原文:https://blog.csdn.net/kchangfu/article/details/78148796?utm_source=copy 版权声明:本文为博主原创文章,转载请附上博文链接!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!