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


Я пытаюсь обновить, чтобы установить 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 из-за поддержки в программном обеспечении

224
2018-03-02 14:45


происхождения


если sudo apt-get upgrade Не обновляйте PHP, а затем попробуйте sudo apt-get dist-upgrade. Для обновления дистрибутива. - Moiz Kiyani


ответы:


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

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

  • PPA: Ондрей / PHP Launchpad logo (для совместимых версий PHP 5.6 / 7.0 / 7.1 PHP 5.5 больше не поддерживается)

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

  • PPA: Ондрей / php5-Compat Launchpad logo (для манекена php5 для удовлетворения зависимостей в старых пакетах)

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

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

  • PPA: Ондрей / apache2 Launchpad logo (для Apache 2.4)

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

PPA: Ондрей / PHP Launchpad logo (для 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: Ондрей / php5-Compat Launchpad logo (для php5 compat)

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

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

PHP 5.4

Распакованный последний PHP 5.4 теперь находится в отдельном PPA: PPA: Ондрей / php5-старый стабильный дистрибутив Launchpad logo

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


288
2018-03-02 14:58



Оказывается, вы должны бежать sudo apt-get update первый! - kavisiegel
для этого есть пакет php5-cli! - matteosister
После добавления ppa вы можете выполнить: sudo apt-get dist-upgrade - matteosister
После установки ppa, обновления php и запуска php -v, информация о версии начинается с этого сообщения об ошибке: Ошибка загрузки /usr/lib/php5/20090626/xdebug.so: /usr/lib/php5/20090626/xdebug.so: невозможно открыть файл общих объектов: такой файл или каталог отсутствуетРаздражает. - systemovich
использование apt-get install software-properties-common если apt-get install python-software-properties не обеспечивает add-apt-repository команда. - Meetai.com


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


3