ThinkPHP5.1 部署在lnmp上时报错:require(): open_basedir restriction in effect.

  • 爵特猛
  • 1-31 16:49
  • PHP
  • 1738

在linux服务器部署thinkphp5的时候PHP报了Warning: require(): open_basedir restriction in effect这个错误,是因为网站目录配置错误,PHP不能引入其授权目录上级及其以上的文件。


方法一:

在nginx配置文件:fastcgi.conf里搜索:open_basedir=


注释这行:

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


新增一行:

fastcgi_param PHP_ADMIN_VALUE $basedir if_not_empty;


然后再到网站的nginx配置文件里,ww.xxxxx.com.conf

新增一行:

set $basedir "open_basedir=/home/www/xxxxx/:/tmp/:/proc/";

其中xxxxx为你网站项目根目录。

如果此服务器中存在多个网站,则每个网站配置文件里都需要增加这一行。


方法二:

在nginx配置文件:fastcgi.conf里搜索:open_basedir=

修改为:

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

表示此服务器中所有网站都可以访问上级目录。




保存退出,重启lnmp即可。


更多方法,参考:https://www.jb51.net/article/267950.htm

本文为爵特猛原创文章,转载无需和我联系,但请注明来自爵特猛博客www.juetemeng.com