Magento 2.3 technology stack requirements

All of the requirements described here apply to the latest patch release of Magento 2.3.

Operating systems (Linux x86-64)

Linux distributions, such as RedHat Enterprise Linux (RHEL), CentOS, Ubuntu, Debian, and similar. Magento is not supported on Microsoft Windows and macOS.

Memory requirement

Upgrading the Magento applications and extensions you obtain from Magento Marketplaces and other sources can require up to 2GB of RAM. If you are using a system with less than 2GB of RAM, we recommend you create a swap file; otherwise, your upgrade might fail.

Supported browsers

Storefront and Admin:

  • Internet Explorer 11 or later, Microsoft Edge, latest–1
  • Firefox latest, latest–1 (any operating system)
  • Chrome latest, latest–1 (any operating system)
  • Safari latest, latest–1 (Mac OS only)
  • Safari Mobile for iPad 2, iPad Mini, iPad with Retina Display (iOS 12 or later), for desktop storefront
  • Safari Mobile for iPhone 6 or later; iOS 12 or later, for mobile storefront
  • Chrome for mobile latest–1 (Android 4 or later) for mobile storefront

Here, latest–1 means one major version earlier than the latest released version.

Composer

Composer is required for developers who wish to contribute to the Magento 2 codebase or anyone who wishes to develop Magento extensions.

Magento does not support Composer 2.x.

Web servers

Database

  • MySQL 5.7 for on-premise installations
  • MariaDB 10.2 for Magento Commerce Cloud projects

Magento is also compatible with, but has not been tested and is not recommended, with MySQL 5.6, MariaDB 10.1, and Percona 5.7.

Magento only uses MySQL features compatible with MariaDB. MariaDB may not be compatible with all MySQL features, however, so be sure to research compatibility issues before using a feature in your Magento module.

PHP

Magento supports PHP 7.3.

PHP 7.1 has reached End of Life. To maintain PCI compliance, Magento should not be run on unsupported software. Installing from GitHub will no longer work with Magento 2.3.4/PHP 7.1. The only way to install 2.3.4 with PHP 7.1.x is with Composer.

Required PHP extensions

The PHP installation instructions include a step for installing these extensions.

If you install Magento via cloning from the GitHub repository then make sure you have the ext-sockets installed on your instance.

  • ext-bcmath

  • ext-ctype

  • ext-curl

  • ext-dom

  • ext-gd

  • ext-hash

  • ext-iconv

  • ext-intl

  • ext-mbstring

  • ext-openssl

  • ext-pdo_mysql

  • ext-simplexml

  • ext-soap

  • ext-xsl

  • ext-zip

Refer to official PHP documentation for installation details.

PHP OPcache

We strongly recommend you verify that PHP OPcache is enabled for performance reasons. The OPcache is enabled in many PHP distributions. To verify if it is installed, see our PHP documentation.

If you must install it separately, see the PHP OPcache documentation.

PHP settings

We recommend particular PHP configuration settings, such as memory_limit, that can avoid common problems when using Magento.

For more information, see Required PHP settings.

SSL

  • A valid security certificate is required for HTTPS.
  • Self-signed SSL certificates are not supported.
  • Transport Layer Security (TLS) requirement - PayPal and repo.magento.com both require TLS 1.2 or later:

Required system dependencies

Magento requires the following system tools for some of its operations:

Mail server

Mail Transfer Agent (MTA) or an SMTP server

Technologies Magento can use

  • Redis version 5.0 is recommended and used in testing for page caching and session storage.
  • Varnish version 6.x (tested with 6.3.1)
  • Elasticsearch

    As of version 2.3.6, Magento Commerce supports Elasticsearch 7.x, with a preference for 7.6.x. Support for Elasticsearch 6.x has been deprecated, but it can still be used. Both Elasticsearch 2.x and 5.x have reached end-of-life and are no longer supported.

  • RabbitMQ 3.8.x (compatible with 2.0 and later)

    RabbitMQ can be used to publish messages to queue and to define the consumers that receive the messages asynchronously.

Magento Commerce only

  • Three master databases

    These master databases provide scalability advantages for different functional areas of the Magento application such as checkout, orders, and all remaining Magento2 application tables.

  • php_xdebug 2.5.x or later (development environments only; can have an adverse effect on performance)

There is a known issue with xdebug that can affect Magento installations or access to the storefront or Magento Admin after installation. For details, see Known issue with xdebug.

  • mcrypt (for PHP < 7.2)
  • PHPUnit (as a command-line tool) 6.2.0