无法添加PPA:';购电协议:ondrej/php5-5.6';
我正试图在Ubuntu机器上将我的PHP5.5.9更新为5.6 但当我跑步时:无法添加PPA:';购电协议:ondrej/php5-5.6';,php,ubuntu,Php,Ubuntu,我正试图在Ubuntu机器上将我的PHP5.5.9更新为5.6 但当我跑步时: sudo add-apt-repository ppa:ondrej/php5-5.6 php5 -v 我得到: Cannot add PPA: 'ppa:ondrej/php5-5.6'. Please check that the PPA name or format is correct. 我怎样才能解决这个问题 编辑 我跑: sudo add-apt-repository ppa:ondrej/php
sudo add-apt-repository ppa:ondrej/php5-5.6
php5 -v
我得到:
Cannot add PPA: 'ppa:ondrej/php5-5.6'.
Please check that the PPA name or format is correct.
我怎样才能解决这个问题
编辑
我跑:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php5
但当我跑步时:
sudo add-apt-repository ppa:ondrej/php5-5.6
php5 -v
我仍然使用PHP5.5.9:
PHP 5.5.9-1ubuntu4.20 (cli) (built: Oct 3 2016 13:00:37)
首先添加正确的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
sudo添加apt存储库ppa:ondrej/php
sudo-apt-get-update
sudo apt get-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
我在安装php5.6时遇到了同样的问题,然后我执行了上述步骤。虽然@tanveerahmadar的答案提供了重要信息,但以下是在Ubuntu 12.04上安装php5.6的正确方法: 重要提示:如果您计划在网站中使用PHP5.6(您可能希望这样做),您必须升级到Apache 2.4,这不是Ubuntu 12.04附带的(下面将介绍Apache的升级) 步骤1:检查版本
# check PHP version
php -v
# check Apache version
apache2 -v
如果您的Apache版本是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。如果需要,请重新配置Apache。备份现有的Apache配置、启用的站点和MOD。您可能需要重新安装/升级一些MOD
步骤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
这将安装php5.6和一些常见的软件包,如cURL(php5.6-cURL
)和GD(lib5.6-GD
),以及在Apache2.4中启用php5.6(libapache2-mod-php5.6
)
在此过程中,Apache将重新启动
这就是你要做的所有步骤
提示:如果您想升级到PHP7(主题外),只需在步骤3之后发出以下命令(跳过步骤4):
最后一句话:不建议升级到Ubuntu12.04中的PHP5.6,因为它涉及到将Apache升级到2.4。Ubuntu 14.04附带了Apache 2.4,升级PHP 5.6要容易得多。这在我的Ubuntu服务器14.04.5 LTS中起作用
a2dismod php5
a2enmod php5.6
apache2ctl restart
这件工作对我来说太完美了。 通过执行以下操作,首先添加正确的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
禁用PHP5.5.3或5.5.9模块
a2dismod php5
启用刚刚安装的php5.6模块
a2enmod php5.6
最后,重新启动apache
sudo service apache restart
@tanveer ahmad dar突出显示了其中的大部分。添加正确的PPA:。你想要得到的是不推荐的Hanks,我可以安装ppm,但是不能更新php,我编辑了我的答案。你能帮忙吗@CliveHi,我在Ubuntu14.04中,遇到了同样的问题,将上一个cmd更改为“sudo apt get install php5.6”,然后它就工作了。步骤2和步骤4都有
apt get install php5.6
,这是没有意义的。在添加回购之后,在安装任何东西之前,您应该始终发出apt get update
来刷新本地回购列表。是的,您是对的。我们应该在安装前使用apt get update,以防万一,我不得不运行:LC_ALL=C.UTF-8 add apt repository ppa:ondrej/phperor:“~ondrej”用户或团队不存在为什么在我遵循我们的步骤之后,当我使用phpinfo()运行脚本时,我仍然得到以前的php版本,但当我通过cli运行php-v
时,我得到了php5.6这是因为您的Apache正在加载旧的PHP,如phpinfo()
中显示的PHP.ini
路径所示。尽管在整个过程中,Apache将自行重新启动,但您是否尝试过自己重新启动Apache服务,并查看Apache是否仍在使用旧版本?@slier:这是因为Apache仍然加载了旧的PHP模块。这是我的解决方案(您需要按此顺序运行所有命令):cd/etc/apache2/mods-enabled;rm-fr php5.*;ln-s../mods可用/php5.6.conf;ln-s../mods可用/php5.6.load/etc/init.d/apache2重启
这个命令可能会被a2enmod/a2dismod
替换,但我不熟悉它。另外,如果你必须检查版本,那么使用“php5.6-v”而不是“php5-v”。没错,“php5.6-h”或“php-h”也会给你更多的选项@Filipe Ferminiano