Как обновить PHP5 на PHP7 на CentOS6
Раздел(ы): GNU Linux - CentOS / Debian, Программное обеспечение
Просмотры: 3549
Комментарии: 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 и т.п.
Теперь нам нужно отредактировать файл той версии PHP на которую вы хотите обновиться. В моем случае это remi-php73.repo.
Установите параметр enabled=1:
Для завершения обновления на 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 аккуратно заменив старые неработающие пятерки на семерки:
Благодарности
При написании статьи были использованы следующие источники:
Добрый день. Спасибо за статью полезно и лаконично. По примеру обновил php до версии 7.3. Но тут выяснилось, что с версией битрикса совместимо не полностью — выдает ошибки «[] operator not supported for strings» или «Using $this when not in object context» в ядре CMS. До этого использовал 7.03 было все ОК. Подскажите, а как откатить обратно? Заранее спасибо.