Как установить другую (обновленную или пониженную) версию PHP в поддерживаемой версии Ubuntu?

216

Я пытаюсь обновить, чтобы установить PHP 5.5, 5.6 или 7.0 в Ubuntu 12.04 / 14.04 / 16.04 LTS, и я могу получить только PHP 5.3.10 для Ubuntu 12.04, PHP 5.5.9 для Ubuntu 14.04 или PHP 7.0.4 для Ubuntu 16.04, используя официальные репозитории (используя apt-get).

Я не уверен, как сделать обновление вручную - так как мне нужно:

  • , чтобы играть с новыми (est) функциями PHP.
  • для установки более старой версии PHP из-за поддержки в программном обеспечении.
задан kavisiegel 02.03.2012 в 15:45
источник

2 ответа

276

Вы можете использовать PPA, чтобы оставаться в курсе PHP или устанавливать предыдущую версию PHP (f.e. PHP 5.6 на Ubuntu 16.04 LTS).

Наиболее широко используемые репозитории происходят от Ondřej Surý, разработчика PHP Debian:

  • ppa: ondrej / php (для совместимых версий PHP 5.6 / 7.0 / 7.1, PHP 5.5 больше не поддерживается)

Пакеты поддержки php5:

  • ppa: ondrej / php5-compat (для dummy php5 для удовлетворения зависимостей в старых пакетах)

( Нажмите здесь, чтобы получить инструкции по использованию PPA. )

PHP PPA ранее содержал обновление Apache 2.4. Это уже не случай, вам нужно добавить отдельный репозиторий Apache 2.4:

Если вы хотите использовать эти PPA, сделайте следующее:

ppa: ondrej / php (для PHP 5.6 / 7.0 / 7.1)

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php7.1   # for PHP 7.1
sudo apt-get install php7.0   # for PHP 7.0
sudo apt-get install php5.6   # for PHP 5.6

Для переключения между установленными версиями используйте

sudo update-alternatives --config php

Затем вы должны установить Apache для работы с правильной версией:

sudo a2dismod php7.1         # unload the current version
sudo a2enmod  php5.6         # load the version you need
sudo service apache2 restart # restart webserver to apply

ppa: ondrej / php5-compat (для совместимости php5)

sudo add-apt-repository ppa:ondrej/php
sudo add-apt-repository ppa:ondrej/php5-compat
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php5 # this will pull php5.6 package 

Если у вас нет бинарного файла add-apt-repository , выполните следующие действия:

sudo apt-get install python-software-properties

Меры предосторожности:

  • Безопасны ли PPA для добавления в мою систему и какие" красные флаги "отслеживать?
  • Каждая версия PHP имеет свой собственный набор модулей и php.ini .

PHP 5.4

Распакованный последний PHP 5.4 теперь находится в отдельном PPA: ppa: ondrej / php5-oldstable

Имейте в виду, что PHP 5.4 заканчивается на 3. Сентябрь 2015 г. и он не получает обновлений безопасности. Рекомендуется перенести, по крайней мере, на PHP 5.6, который получит обновление безопасности до 31. Декабрь 2018 года .

    
ответ дан oerdnj 21.05.2017 в 20:38
источник
3

Потребуется некоторое время для пакетов PHP 5.4, чтобы попасть в Ubuntu, так как есть очень много проверок зависимостей. Ubuntu 12.04 теперь находится в состоянии бета-версии, поэтому я сомневаюсь, что он обновит его до PHP 5.4 (хотя у меня нет официального или внутреннего знания об этом) - он, вероятно, не появится до Ubuntu 12.10 в октябре этого года. Если вы хотите это раньше, вам придется либо найти сторонний пакет, либо научиться строить его самостоятельно из исходного кода.

    
ответ дан Mike Scott 02.03.2012 в 15:58