我在我的 Ubuntu + PHP 7.0.18 + Apache2 上遇到了这个问题:在我的 php.ini 中设置了 open_basedir = /var/www:/tmp。它工作正常。但是在一个网络应用程序中,我需要使用另一个目录来使用。我正在尝试通过 ini_set 设置它:
ini_set(
'open_basedir',
implode(
PATH_SEPARATOR,
array(
__DIR__,
'/media/hdd/backup/db'
)
)
);
但它没有任何效果:
echo ini_get('open_basedir'); // shows /var/www:/tmp
如果 php.ini 中 open_basedir 的值为空,则此代码可以正常工作。这是预期的行为还是我做错了什么?