Переход на PHP 7. Блог даже не упал!

2 комментария

php 7

Добрый день, уважаемые читатели блога! Вчера стало необходимо осуществить переход на PHP 7. Конечно, было страшновато, т.к. неизвестно, все ли будет работать после этого, но делать было нечего. Обновление было необходимо и полезно.

Что имеем на входе:

  • Сервер на базе Ubuntu
  • PHP версии 5.0

Таким образом, нам необходимо совершить переход с PHP 5 на PHP 7. PHP был ранее установлен в папку /etc/php5/.

Обновление PHP

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

Соглашаемся на установку, у меня по крайней мере никаких проблем не возникло.

Обновляем кэш пакетов:

Затем выполняем команду

На сервере должна появиться папка /etc/php/7.0.

Казалось бы все. Чтобы проверить, какая же версия PHP у нас установлена, выполним команду в консоли:

В ответ должно вернуться, что наша версия 7.0, и именно она должна работать с веб-сервером. Но мы не верим и правильно делаем. Создаем на нашем веб-сервере файл с названием, например, test.php, можно в корне или в подпапке веб-сервера с содержимым

То, что нас интересует, написано в самой первой строчке и у меня замазано :

версия php phpinfo

Неа, версия как была 5, так и осталась. Почему? Потому, что нужный модуль не был подгружен для веб-сервера.

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

Включение PHP 7 для Apache

Выключаем PHP 5 для Apache

Включаем только что установленный PHP 7.0

Ну и конечно сам веб-сервер надо рестартануть.

Включение PHP 7 для Nginx

В случае работы через Nginx надо не забыть обновить пакет php-frm

Затем надо ручками поправить конфигурационный файл

Строку конфигурационного файла Nginx

меняем на

И обязательно перезапускаем Nginx

Заключение

После приведенных выше действий необходимо еще раз удостовериться, что версия PHP поменялась, поэтому обратитесь с тому файлу через браузер, который в рамках данной статьи мы назвали test.php, посмотрите, седьмая ли версия теперь работает. Если все ОК, проверьте работоспособность блога. Разработчики WordPress обещают, что они тестируют движок на самых последних версиях PHP .

И конечно, очень неплохо даже для личного блога иметь его тестовый вариант сервера, полностью идентичный продакшн-серверу, чтобы накатить такие глобальные изменения туда, все оттестировать и только потом накатывать обновления на продакшн. Но это по-хорошему  .

Подпишитесь на обновления блога!


2 комментария “Переход на PHP 7. Блог даже не упал!”

  1. Владимир

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

    Ответить
    • NoService
      NoService

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

      В PHP 7 хорошо поработали над производительностью, правда, это не означает, что блог/сайт начнет летать. Я не могу сказать, что у меня что-то заметно ускорилось после обновления, т.к. «узкое горлышко», видимо, находится не на уровне версий PHP. Ваш сайт может оказаться более отзывчивым, когда его код будет приведен в соответствие с нововведениями PHP 7, и заработает. Есть ряд улучшений в плане безопасности кода. В PHP 5 были дыры, которые позволяли уронить сайт, используя опубликованные уязвимости. Вроде бы для 7 были выпущены обновления, это дело закрывающие.

      Так что я бы посоветовала попробовать перейти, все-таки бреши в безопасности кода на PHP 5.6 известны и могут быть применены к Вашему сайту. Производительность надо смотреть, чуда может и не произойти, как я писала ранее.

      Ответить

Оставьте комментарий

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> <img src="" alt="" class="" width="" height="">

http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ab.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ac.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ag.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ah.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ai.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ak.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/am.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/an.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ao.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/aq.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ar.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/at.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/av.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/aw.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/ay.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/az.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bb.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bc.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/bd.gif 
http://noservice.ru/wp-content/plugins/wp-monalisa/icons/be.gif 
больше...