【lnmp】require(): open_basedir restriction in effect.【百度不是万能的,关键时刻还得靠自己】

TP5的项目,多模块设置多多个站点入口;

推上线时一堆问题,之一:权限问题 由于所有模块公用 thinkphp框架文件,在调用时报错 

require(): open_basedir restriction in effect.【我猜是出于安全考虑,每个站点不能访问自己的上级文件报的错吧】

网上各种答案各种叫你改这改那,浪费了好多时间还是没找到,于是干脆就自己在系统搜索关键词得了

思路

搜索usr目录下所有包含open_basedir的文件(然后自己一个个找)

 grep -rn open_basedir /usr/

排除掉一些有的没有的,最终就剩几个(重要字眼 :/usr/proc   $document_root)

一个个试着改一下就好了(注释掉?不知道会有什么其他问题,出问题了再说【滑稽.jpg】)。改完记得重启lnmp

最终解决方案:

注释掉  /usr/local/nginx/conf/fastcgi.conf  里的

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

未发现后遗症

如果没找到的话,得去项目目录找 .user.ini文件 一般在项目根目录下(这个根目录是站点指向的根目录, 比如tp项目的public文件)

发布了35 篇原创文章 · 获赞 18 · 访问量 37万+

猜你喜欢

转载自blog.csdn.net/TXX_c/article/details/80111606