Centos 8 как обновить php

Обновлено: 07.07.2024

В этом руководстве мы обсудим, как установить PHP 7.2, 7.3 или 7.4 на CentOS 8. Перед тем, как выбрать версию PHP для установки, убедитесь, что ваши приложения ее поддерживают.

Мы также покажем вам, как интегрировать PHP с Nginx и Apache.

Установка PHP на CentOS 8

CentOS 8 распространяется с PHP 7.2. Эта версия поддерживает большинство современных приложений PHP, но более не будет активно поддерживаться с ноября 2019 года. Новые версии PHP доступны в репозитории Remi .

Включите репозиторий Remi

Если вы собираетесь установить стабильную версию дистрибутива PHP 7.2, пропустите этот шаг. В противном случае, если вы хотите установить PHP 7.3 или 7.4, включите репозиторий Remi, выполнив следующую команду от имени пользователя root или пользователя с привилегиями sudo :

Приведенная выше команда также активирует репозиторий EPEL .

После завершения установки запустите команду ниже, чтобы получить список всех доступных версий PHP :

В выводе будет показан список всех доступных модулей, включая связанный поток, версию и профили установки.

Модуль PHP по умолчанию установлен на PHP 7.2. Чтобы установить более новую версию PHP, включите соответствующую версию:

PHP 7.3

PHP 7.4

Теперь вы готовы установить PHP на свой сервер CentOS.

Установить PHP

Следующая команда установит PHP и некоторые из наиболее распространенных модулей PHP:

FPM устанавливается как зависимость и используется как сервер FastCGI. Запустите службу FPM и включите ее автоматический запуск при загрузке:

Настройка PHP для работы с Apache

Если в вашей системе работает SELinux , вам необходимо обновить контекст безопасности SELinux:

Настройка PHP для работы с Nginx

По умолчанию PHP FPM работает как пользовательский apache . Чтобы избежать проблем с разрешениями, мы изменим пользователя на nginx . Для этого отредактируйте строки, выделенные желтым:

Убедитесь, что директория /var/lib/php имеет правильного владельца :

После этого перезапустите службу PHP FPM:

Затем отредактируйте директиву виртуального хоста Nginx и добавьте следующий блок местоположения, чтобы Nginx мог обрабатывать файлы PHP:

Чтобы новая конфигурация вступила в силу, перезапустите службу Nginx :

Обновите контекст безопасности SELinux:

Выводы

PHP 7.2 доступен для установки из репозиториев CentOS 8 по умолчанию. Если вы хотите установить более свежую версию, вам необходимо включить репозиторий Remi.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Релиз PHP 8 состоялся 26 ноября 2020 года, и в этом посте мы покажем как установить новую версию или обновить старую версию PHP до 8.0.

Релиз PHP 8 содержит множество улучшений и изменений. По этому, прежде чем обновить версию PHP проверьте, что программы на сервере поддерживают последнюю версию php.

Установка PHP 8 на Centos 7/8

Установка PHP 8 как дефолтной версии на Centos 8 с заменой стандартной версии PHP:

Установка PHP 8 как дефолтной версии на Centos 7 с заменой стандартной версии PHP:

Чтобы установить любой дополнительный пакет PHP, используйте команду:

Установка PHP 8 на Ubuntu

Рассмотрим на примере Ubuntu 20.04. PHP 7.4 является версией PHP по умолчанию в репозиториях Ubuntu 20.04. Чтобы установить последнюю версию PHP, мы собираемся использовать репозитории Ondrej PPA.

Этот репозиторий содержит не только версии PHP но и расширения к ним. Но сначала давайте обновим ваши системные пакеты Ubuntu, установим некоторые зависимости и добавим репозиторий ppa:ondrej/php:

PHP 8 для Apache

Если вы используете веб-сервер Apache, установите PHP 8.0 с модулем Apache:.

Затем перезапускаем веб-сервер Apache, чтобы включить модуль:

Если вы хотите использовать веб-сервер Apache с PHP-FPM, выполните команду ниже, чтобы установить необходимые пакеты:

Поскольку PHP-FPM не включен по умолчанию, включить его можно выполнив команды:

Не забываем перезапустить апач, чтобы изменения вступили в силу:

PHP 8.0 для Nginx

Устанавливаем PHP и PHP-FPM, используя следующую команду:

Проверяем что все прошло успешно:

Мы должны увидеть что сервис запущен:

Обновление / Установка PHP 8 на Centos, Ubuntu, Debian & Windows

Проверяем, что PHP-FPM установлен

Чтобы Nginx мог обрабатывать файлы PHP, настраиваем блок сервера Nginx, обновив раздел сервера:

