Итак, я недавно установил свой первый 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? Или что я делаю не так?
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
.
Для получения дополнительной информации см. этот ответ: https://askubuntu.com/a/762161/309221
Извлечено из ссылка выше:
Предполагая, что
libapache2-mod-php
является подходящим способом для включения PHP в Apache, вы можете поступить следующим образом:
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 (Apache):
с php5.6 на php7.0: [124 3] 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
РЕДАКТИРОВАТЬ: в принятом ответе явно не указано, как совместно установить PHP 5.6 и 7.0, поэтому я хотел расширить его.
Для получения дополнительной информации см. Этот ответ: https://askubuntu.com/a/762161/309221
Извлечено из ссылки выше:
Предполагая, что
libapache2-mod-php
- подходящий способ включить PHP в Apache для вас, вы можно выполнить следующим образом:
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 (Apache):
с 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