pear include_path数据文件夹不再有效

时间:2013-02-20 15:41:33

标签: php centos pear

我有一个带有centOS LAMP堆栈和多个域/ ips的vps。很久以前我在vps上有一个更熟悉SSH安装梨的人,我相信他为特定的用户/域配置了它,它已经不存在了,现在梨正在抛出错误。

不再存在的旧用户/域是“ljsspin”但是当我查看我的php.ini时,包含路径是:

include_path = ".:/usr/share/pear/:/usr/share/php:/var/www/ljsspin/data/pear/:"

我可以在ssh中执行pear命令,但我假设其中包含路径的最后一部分不再存在是导致错误的原因。

所以我的问题是如何将必要的/ data / pear文件安装到新目录中?我试过升级pear,这也产生了一个错误(无法解压缩结构文件)。

感谢任何指导。

我收到的确切错误消息:

Warning: include() [function.include]: open_basedir restriction in effect. File(/usr/share/pear/Mail.php) is not within the allowed path(s): (/var/www/steve/data:.) in /var/www/steve/data/www/newdomain.com/admin/dashboard/includes/pdf.php on line 3

Warning: include(/usr/share/pear/Mail.php) [function.include]: failed to open stream: Operation not permitted in /var/www/steve/data/www/newdomain.com/admin/dashboard/includes/pdf.php on line 3

Warning: include() [function.include]: Failed opening 'Mail.php' for inclusion (include_path='.:/usr/share/pear/:/usr/share/php:/var/www/ljsspin/data/pear/:') in /var/www/steve/data/www/newdomain.com/admin/dashboard/includes/pdf.php on line 3

1 个答案:

答案 0 :(得分:1)

open_basedir有效限制错误消息表示您已为open_basedir PHP指令设置了值,因此不允许脚本从给定目录集外部读取文件,在你的情况下是这些:

  • /var/www/steve/data
  • .

由于PEAR包安装在其他目录中:

  • /usr/share/pear/

... PHP会阻止脚本读取它们,因为它已被指示执行。

如果您打算允许访问/usr/share/pear/,您显然必须扩大限制。