Как обновить php на сервере
Перейти к содержимому

Как обновить php на сервере

  • автор:

BitrixVM как обновить PHP до 7.4 и 8.1

Разработчики CMS Bitrix рекомендовали использовать для BitrixVM версию PHP 7.4. Начиная с февраля 2023 г. рекомендованная версия уже PHP 8.1. Обновить версию PHP до 7.4 или 8.1 вы можете за несколько шагов.

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

Если вы используете более раннюю версию BitrixVM, то сначала нужно обновить ее до актуальноый версии.

PHP 8.1 показывает самый лучшие результаты по скорости работы по сравнению с другими версиями PHP, поэтому мы рекомендуем использовать ее для любого сайта, в том числе для 1С-Битрикс.

Обновление версии BitrixEnv

Подключитесь к серверу по SSH и выполните в меню Bitrix следующие действия:

  1. Выберите пункт 1. Manage servers in the pool, а затем 10. Enable or disable bitrix-env beta versions:

Включение бета-версии BitrixVM

  1. Выберите пункт 1. Enable bitrix-env beta versions, а затем введите y для подтверждения обновления:

Включение бета-версии BitrixVM

  1. Далее в главном меню выберите пункт 1.Manage servers in the pool, а затем 4. Update packages on host.
  2. При запросе Enter server address введите IP-адрес сервера.
  3. При запросе Please choose update type введите на выбор: bitrix — для обновления только BitrixEnv до актуальной версии, либо all для обновления всех имеющихся пакетов, в том числе и BitrixEnv.
  4. Далее будет запущен процесс обновления. После завершения обновления версия BitrixEnv изменится на 7.4.11

Обновление BitrixVM

Обновление версии PHP до 7.4 или 8.1
  1. В главном меню выберите пункт 1.Manage servers in the pool, а затем 8. Update PHP and MySQL.
  2. Далее выберите пункт 1. Upgrade PHP.
  3. Далее выберите пункт 1. Update PHP to version 7.4 или 8.1, в зависимости от того, какая версия вам нужна, и введите для подтверждения обновления.

BitrixVM как обновить PHP до 7.4

На этом обновление версии PHP завершено.

Как обновить версии MySQL и PHP для сайтов на окружении Битрикс

url image

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

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

Подключимся к серверу по SSH и авторизуемся под root-пользователем, чтобы попасть в меню веб-окружения. Далее выберем пункт «1. Manage servers in the pool» : В открывшемся списке выбираем пункт «8. Update PHP and MySQL» : Далее вас попросят ввести hostname, после появится меню с выбором увеличения или понижения версия PHP: «1. Update PHP» , «2. Downgrade PHP» : Текущая версия PHP, которая используется на сервере, — 7.4. Нам необходимо обновление, поэтому выбираем пункт «1. Upgrade PHP» . И в следующем меню для обновления PHP предлагается 2 варианта:

  • «1. Update PHP to version 8.1» — обновление PHP до версии 8.1,
  • «2. Update PHP to version 8.0» — обновление PHP до версии 8.0.

Выберите нужный пункт, в нашем случае это «2. Update PHP to version 8.0» . Появится строка с подтверждением обновления. Напишите «y» (yes) и нажмите Enter:

Появится сообщение о том, что создано задание на обновление, и будет указан идентификатор задания (Job ID), процесса (PID) и текущий статус выполнения (Status):

Нажимаем Enter, чтобы снова попасть в меню обновления PHP и MySQL, а после четыре раза выбираем пункт «0. Previous screen or exit» и попадаем снова в главное меню окружения. Теперь выберем пункт «10. Background pool tasks» :

И посмотрим статус процесса обновления PHP. Увидели «Finished» — значит, задание успешно завершено, PHP обновлен с 7.4 до 8.0.

Если вам понадобится вернуться к более ранней версии PHP, вы сможете сделать это также в меню «1. Manage servers in the pool» — «8. Update PHP and MySQL» — «2. Downgrade PHP» , выберите пункт с нужной версией PHP, самая низкая доступная версия PHP 5.6 — «1. Downgrade PHP to version 5.6» :

Перед обновлением MySQL-сервера настоятельно рекомендуем сделать бэкапы баз данных, используемых сайтами.

