将此网站移至另一台服务器后,我收到以下错误:
致命错误:require_once():无法打开所需的'MDB2.php' (include_path ='。:/ usr / lib / php5.4:/usr/lib/php5.4/')in 第3行/homepages/14/xxxxxx/htdocs/public_html/includes/pdbconnection.php
我已经通过PHPInfo()查找了Pear所在的位置,我得到了这个(--with-pear=/usr/lib/php5.4
),这就是为什么它在寻找MDB2.php。
虽然它是共享主机,但我有SSH访问权限。根据我所做的研究,似乎键入pear install MDB2
应该可以解决所有问题,但是当我这样做时,我得到以下回复:
警告:频道“pear.php.net”已更新其协议,请使用 “channel-update pear.php.net”更新无法安装,php_dir为 通道“pear.php.net”不能被当前用户写入
这让我相信我沉没了......我呢? : - (
感谢您的帮助!
当我输入pear list
时,我得到以下内容(如果有任何用途):
Installed packages, channel pear.php.net:
=========================================
Package Version State
Archive_Tar 1.3.2 stable
Console_Getopt 1.2.1 stable
DB 1.7.13 stable
HTML_Template_IT 1.1 stable
HTTP 1.4.0 stable
HTTP_Header 1.2.0 stable
Mail 1.1.14 stable
Net_SMTP 1.2.10 stable
Net_Socket 1.0.8 stable
Net_UserAgent_Detect 2.0.1 stable
PEAR 1.5.0 stable
Structures_Graph 1.0.2 stable
XML_Beautifier 1.1 stable
XML_Parser 1.2.8 stable
XML_RPC 1.5.1 stable
XML_Util 1.1.4 stable
谢谢!
答案 0 :(得分:1)
当您以标准用户身份登录时,您似乎没有对安装目录(/usr/lib/php5.4)的写入权限。通常我建议您使用sudo以root身份运行相同的命令。
这样的事情:
$ sudo pear channel-update pear.php.net
但是你在共享托管上,所以你可以要求支持为你做这件事,或者下载所需的软件包并把它们放在你的include_path中的其他地方。