open_basedir : 将 PHP 所能打开的文件限制在指定的目录树中,包括文件本身。当程序要使用例如 fopen () 或 file_get_contents () 打开一个文件时,这个文件的位置将会被检查。当文件在指定的目录树之外,程序将拒绝打开
本指令不受安全模式打开或关闭的影响
配置
在 php.ini 加入
open_basedir="指定目录"
在代码中
ini_set('open_basedir', '指定目录');//不建议
在 apache 的 httpd.conf 中的 Directory 配置
php_admin_value open_basedir "指定目录"
nginx fastcgi.conf
fastcgi_param PHP_VALUE "open_basedir=指定目录"
.user.ini 配置
首先,要使.user.ini 生效,要设置 php.ini 中的
user_ini.filename = ".user.ini"
user_ini.cache_ttl = 300
关于这两个配置的意义,请看 php 手册 php.net/manual/zh/configuration.fil...
注释掉 fastcgi.conf 中的 open_basedir 的配置。
在项目根目录 创建 .user.ini 文件,写入如下内容
open_basedir=/tmp/:/proc/:/you_web_path
/you_web_path 是你要添加的让 php 可以访问的路径。多个路径直接分号隔开
重启一下 php-fpm 服务即可