方式1
在nginx的php配置中或是在包括的includefastcgi.conf文档中添加:
fastcgi_paramPHP_VALUE”open_basedir=$document_root:/tmp/”;
方式2
在php.ini中配备open_basedir选择项
open_basedir=/home/www/www.aaa.com:/home/www/www.bbb.com:/tmp/:/proc/
方式3
应用php5.3.3增加的.user.ini环境变量
在网址根目录下建立一个.user.ini隐藏文件,随后载入
open_basedir=/home/www/www.aaa.com:/tmp/:/proc/
这一文件夹名称能够根据php.ini文件中的user_ini.filename选择项来改动名字,及其能够根据user_ini.cache_ttl来改动起效時间,默认设置是300秒。
并且这一文档最好是关掉改动特性,避免內容被伪造,应用以下指令
chattr+i.user.ini//关掉文档改动管理权限,root客户也不可以改动
假如必须改动內容应用
chattr-i.user.ini
随后开展內容改动,改动进行后别忘了把i管理权限加回去,确保安全性。实际请manchattr及其manlsattr
Apache
方式1
在云虚拟主机环境变量中应用php_admin_valueopen_basedir来开展限定
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot “/srv/code/laravel/public” ServerName laravel.dev php_admin_value open_basedir “/srv/code/laravel:/tmp/:/proc/” #这里进行限制 #省略…<Directory “/srv/code/laravel/public”>//省略…</Directory></VirtualHost>
方法2
在.htaccess文件中进行设置(目前还没研究到)