Не забываем перезапустить апач, чтобы изменения вступили в силу:

Установка PHP 8 для Debian

Добавляем APT-репозиторий пакетов PHP на свой Debian сервер и импортируем ключ:

После добавления репозитория, можно начать установку PHP 8.0 на Debian 10 | Debian 9:

PHP 8 на Windows

Далее включаете необходимые расширения. Это будет зависеть от библиотек, которые вы хотите использовать, но следующие расширения должны подходить для большинства приложений:

Далее, добавляем C: \ php в переменную окружения пути. Чтобы Windows могла найти PHP 8, вам необходимо изменить переменную среды path. Откройте «Настройки», введите «переменные среды» в поле поиска и откройте результат. Выберите вкладку «Дополнительно» и нажмите кнопку «Переменные среды».

Прокрутите список «Системные переменные» и нажмите «Путь», а затем кнопку «Изменить». Щелкните «Редактировать текст» и добавьте C: \ php в конец строки значения переменной (запомните точку с запятой).

На этом все. В некоторых случаях может потребоваться перезагрузка Windows.

PHP является одним из наиболее часто используемых языков программирования на стороне сервера. Многие популярные CMS и фреймворки, такие как WordPress, Magento и Laravel, построены на PHP.

Мы также покажем вам, как интегрировать PHP с Nginx и Apache.

Установка PHP на CentOS 8

CentOS 8 распространяется с PHP 7.2. Эта версия поддерживает большинство современных приложений PHP, но больше не будет активно поддерживаться с ноября 2019 года. Более новые версии PHP доступны в репозитории Remi .

Включить хранилище Remi

Если вы собираетесь установить стабильный дистрибутив PHP версии 7.2, пропустите этот шаг. В противном случае, если вы хотите установить PHP 7.3 или 7.4, включите репозиторий Remi, выполнив следующую команду от имени пользователя root или пользователя с привилегиями sudo :

Приведенная выше команда также активирует репозиторий EPEL .

После завершения установки выполните команду ниже, чтобы получить список всех доступных версий PHP:

Вывод покажет список всех доступных модулей, включая связанный поток, версию и профили установки.

Модуль PHP по умолчанию установлен на PHP 7.2. Чтобы установить более новую версию PHP, включите соответствующую версию:

PHP 7.3

PHP 7.4

Теперь вы готовы установить PHP на свой сервер CentOS.

Установить PHP

Следующая команда установит PHP и некоторые из наиболее распространенных модулей PHP:

PHP использует FPM устанавливается как зависимость и используется как сервер FastCGI. Запустите службу FPM и включите ее автоматический запуск при загрузке:

Настройка PHP для работы с Apache

Настройка PHP для работы с Nginx

По умолчанию PHP FPM запускается как пользователь apache . Чтобы избежать проблем с разрешениями, мы изменим пользователя на nginx . Для этого отредактируйте строки, выделенные желтым цветом:

Убедитесь, что /var/lib/php каталог имеет правильное владение :

После этого перезапустите службу PHP FPM:

Затем отредактируйте директиву виртуального хоста Nginx и добавьте следующий блок местоположения, чтобы Nginx мог обрабатывать файлы PHP:

Чтобы новая конфигурация вступила в силу, перезапустите службу Nginx :

Вывод

PHP 7.2 доступен для установки из репозиториев CentOS 8 по умолчанию. Если вы хотите установить более свежую версию, вам нужно включить репозиторий Remi.

PHP представляет собой серверный язык, который широко используется для веб-разработки. Обновление PHP позволяет выполнять в три раза больше запросов, одновременно повысив безопасность сайта.

Обновление PHP на сервере

Ubuntu

Чтобы обновить PHP, на операционной системе Ubuntu на ядре Linux должна стоять старая версия — PHP 5. В случае использования Apache применяется модуль mod_php, для Nginx — PHP-FPM.

Помимо этого , перед установкой следует убедиться в том, что предварительно создан пользователь без root-прав, который может выполнять команды sudo.

Добавление пакетов PPA

Добавление репозитория

Далее, чтобы установка новой версии PHP прошла без проблем, необходимо обновить кэш локального пакета через sudo apt-get update .

Модуль Apache

Перед установкой обновляются все старые пакеты, исключая php5-mysql, который будет удален. Все пользователи MySQL должны повторно добавить двухсторонние биндинги PHP:

Установка PHP производится с помощью команды:

Если ранее пользователь как-то изменял конфигурационные файлы предыдущей версии, их можно будет найти в директории /etc/php5/ . Новая конфигурация находится по адресу /etc/php/7.0 .

