所以我最近在新笔记本电脑上安装了我的第一个 Ubuntu,确切地说,是 16.04 的每日构建版,因为硬件对于 15.10 来说太新了。现在我正在设置它,我想安装 php5 和一些扩展。
当我执行时,sudo apt-get install libapache2-mod-php5
我收到错误消息,提示没有可用于 php5 和 libapache2 的安装包。
错误信息是德文的,所以我怀疑这是否有帮助,但无论如何它在这里。:-)
E: For package »libapache2-mod-php5« existiert kein Installationskandidat.
我需要添加 apt-get 存储库吗?或者我做错了什么?
答案1
TL;DR:如果你想继续使用 php5,你需要继续使用 Ubuntu 14.04 LTS
在 Ubuntu 16.04 LTS 上使用 PHP 7.0
Ubuntu 16.04 已切换到 PHP 7.0,并为 PHP 包提供了新的基础架构。因此,您无法在 Ubuntu 16.04 上安装 php5,但可以使用以下命令安装 PHP 7.0 包:
apt-get install libapache2-mod-php
这将安装一个依赖于最新 PHP 版本的虚拟包并将其libapache2-mod-php7.0
作为依赖项拉取。
如果您正在寻找扩展,请始终使用无版本的变体(例如,php-apcu
而不是php7.0-apcu
),因为 PECL 扩展在打包时没有版本,以允许平稳升级。
使用 PHP PPA 同时安装 PHP 5.6 和 PHP 7.0
有一个选项可以使用 来共同安装 PHP 5.6 包ppa:ondrej/php
。
欲了解更多信息,请参阅该答案:https://askubuntu.com/a/762161/309221
摘自上面的链接:
假设
libapache2-mod-php
有一种适合您在 Apache 中启用 PHP 的方法,您可以按如下方式进行:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0
切换 PHP 版本(阿帕奇):
从php5.6到php7.0:
sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart
从php7.0到php5.6:
sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart
答案2
编辑:接受的答案没有明确说明如何同时安装 PHP 5.6 和 7.0,所以我想扩展它。
欲了解更多信息,请参阅该答案:https://askubuntu.com/a/762161/309221
摘自上面的链接:
假设
libapache2-mod-php
有一种适合您在 Apache 中启用 PHP 的方法,您可以按如下方式进行:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0
切换 PHP 版本(阿帕奇):
从php5.6到php7.0:
sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart
从php7.0到php5.6:
sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart