我有一台服务器正在运行 Plesk 10.4.4,我想将其升级到 11.0.9。
当我使用在线升级工具时,出现以下警告:
Parallels Panel 升级前检查...警告:您安装了混合的“php”和“php53”软件包。安装或升级可能会失败或产生意外结果。要解决此问题,请运行“sed -i.bak -e '/^\s跳过-bdb\s$/d' /etc/my.cnf ; yum update 'php*' 'mysql*'"。PHP 警告:指令 'safe_mode' 在 PHP 5.3 及更高版本中已弃用,位于第 0 行的未知位置
我已经在 ssh 中运行了代码,但没有任何变化。
我已经搜索了所有带有“php”的包名称,并且得到了以下列表:
# yum list installed | grep php
php-common.i386 5.3.13-5.el5.art installed
php-pear.noarch 1:1.4.9-8.el5 installed
php5-ioncube-loader.i386 4.0.7-11062118 installed
php53.i386 5.3.3-13.el5_8 installed
php53-cli.i386 5.3.3-13.el5_8 installed
php53-devel.i386 5.3.3-13.el5_8 installed
php53-gd.i386 5.3.3-13.el5_8 installed
php53-imap.i386 5.3.3-13.el5_8 installed
php53-mbstring.i386 5.3.3-13.el5_8 installed
php53-mcrypt.i386 5.3.3-1.el5 installed
php53-mysql.i386 5.3.3-13.el5_8 installed
php53-pdo.i386 5.3.3-13.el5_8 installed
php53-sqlite2.i386 5.3.2-11041315 installed
php53-xml.i386 5.3.3-13.el5_8 installed
psa-appvault-phpads.noarch 2.0.8-8203520080409011611 installed
psa-appvault-phpbb.noarch 3.0.0-8200820080409011626 installed
psa-appvault-phpbook.noarch 1.50-8203220080409011638 installed
psa-appvault-phpbugtracker.noarch 1.19-8203820080416050605 installed
psa-appvault-phpdig.noarch 1.85-8203120080409011645 installed
psa-appvault-phpmoney.noarch 1.3-8204320080409011649 installed
psa-appvault-phpmyfamily.noarch 1.4.1-8203420080409011655 installed
psa-appvault-phpmyvisites.noarch 2.3-8202820080409011701 installed
psa-appvault-phprojekt.noarch 5.2-8200820080409011713 installed
psa-appvault-phpsurveyor.noarch 0.98-8204320080409011723 installed
psa-appvault-phpwebsite.noarch 0.10.2-8203420080409011738 installed
psa-appvault-phpwiki.noarch 1.3.11-8204320080409011808 installed
psa-php53-configurator.i386 1.6.1-cos5.build1013111101.14 installed
在Plesk文件中验证后:panel_preupgrade_checker.php
我认为警告是由于这些行引起的:
(from : panel_preupgrade_checker.php)
foreach ($packages as $package) {
$name = $package['name'];
$hasPhp5 |= ($name == 'php' || strpos($name, 'php-') === 0);
$hasPhp53 |= (strpos($name, 'php53') === 0);
}
现在,我认为问题只是由于这些包的名称:
php-common.i386 5.3.13-5.el5.art installed
php-pear.noarch 1:1.4.9-8.el5 installed
你能帮我解决这个问题吗?
这是我的回复:
PPB_10_4_4-dist Parallels product PPB_10_4_4 dist 2
PPB_10_4_4-thirdparty Parallels product PPB_10_4_4 thirdparty 0
PSA_10_4_4-thirdparty Parallels product PSA_10_4_4 thirdparty 2
SITEBUILDER_10_4_4-dist Parallels product SITEBUILDER_10_4_4 dist 3
base CentOS-5 - Base 2722+3
epel Extra Packages for Enterprise Linux 5 - i386 5800
extras CentOS-5 - Extras 282
plesk Plesk Server Administrator 141+1
updates CentOS-5 - Updates 797+4
repolist: 9749
编辑
我已经进行了更新,因为我认为警告并不是很糟糕(警告来自包名称不匹配)
最后终于成功了!
答案1
我刚刚遇到了这个问题,但有点困难,因为我想设置在 SSH 中使用 PEAR 而不在我的域 httpdocs 中的其他脚本。
如果你已经在 PLESK 上安装了 PEAR,但测试后发现它无法正常工作,请在你想使用 PEAR 的每个域名中添加以下内容:
/var/www/vhosts/example.com/conf/httpd.include
和/或
/var/www/vhosts/example.com/conf/vhost.conf
(取决于您的设置)
添加此内容:
php_admin_value open_basedir "/var/www/vhosts/example.com/httpdocs:/usr/share/pear:/tmp" php_admin_value include_path ".:/usr/share/pear"
还要确保它在 php.ini 中(正确的一个:一个用于 public_docs,另一个用于根文档。如果它不在那里,请添加 include_path“。:/usr/share/pear/
答案2
您可以强制删除有问题的软件包。尝试运行
rpm --erase --nodeps php-common php-pear
然后再次尝试更新。