搭建ThinkCMF访问Nginx报500错误,日志出现的open_basedir的问题

Open_basedir介绍

open_basedir 将PHP所能打开的文件限制在指定的目录树中,包括文件本身。当程序要使用例如fopen()或file_get_contents()打开一个文件时,这个文件的位置将会被检查。当文件在指定的目录树之外时,程序将拒绝打开。本指令不受安全模式打开或关闭的影响。

 事情起因:  ThinkCMF项目是从阿里云服务器Copy下来的,然后上传到腾讯云服务器,两台服务器安装环境都是Lnmp一键安装。阿里云服务器上面访问完全没问题,迁移到腾讯云后搭建项目访问时日志报Open_basedir错误。

2018/08/09 10:28:58 [error] 10209#0: *1 FastCGI sent in stderr: "PHP message: PHP Warning:  require(): open_basedir restriction in effect. File(/home/wwwroot/ThinkCMF/simplewind/thinkphp/base.php) is not within the allowed path(s): (/home/wwwroot/ThinkCMF/public/:/proc/) in /home/wwwroot/ThinkCMF/public/index.php on line 38

 事情经过:  排查了一会,发现需要修改fastcgi.conf下面的open_basedir的路径。(位置:/usr/local/nginx/conf/)

 原来默认是"open_basedir=$document_root/:/tmp/:/proc/" 。

fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";

 后来修改为如下:因为我的项目站点目录是/home/wwwroot/。

fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/../:/tmp/:/proc/";

重启 service nginx restart 

以上修改后重启Nginx后站点访问正常了。当然了这只是其中一种方法,希望能对你有所帮助。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值