Не удается установить php5 на Ubuntu 16.04

48

, поэтому я недавно установил свой первый 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? Или что я делаю неправильно?

    
задан user529857 13.04.2016 в 10:13
источник

2 ответа

71

TL; DR: Если вы хотите остаться с php5, вам нужно будет оставаться в Ubuntu 14.04 LTS

Использование PHP 7.0 на Ubuntu 16.04 LTS

Ubuntu 16.04 переключился на PHP 7.0 с новой инфраструктурой для пакета PHP. Итак, нет, вы не можете установить php5 на Ubuntu 16.04, но вы можете установить пакеты 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 .

Для получения дополнительной информации см. ответ: Ссылка

Извлечен из ссылки выше:

Assuming libapache2-mod-php is a suitable way to enable PHP in Apache for you, you can proceed in this way:

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

Switch PHP version ( Apache ):

  • from php5.6 to php7.0:
    sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart

  • from php7.0 to php5.6:
    sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart

    
ответ дан oerdnj 13.04.2016 в 11:32
источник
23

EDIT: принятый ответ явно не говорит о том, как совместно установить PHP 5.6 и 7.0, поэтому я хотел его расширить.

Для получения дополнительной информации см. ответ: Ссылка

Извлечен из ссылки выше:

Assuming libapache2-mod-php is a suitable way to enable PHP in Apache for you, you can proceed in this way:

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

Switch PHP version ( Apache ):

  • from php5.6 to php7.0:
    sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart

  • from php7.0 to php5.6:
    sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart

    
ответ дан FlavioEscobar 08.05.2016 в 23:10