Обновление PHP-FPM для Nginx

Для начала устанавливается новый пакет PHP-FPM командой

В случае с MySQL необходимо повторить ту же операцию, что и пользователям Apache — обновить биндинги.

Пути сокетов у Nginx

Сервер использует сокет, чтобы взаимодействовать с PHP-FPM. По умолчанию новая версия языка использует указанный сокетами путь /var/run/php/php7.0-fpm.sock .

В файле конфигурации default необходимо найти блок, который начинается с location

Выходим из редактора и сохраняем файл. Эту процедуру необходимо провести для всех виртуальных серверов, которые располагаются в директории /etc/nginx/sites-enabled .

После завершения операции сервер перезагружается командой sudo service nginx restart .

Тестирование

Проверить PHP можно с помощью тестового файла, который нужно будет открыть или создать, если его нет. Для его создания подойдет редактор nano или любой другой. Открываем файл info.php в корневом каталоге.

Туда необходимо скопировать следующий код: <?php phpinfo(); ?>

Если что-то работает некорректно, необходимо убедиться в правильности действий. Например, обновление в панели Vesta требует предварительного ввода следующей команды:

А уже потом ввести версию PHP для начала процесса.

CentOS

Для CentOS 7 инструкция несколько отличается:

В первую очередь необходимо добавить репозиторий EPEL с помощью команды yum install epel-release .


Debian

Перед установкой новой версии PHP на Debian необходимо обновить все текущее программное обеспечение. Сделать это можно с помощью команд:

Как и с предыдущими случаями, в первую очередь необходимо включить PPA. Чтобы сделать это, импортировав ключ подписи, используем команду:

Чтобы начать установку PHP, запустите процесс командой:

Проверить установленную версию можно через php -v .

Результат установки

Обновление для популярных CMS

Обновление PHP для CMS площадок обуславливается двумя факторами.

Увеличением скорости работы. По сравнению со старыми версиями новая будет работать в 3-4 раза быстрее, что позволяет повысить ранжирование сайта в поиске;

Повышением безопасности. Снижаются риски взлома, причинения ущерба репутации сайта.

Как сменить версию PHP в ISPmanager, читайте в этой статье.

WordPress

Для WordPress обновление PHP требуется по упомянутым ранее причинам. Если вдруг желания обновлять его нет, следует помнить, что платформа хорошо работает даже с версией 5.6.20, то есть располагает отличной обратной совместимостью. Поэтому, нужно ли обновлять PHP, нужно решать индивидуально.

Что сделать перед обновлением

Резервное копирование сайта , обеспечивающее возможность возврата на старую версию без потерь.

Обновление WordPress , тем и плагинов — рекомендуется делать регулярно, потом стоит проверить корректную работу сайта.

Проверка совместимости с PHP — для этого можно использовать плагин PHP Compatibility Checker .

Чтобы плагины и темы работали нормально после обновления, их разработчики должны иметь хорошую репутацию. Если после обновления PHP не работает сайт, проблема может крыться именно в них. Служба поддержки WordPress не гарантирует такую совместимость с новой версией PHP, поэтому подготовительный этап рекомендуется не пропускать.

Чтобы обновить PHP на WordPress, необходимо открыть настройки хостинга и внести изменения самостоятельно в панели управления или обратиться в техническую поддержку с обращением.

Обновление PHP на сервере - wp

Попросить обновить версию PHP в WordPress можно с помощью обращения, которое предлагает служба поддержки платформы.

Joomla

Для повышения безопасности сайта любая CMS будет рекомендовать обновить PHP. Так, например, в справке Joomla будет написано: «Проект Joomla рекомендует обновить ваш сайт до версии PHP 7.1 или более поздней версии».

Чтобы обновление до последних версий PHP прошло без проблем, необходимо убедиться в том, что на сайте стоит как минимум Joomla 3.5. Иначе система будет работать некорректно.

Самый простой способ обновить версию PHP — обратиться в поддержку хостинга. Зачастую они это делают бесплатно и достаточно быстро. Если же хочется сделать все самому, достаточно перейти в панель управления и начать процедуру в настройках на хостинге.

Остальные способы представлены ниже.

Обновление через .htaccess

Чтобы обновить все таким образом, достаточно создать новый файл в корневом каталоге сайта или отредактировать существующий. Необходимо добавить только одну строчку.

VPS или сервер

Обновить PHP на сервере, если используется Ubuntu 14.04 и ниже, можно с помощью команды:

Для версии 5.6 достаточно использовать sudo apt-get install php5 и после перезапустить сервер.

