PHP的fopen – open_basedir限制有效

我已经将我的网站移动到另一个托pipe服务器。 但是,fopen()函数有一点问题。 每次运行时,都会产生以下错误:

警告:file_exists()[function.file-exists]:open_basedir限制有效。 文件(/home/www-virtual/www-username/www/bindata/gallery/GAL34e81b4adce22091c6ee31c71055e181.jpg)不在允许的path中:(/ www / default / www:/ www / username_www:/ tmp:/ usr / local / lib / php:/usr/local/php-5.2/lib)在/www/username_www/www/frontend/gallery/GalleryPage.php5在线112

我不能用PHP脚本做任何事情,因为它是ionCube编码的。

剩下的事情呢?

现在更改托pipe公司!

如果他们不能正确configurationopen_basedir谁知道其他恐怖在等待(是的,这可能是有效的,因为他们应用一揽子限制 – 但如果是这种情况,为什么他们包括别人的白名单目录)。

一个可能的答案(来自堆栈溢出 )是在.htaccess文件中为PHP 打开的basedir设置一个exception

<Directory /var/www/vhosts/domain.tld/httpdocs> php_admin_value open_basedir "/var/www/vhosts/domain.tld/httpdocs:/var/www/vhosts/domain.tld/zend" </Directory> 

你也可以完全删除限制

 <Directory /var/www/vhosts/domain.tld/httpdocs> php_admin_value open_basedir none </Directory>