Обновление версии MySQL

Для обновления MySQL-сервера перейдём в меню веб-окружения Битрикс. Выберем пункт «1. Manage servers in the pool» , далее «8. Update PHP and MySQL», затем пункт «3. Upgrade MySQL version» . И наконец пункт «1. Upgrade MySQL to version 8.0» :

Подтвердим обновление аналогично с обновлением PHP — напишем «y». Так же, как и в случае с PHP, появится информация о задаче, выполнение которой мы можем отслеживать, чтобы убедиться, что обновление прошло успешно:

Нажмем Enter , вернемся в меню обновления PHP и MySQL, после трижды выберем пункт «0. Previous screen or exit» , оказавшись в главном меню, проверим выполнение задачи, перейдя в пункт «10. Background pool tasks» :

Обновление MySQL процесс занимает больше времени, чем обновление PHP, поэтому, скорее всего, вы увидите, что задача ещё выполняется — статус «running»:

Подождите 5-15 минут, выпейте чаю и погладьте кота, и снова зайдите в «Background pool tasks» :

Задача перешла в статус «Finished», и MySQL-сервер успешно обновлен до версии 8.0. Ура, товарищи!

Если у вас возникли сложности с обновлением PHP и MySQL на веб-окружении Битрикс, напишите нам в поддержку — мы поможем.

Как обновить версию PHP Joomla

php joomla

Если вы читаете этот пост, скорее всего, ваш сайт работает с древней версии PHP. Вы не одиноки, версия PHP 5.3 используется на 31,1% всех сайтов и 5.4 на 29% сайтов. Обе эти версии PHP уже достигли конца своей жизни и больше не будет поддерживаться. А это значит, что на вашем сайте потенциально возможны большие угрозы безопасности.

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

В Joomla недавно подняли требования к версии PHP до PHP 5.6 или 7. Но CMS также может работать на PHP 5.3.10+.

PHP 7 уже выпустили, и это прорыв истории в PHP. Поэтому давно пора обновить серверную версию PHP до PHP 7 или, по крайней мере, до 5.6+. В этом уроке я собираюсь показать вам, как вы можете это сделать.

**Важно : если вы решили обновиться до PHP 7, убедитесь, что версия Joomla на вашем сайте 3.5+ для того, чтобы система работала должным образом.

Виртуальный хостинг или VPS

Самый простой способ

Попросите своего хостера обновить PHP версию хостинга. Скорее всего, он сделает это бесплатно, и это самый простой способ обновиться. Однако, если они отказались или не в состоянии сделать это, то пришло время перейти к надежному поставщику услуг.

Обновить PHP через cPanel

Большинство хостингов предоставляют cPanel для самостоятельного управления хостингом. CPanel позволят вам обновить версию PHP через свой интерфейс. Найдите диспетчер версии PHP или варианты конфигурации PHP и щелкните по нему.

Выберите версию PHP 5.6+ или 7 и сохраните изменения.

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

Если перечисленные выше способы не работают для вас, то ваш лучший выбор — обновить версию PHP с использованием файла .htaccess.

Перейдите в cPanel, «Диспетчер файлов» и выберите корень сайта. Это можно сделать и с помощью FTP. В корневом каталоге создайте новый файл (или отредактируйте существующий) .htaccess и добавьте следующую строку:

Чтобы перейти на PHP 5.6

AddHandler application/x-httpd-php56 .php .php5 .php4 .php3

Чтобы перейти на PHP 7.0

AddHandler application/x-httpd-php70 .php .php5 .php4 .php3

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

VPS или выделенный сервер

Если вы используете Ubuntu 14.04 или ниже Вы можете обновиться с помощью этой команды :

sudo apt-get upgrade sudo apt-get dist-upgrade

Давайте добавим PHP репозиторий в наш список. Пожалуйста, выбрите соответствующую версию.

sudo apt-add-repository ppa:ondrej/php5-5.6
sudo apt-add-repository ppa:ondrej/php

Обновление до версии PHP 5.6

sudo apt-get install php5

Ваша версия PHP теперь повышена и необходима просто перезагрузить сервер.

Apache : sudo service apache2 restart

Nginx : sudo service nginx restart

Обновление до версии PHP 7

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

Обновление mod_php в Apache

Во-первых, необходимо установить новые пакеты (packages). Это обновит все важные файлы PHP, за исключением пакета PHP5-MySQL, которая будет удалена.

sudo apt-get install php7.0

Примечание: если вы внесли существенные изменения в файлы конфигурации в /etc/PHP5, то эти файлы останутся на месте, и на них можно ссылаться. Конфигурационные файлы для PHP 7.0 будут находиться в /etc/PHP/7.0.

Если вы используете MySQL, убедитесь в том, чтобы повторно добавить обновленные версии PHP и MySQL привязки:

sudo apt-get install php7.0-mysql
Обновление PHP-FPM в nginx

А теперь поговорим о процессе обновления системы с помощью nginx в качестве веб-сервера и PHP-FPM для выполнения PHP-кода.

Во-первых, установите новый PHP-FPM пакет и его зависимости:

sudo apt-get install php7.0-fpm

После этого вам будет предложено продолжить. Нажмите клавишу Enter, чтобы завершить установку. Если вы используете MySQL, убедитесь, что повторно установили PHP привязки к MySQL:

sudo apt-get install php7.0-mysql

Примечание: если вы внесли существенные изменения в файлы конфигурации в /etc/PHP5, то эти файлы останутся на месте, и на них можно ссылаться. Конфигурационные файлы для PHP 7.0 будут находиться в /etc/PHP/7.0.

Теперь обновите ваш сервер nginx блок с новым PHP 7.0.

fastcgi_pass unix:/run/php/php7.0-fpm.sock;

Сохраните и закройте файл. Теперь остается просто перезагрузиться.

sudo service nginx restart

Проверить вашу версию PHP в админ-панели Joomla, откройте Система > Информация о системе. Вы сможете увидеть там номер вашей PHP версии.

Я настоятельно рекомендую обновиться до PHP 7, потому именно использование последней версии PHP сделает ваш сайт намного быстрее. Да и обновить версию совсем не сложно!

Как установить/обновить PHP 8.1 в Ubuntu/Debian

Как установить/обновить PHP 8.1 в Ubuntu/Debian

PHP 8.1 уже выпущен с новыми функциями, улучшениями и устаревшими функциональными возможностями.

На сегодняшний момент ни один из текущих репозиториев программного обеспечения Ubuntu или Debian не предлагает PHP 8.1 в своих репозиториях программного обеспечения по умолчанию. Однако Ондржей Сури продолжает делать версии PHP доступными в виде репозитория программного обеспечения Debian/Ubuntu, и теперь доступны пакеты PHP 8.1.

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

Изменения расширений и зависимостей PHP 8.1

Расширение Curl поддерживает DNS через HTTPS (DoH), начиная с PHP 8.1. Для этой функции требуется Curl версии 7.62 или более поздней, и она будет недоступна в более старых версиях Debian/Ubuntu, которые не включают в себя версию Curl более позднюю, чем 7.62. Например, эта функция будет недоступна в Ubuntu 18.04.

Изменения в директиве INI PHP 8.1

  • функции date_sunrise, date_sunset и соответствующие им настройки INI — устарели
  • настройки filter.default и filter.default_options INI — устарели
  • Директива auto_detect_line_endings INI — устарела

Итак, приступим к установке PHP 8.1.

1.Перечислите существующие пакеты PHP

При обновлении существующей версии PHP проще перечислить существующие расширения PHP, установленные как пакеты программного обеспечения, чтобы они соответствовали списку расширений PHP 8.1. В системах, которые устанавливают PHP 8.1 заново, этот шаг не требуется.

dpkg -l | grep php | tee packages.txt

Эта команда выводит список всех установленных пакетов PHP, отображает их на экране и сохраняет в файл с именем packages.txt в текущем рабочем каталоге.

2. Добавить PPA ondrej/php

После добавления этого репозитория первоначальную установку и обновления можно выполнить стандартными apt командами.

sudo add-apt-repository ppa:ondrej/php # Press enter when prompted. sudo apt update
sudo apt install apt-transport-https lsb-release ca-certificates wget -y sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' sudo apt update