Для исправной работы версии PHP 7, как и в случае с инструкцией для Ubuntu, потребуется дополнительно обновить mod_php для Apache и PHP-FPM для Nginx соответственно. Порядок действий для этого представлен выше.

Битрикс

Чтобы обновить PHP в веб-окружении Битрикс, необходимо:

Чтобы попасть в меню, подключаемся к серверу по SSH через пользователя с root-правами. Выбираем пункт 1. Manage servers in the pool .

В следующем списке нажимаем на 8. Update PHP and MySQL .

Выбираем Update PHP to version 7.1 и подтверждаем действие, введя «y» («yes»).

Меню отразит задание и его идентификатор, а также статус выполнения.

Чтобы узнать, завершен ли процесс, в основном меню нажимаем 10. Background pool tasks . Должна появиться строка с finished .

После любого обновления некоторые приложения могут перестать работать. Это связано с их версией выпуска. Если они запущены в Marketplace после лета 2016 года, то никаких проблем не возникнет. Более ранние версии имеют другие механизмы защиты, которых может оказаться недостаточно для работы с обновленным PHP.

В данной статье рассмотрен способ обновления PHP и MySQL средствами сторонних репозиториев, которые можно подключить к списку базовых в операционной системе.

Прежде чем приступать к обновлению, предварительно рекомендуется проверить следующую информацию:

  • Какие версии PHP/MySQL доступны на выбранном репозитории на вашем виртуальном сервере;
  • Поддерживает ли ваше ПО работу с версиями PHP/MySQL, до которых планируется выполнять обновление. Если нет, то обновление может привести к неполадкам в работе вашего программного обеспечения.

Содержание

Обновление PHP и MySQL в CentOS/Fedora с помощью репозиториев EPEL, REMI и RPMForge

CentOS 6 (64 bit)

Перед обновлением вам необходимо подключить дополнительные репозитории: EPEL, REMI и RPMForge. Это делается при помощи следующих команд:

Их активация выполняется редактированием файлов /etc/yum.repos.d/epel.repo, /etc/yum.repos.d/rpmforge.repo и /etc/yum.repos.d/remi.repo. Открыв выбранный файл любым редактором (например, nano), измените значение параметра Enabled с 0 на 1.

Сохранение результатов редактирования выполняется сочетанием клавиш Ctrl+O. Выйти из редактора можно, нажав на Ctrl+X.

В файле /etc/yum.repos.d/remi.repo в обязательном порядке активируйте секцию той версии PHP, до которой хотите обновиться, установив значение параметра enabled равным 1.

Сохранив изменения, выполните команду

Примечание: описанные выше шаги помогут обновить PHP до максимальной версии, но MySQL удастся обновить только до версии 5.5.44. Чтобы обновиться до версии выше, нужно подключать еще один репозиторий:

Затем в файле mysql-community.repo необходимо активировать нужную версию MySQL (enabled=1):

После этого исполнить команду

MySQL будет обновлена до указанной вами в файле mysql-community.repo версии.

CentOS 6 (32 bit)

Алгоритм действий для обновления версий PHP и MySQL аналогичен описанному в предыдущем разделе. Сначала загрузите дополнительные репозитории EPEL, RPMForge и REMI, совместимые с используемой на VPS операционной системой:

Таким же образом активируйте их редактированием файлов /etc/yum.repos.d/epel.repo, /etc/yum.repos.d/rpmforge.repo и /etc/yum.repos.d/remi.repo :

После чего выполните команду

Для обновления MySQL до версии выше 5.5.44 используйте команду:

Сделайте активной секцию желаемой версии MySQL (enabled=1):

И снова выполните

Fedora 20 (64 bit)

По аналогии с двумя предыдущими разделами скачайте репозитории EPEL, RPMForge и REMI:

Подключите их, присвоив значение 1 параметру enabled, открыв для редактирования файлы /etc/yum.repos.d/epel.repo, /etc/yum.repos.d/rpmforge.repo и /etc/yum.repos.d/remi.repo :

Хотим заметить, что при использовании ОС Fedora в файле /etc/yum.repos.d/remi.repo секции, относящиеся к той или иной версии PHP отсутствуют. Вам необходимо активировать только сам репозиторий REMI.

Обновление же версии PHP выполняется командой

Для обновления версии MySQL выполните:

Откройте редактором nano файл mysql-community.repo и активируйте в нем нужную вам версию MySQL:

Обновите версию MySQL:

Fedora 20 (32 bit)

Для 32-битной версии данной ОС репозитории EPEL и RPMForge отсутствуют, потому подключаем только REMI:

Читайте также: