Как обновить PHP5 на PHP7 на CentOS6

Опубликовано: 7 июля 2019
Раздел(ы): GNU Linux - CentOS / Debian, Программное обеспечение
Просмотры: 3427
Комментарии: 1

Есть у меня один старенький боевой сервер, на котором в качестве операционной системы трудится CentOS 6.10. Последняя, как известно, славится своим консерватизмом. То есть все приложения проверенные и стабильные, но, увы, не первой свежести. Так PHP в родных репозиториях всего лишь версии 5.3. И это в то время, когда PHP7 уже давно шагает по миру.

Преимущества PHP7

Новая версия PHP (7.X) получилась очень удачной. Приложения использующие PHP7 работают быстрее и при этом используют меньше памяти.

Недостатки PHP7

В PHP7 были изменены некоторые функции, в результате старое ПО написанное на PHP5 может оказаться неработоспособным.

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

Какую версию PHP7 выбрать

На момент написания статьи самая свежая версия PHP 7.3.6. И правильнее было бы обновиться именно до этой версии. Ведь это даст вам повышение безопасности и производительности + WordPress будет загружаться намного быстрее и потреблять меньше ресурсов. PHP 7.3 быстрее, чем любая другая предыдущая версия.

Однако, некоторые проекты (например форумный движок phpBB текущей версии 3.2.5) поддерживают максимум PHP 7.2, а на версии 7.3 могут быть ошибки. Поэтому тщательно проверьте совместимость используемого программного обеспечения на вашем сервере с актуальной версией PHP.

Инструкция по обновлению PHP5 на PHP7 на CentOS6

Первым делом необходимо установить репозитории EPEL и Remi на вашем сервере:

# yum install epel-release
# yum install http://rpms.remirepo.net/enterprise/remi-release-6.rpm

После этого в директории /etc/yum.repos.d/ должны появиться файлы remi-php70.repo и т.п.

Как обновить PHP5 на PHP7 на CentOS6

Теперь нам нужно отредактировать файл той версии PHP на которую вы хотите обновиться. В моем случае это remi-php73.repo.

Установите параметр enabled=1:

Как обновить PHP5 на PHP7 на CentOS6

Для завершения обновления на PHP7 осталось выполнить стандартную команду обновления CentOS:

# yum update

В процессе ее выполнения вы увидите, что пакеты php обновляются на новую версию.

В завершении осталось перезапустить вер-серверы NGINX и Apache:

# service nginx restart
# service httpd restart

И проверить текущую версию PHP:

# php -v
PHP 7.3.6 (cli) (built: May 28 2019 15:55:47) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.6, Copyright (c) 1999-2018, by Zend Technologies

Возможные проблемы при обновлении PHP на CentOS6

Я проводил обновление PHP на рабочем сервере и у меня не перезапустился Apache. Пришлось поправить руками файл конфигурации PHP /etc/httpd/conf.d/php.conf аккуратно заменив старые неработающие пятерки на семерки:

Как обновить PHP5 на PHP7 на CentOS6

Благодарности

При написании статьи были использованы следующие источники:

  1. https://forum.vestacp.com/viewtopic.php?t=18301
  2. https://tecadmin.net/nstall-php7-on-centos6/
  3. https://www.tecmint.com/install-php-7-in-centos-6/

Обсуждение (комментарии к статье)

  1. Добрый день. Спасибо за статью полезно и лаконично. По примеру обновил php до версии 7.3. Но тут выяснилось, что с версией битрикса совместимо не полностью — выдает ошибки «[] operator not supported for strings» или «Using $this when not in object context» в ядре CMS. До этого использовал 7.03 было все ОК. Подскажите, а как откатить обратно? Заранее спасибо.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить" Вы даёте свое согласие на обработку введенной персональной информации в соответствии с Федеральным Законом №152-ФЗ от 27.07.2006 "О персональных данных", на условиях и для целей определенных политикой конфиденциальности сайта.
© Юрий Рассадников, 2011 - 2024
uptime узнать
Домен : reg.ru
Хостинг : adman.com
SQL - 6 | 0,151 сек. | 8.29 МБ