Приведенные выше шаги добавят PPA в качестве источника пакетов, который содержит все пакеты PHP и их зависимости, такие как argon2 и libzip.

3. Установите PHP 8.1 и расширения

Все пакеты PHP 8.1 следуют шаблону php8.1-NAME. Дополнительные расширения (такие как GD, Curl и т. д.) могут быть установлены так же, в виде наименование программных пакетов (php8.1-gd, php8.1-curl и т. д.).

  • php8.1 — это мета-пакет , который коллективно устанавливает несколько зависимостей, таких, как php8.1-cli и php8.1-readline, а также некоторые вспомогательные пакеты.
  • php8.1-common — это также мета-пакет, который устанавливает большинство широко используемых расширений PHP за один раз. Он автоматически устанавливает пакет, например php8.1-pdo, php8.1-tokenizer и другие полезные расширения.
sudo apt install php8.1 php8.1-common php8.1-cli -y

Эта команда установит несколько расширений PHP — php8.1-common и CLI для PHP 8.1. После установки, можно проверить наличие установленных модулей, запустив:

php -v # Показать версию PHP . php -m # Показать установленные и загруженные модули PHP.

Вы можете установить дополнительные расширения по тому же шаблону php8.1-NAME. Обратитесь к файлу packages.txt, чтобы увидеть список существующих пакетов, если вы обновляете существующую систему. Обратите внимание, что начиная с PHP 8.0, расширение JSON входит в комплект и устанавливается неявно.

Пример установки еще нескольких полезных расширений:

sudo apt install php8.1-

Для сред разработки также могут быть установлены инструменты покрытия кода или отладчик Xdebug.

sudo apt install php8.1-pcov # PCOV code coverage tool sudo apt install php8.1-xdebug # Xdebug debugger

Внимание! Эти расширения не рекомендуется устанавливать на продакшн серверах.

В зависимости от используемого веб-сервера вам потребуется установить дополнительные пакеты для интеграции с веб-сервером.

Для использования Nginx, Litespeed и т.п. устанавливаем php8.1-fpm. Пакет обеспечивает интеграцию с PHP 8.1 через FPM:

sudo apt install php8.1-fpm

Для использования Apache mod_php установите libapache2-mod-php8.1:

sudo apt install libapache2-mod-php8.1

Обратите внимание, что обработчик Apache2 переименован из php7_module в php_module для PHP 8.0. Пакет автоматически настраивает расположение модуля Apache, но если вы обновляете с существующей установки PHP, возможно , потребуется обновление конфигурационных файлов; в частности блоки .

4. Протестируйте установку PHP 8.1

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

php -v php -m
PHP 8.0.13 (cli) (built: Nov 22 2021 09:50:43) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.13, Copyright (c) Zend Technologies with Zend OPcache v8.0.13, Copyright (c), by Zend Technologies with Xdebug v3.1.1, Copyright (c) 2002-2021, by Derick Rethans 
[PHP Modules] apcu calendar Core ctype curl date dom exif FFI . [Zend Modules] Xdebug Zend OPcache

Очистить старые версии PHP

Если новая установка работает должным образом, вы можете удалить старые пакеты PHP из системы. Например, если вы используете PHP 8.0 в качестве предыдущей версии, сделать это можно с помощью команды (Осторожно! Не удаляйте старую версию, не убедившись, что ни одно из ваших приложений не использует эту версию):

sudo apt purge '^php8.0.*'

Запуск PHP 8.1 с другими версиями

Вместо удаления старых версий PHP можно также запускать несколько версий PHP параллельно. Команда update-alternatives обеспечивает простой способ переключения между версиями PHP для PHP CLI.

sudo update-alternatives --config php
Есть 5 вариантов для альтернативы php (предоставляет /usr/bin/php). Выбор Путь Приор Состояние ------------------------------------------------------------ 0 /usr/bin/php8.1 81 автоматический режим 1 /usr/bin/php7.2 72 ручной режим 2 /usr/bin/php7.3 73 ручной режим 3 /usr/bin/php7.4 74 ручной режим * 4 /usr/bin/php8.0 80 ручной режим 5 /usr/bin/php8.1 81 ручной режим 

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

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