Как обновить Magento 2 до последней версии?

Опубликовано: 2022-05-27

Введение

Обычно направленные на повышение безопасности и производительности, новые версии технологий вносят изменения и исправления, основанные на лазейках предыдущих версий. В этом блоге мы рассмотрим шаги по обновлению Magento 2 до последней версии 2.4.4.

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

Об обновлении Magento 2.4.4

Основная цель каждого обновления версии — повысить безопасность и производительность за счет дополнительных изменений, таких как обновления инфраструктуры, улучшения кода и введение новых функций. С выпуском Magento 2.4.4 отраслевые эксперты рассматривают его как важный выпуск версии, поскольку он фокусируется на шести областях трансформации;

  1. Представляем поддержку PHP 8.0 для Magento 2.4.4 и PHP 8.1 для платформы электронной коммерции. Обновление языка показало ускорение на 23,0% в Symfony Demo.

  2. Добавление поддержки OpenSearch вместе с поддержкой ElasticSearch.

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

  4. Обновлены важные программные компоненты, такие как добавление поддержки ElasticSearch 7.16.1 и OpenSearch 1.1, обновление jquery-ui до версии 1.13.0, а также библиотеки проектов и зависимости, совместимые с PHP 8.1.

  5. Удаление и обновление библиотек для повышения производительности. Были удалены: es6-collections.js, MutationObserver.js, Modernizr, FormData.js и обновленные библиотеки, такие как script.aculo.us, Chart.js, moment.js, moment-timezone-with-data.js, matchMedia. .js, underscore.js, PrototypeJS.

  6. В выпуске Magento 2.4.4 Adobe пообещала исправить ошибки GraphQL, чтобы решить проблемы с конфигурацией продукта, проблемы с идентификацией продукта, появлением категорий и т. д.,

Теперь, когда мы знаем об обновлениях, которые ломает Magento 2.4.4, давайте рассмотрим шаги по его обновлению.

Как перейти на Magento 2.4.4?

Было три способа обновить Magento

  1. Использование Composer из командной строки

  2. Использование мастера веб-настройки от администратора

  3. Загрузите последнюю версию Magento и замените файлы ядра

Начиная с выпуска Magento 2.4.0, Magento удалил мастер веб-настройки из панели администратора. Итак, разработчикам приходится обновлять Magento из командной строки или путем замены файлов. Я предложу функциональность командной строки. Поскольку мастер веб-настройки отсутствует, мы обсудим только доступные варианты.

Использование Composer из командной строки

Обновление Magento с помощью композитора — это первый способ обновления Magento. Первым шагом в этом процессе является определение новой версии Magento с помощью файла composer. Вы можете запустить приведенную ниже команду из корневого каталога Magento.

композитор требует magento/product-community-edition 2.4.4 – без обновлений

После того, как вы написали указанную выше команду, вам необходимо обновить Magento с помощью файла composer.

обновление композитора

После запуска команды composer update вы можете загрузить все обновленные модули из репозитория Magento. Убедитесь, что спецификация вашей системы совместима с последней версией Magento. Если все в порядке, то при обновлении Magento у вас не возникнет никаких проблем. Но вы можете столкнуться с наиболее распространенными проблемами, если ваша система не обновлена ​​или какое-либо стороннее расширение может создать проблему.

Ниже приведены некоторые известные проблемы, с которыми вы можете столкнуться при обновлении Magento.

1) Неопределенная константа класса PRE_COMMAND_RUN

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

самообновление композитора

2) Неизвестный тип загрузчика: Доступные типы: git, svn, ископаемый, hg, perforce, zip, rar, tar, gzip, xz, phar, файл, путь

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

Загрузите последнюю версию Magento и замените основные файлы

Замена основных файлов не является рекомендуемым способом обновления Magento. Но в некоторых случаях, когда у Magento больше сторонних расширений и больше настроек, мы должны выбрать этот путь. Процесс прост. Во-первых, вам нужно сделать резервную копию всех основных папок Magento, а не только папки «vendor».

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

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

Установка php bin/magento:обновление

Установка php bin/magento: статическое содержимое: развертывание

И это все, что вам нужно сделать, чтобы обновить Magento. Перед обновлением Magento нужно учесть несколько моментов.

  1. Сначала сделайте резервную копию вашего сайта

  2. Сделайте резервную копию вашей базы данных, потому что, когда вы запускаете команду «настроить обновление» после обновления, новые поля в таблице или некоторые поля могут быть стерты.

  3. Проверьте, совместимы ли ваша тема и расширения с более поздними версиями Magento.

Выше мы видели проблемы при обновлении Magento. Теперь мы обсудим некоторые известные проблемы после обновления Magento.

Отказано в выполнении встроенного сценария, поскольку он нарушает следующую директиву Content Security Policy.

Magento представила новый модуль под названием «Magento_CSP» в отношении защиты от CSRF. Вам необходимо разрешить доступ ко всем ресурсам CDN. Вы можете создать файл XML в своем модуле по указанному ниже пути.

app/etc/ИМЯ КОМПАНИИ/ИМЯ МОДУЛЯ/etc/csp_whitelist.xml

Добавьте приведенный ниже код в свой файл. Этот пример работает для URL-адресов Google Analytics

<?xml версия=”1.0″?>

<csp_whitelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Csp/etc/csp_whitelist.xsd">

<политики&gt

<идентификатор_политики="script-src">

<значения>

<!–Google>

<value id="google-analytics" type="host">www.google-analytics.com> </value>

</значения>

<политика>

<политики>

<csp_whitelist>

Вывод

Запускать более старую версию Magento — не лучшая идея. В наше время необходимо идти в ногу со временем. Обновление Magento предоставит вам последние обновления безопасности и преимущества новых функций и улучшений производительности.

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

Часто задаваемые вопросы
Поддерживается ли вариант оплаты Venmo в более новой версии Magento?

Да, Magento имеет улучшения оплаты PayPal и поддерживает вариант оплаты Venmo.

Нужно ли обновлять версию mysql?

Magento 2.4.4 поддерживает MySQL 8.0. если вы уже используете его, то не нужно обновлять.

Будут ли расширения автоматически обновляться при запуске обновления композитора?

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

Нужно ли нам обновлять конфигурацию сервера, чтобы обновить версию Magento?

Нет. Вам просто нужно убедиться в версии PHP.