当前位置: 首页>>技术教程>>正文


无法添加PPA:’ppa:ondrej/php5-5.6′

,

问题描述

我正在尝试在Ubuntu计算机中将php 5.5.9更新为5.6。

但是当我跑步时:

sudo add-apt-repository ppa:ondrej/php5-5.6

我越来越:

Cannot add PPA: 'ppa:ondrej/php5-5.6'.
Please check that the PPA name or format is correct.

我怎样才能解决这个问题?

EDIT

我跑了:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php5

但是当我跑步时:

php5 -v

我仍然得到PHP 5.5.9:

PHP 5.5.9-1ubuntu4.20 (cli) (built: Oct  3 2016 13:00:37) 

最佳方案

首先添加正确的ppa,执行以下操作

  1. sudo add-apt-repository ppa:ondrej/php

  2. sudo apt-get update

  3. sudo apt-get -y install php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-zip

我在安装php5.6时遇到了同样的问题,然后执行了上述步骤。

次佳方案

虽然@tanveerahmaddar的答案提供了关键信息,但这是在Ubuntu 12.04上安装PHP 5.6的正确方法:

Important: If you plan to use PHP5.6 in websites (which you probably wish to), you have to upgrade to Apache 2.4, which does not ship with Ubuntu 12.04 (will cover the upgrade of Apache below)

步骤1:检查版本

# check PHP version
php -v
# check Apache version
apache2 -v

如果您的Apache版本是2.2,请执行步骤2;否则,请执行步骤2。如果版本为2.4,请跳至步骤3

步骤2:添加PHP5.6 +存储库并更新软件包列表

add-apt-repository ppa:ondrej/apache2
apt-get update
apt-get upgrade

此步骤将Apache从2.2升级到2.4。如果需要,请Re-configure您的Apache。备份您现有的Apache配置,启用的站点和mod。您可能需要re-install /升级某些模块。

步骤3:添加PHP5.6 +存储库

add-apt-repository ppa:ondrej/php
apt-get update

步骤4:安装PHP 5.6

apt-get install -y php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-zip libapache2-mod-php5.6

这将安装PHP 5.6和一些常见的软件包,例如cURL(php5.6-curl)和GD(lib5.6-gd),并在Apache 2.4(libapache2-mod-php5.6)中启用PHP 5.6。

Apache将在此过程中重新启动。

这就是您要做的所有步骤。


提示:如果要升级到PHP 7(off-topic),只需在第3步(跳过第4步)之后发出以下命令:

apt-get dist-upgrade

总结:不建议在Ubuntu 12.04中升级到PHP 5.6,因为它将Apache升级到2.4。 Ubuntu 14.04附带了Apache 2.4,它可以轻松得多地升级PHP 5.6。

第三种方案

这项工作非常适合我。通过执行以下操作,首先添加正确的PPA

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get -y install php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl 
php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-zip

禁用PHP 5.5.3或5.5.9模块

a2dismod php5

启用刚刚安装的php5.6模块

a2enmod php5.6

最后,重新启动Apache

sudo service apache restart

@tanveer ahmad dar突出显示了大部分内容。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/10438.html,未经允许,请勿转载。