Magento 2.3.x System Requirements
Since Magento 2 was released with a more friendly interface, better performance, and more security, online store owners intend to alter store basement system to Magento 2. The question is how to take all advantages of Magento 2? This post will inform entire Magento 2 System Requirements for you to follow and get the most effective Magento system for your store. In case your Magento store still does not run as well as what you have expected, do not hesitate to install additional extensions.
Magento 2 System Requirements
- Web services
- Database Engine
- PHP
- PHP extensions requirements
- Cache system
- Email services
- SSL
- Magento 2 Enterprise requirements
Magento 2 System Requirements
Web services
- Apache 2.2 or 2.4
- Nginx 1.x
Database Engine
- MySQL 5.6, 5.7
- MariaDB 5.6, 5.7
PHP
>= 7.1.3
>= 7.2.0
PHP extensions requirements
- bcmath
- ctype
- curl
- dom
- gd
- hash
- iconv
- intl
- mbstring
- openssl
- pdo_mysql
- simplexml
- soap
- spl
- xsl
- zip
- libxml (lib)
Cache system
- PHP OPcache (Recommend)
- Redis
- Vanish
- mem-cached
Email services
- Mail Transfer Agent (MTA)
- SMTP server
SSL
- A valid security certificate is required for HTTPS.
- Self-signed SSL certificates are not supported.
- Transport Layer Security (TLS) requirement
Magento 2 Enterprise requirements
- PHP extension: bc-math
- Apache Solr 4.x
- RabbitMQ 3.5
- Three master databases
Magento 2 System Feature details
Web Services
Magento 2 supports the reverse proxy servers below, make sure that the server you are using matches with this precondition or has been upgraded with the latest mainline version.
- Apache 2.2 or 2.4
- Nginx 1.8
Database Engine
MySQL is a popular open-source database for web applications. Magento 2 is not an exception as requiring MySQL 5.6 for database structure. Moreover, because of supporting MySQL 5.6 APIs, MariaDB and Percona are also adaptable with Magento 2.
PHP
Here is the list of PHP versions which are accepted in Magento 2. For PHP 7, notice that there is a known PHP 7.0.5 issue that affects Magento 2 code compiler. Therefore, you may do not want to use PHP 7.0.5 to avoid the issue.
- 5.6.x
- 5.5.x, where x is 22 or greater
- 7.0.2 up to 7.1.0, except for 7.0.5.
PHP extensions requirements
Before integrating an extension, you had better check the availability of PHP extensions requirements below for the most efficient operation.
- curl
- gd, ImageMagick 6.3.7 or later
- intl
- mbstring
- mcrypt
- mhash
- openssl
- PDO/MySQL
- SimpleXML
- soap
- xml
- xsl
- zip
- json (PHP 7 only)
- iconv (PHP 7 only)
Cache system
Although it is claimed that Magento 2 is much faster than Magento 1, there are still complaints from users that Magento 2 is unbearably slow. Hence, we recommend you to enable and use one of the cache management tools in the following:
- PHP OPcache – is a bytecode cache engine which stores precompiled script bytecode in shared memory, thereby removing the need for PHP to load and parse scripts on each request.
- Redis (Recommend) – is an open source which plays a role as cache and session backend for Magento system once being installed. The most powerful feature of Redis is supporting on-disk save and master/slave replication.
- Vanish (Recommend) – is a caching HTTP reverse proxy which appears to be an ordinary server to users and store files or fragments of files in memory that are used to reduce the response time and network bandwidth consumption on future, equivalent requests.
- Mem-cached (Recommend) – is a distributed memory object caching system which is used as a fast backend cache to improve the speed considerably. Mem-cached can be built in Magento system.
Email services
To send and receive an email in Magento 2, you need to configure MTA or SMTP server.
- Mail Transfer Agent (MTA) is a software that transfers emails by using a client–server application architecture. The transmission details are specified by the Simple Mail Transfer Protocol (SMTP).
- SMTP server can be configured inside Magento system to send and receive email.
SSL
SSL is a familiar technical term for internet users which is short of Secure Sockets Layer. It can be simply understood as a security layer between a web server and your browser. In fact, SSL authorizes an encrypted link to hold all data passed between the web server and browsers and remain it private and integral. SSL is used by thousands of websites to protect the transaction of the customers. Below is some strict requirement of Magento 2 to establish SSL for your store.
- A valid security certificate is required for HTTPS.
- Self-signed SSL certificates are not supported.
- Transport Layer Security (TLS) requirement.
Magento 2 Enterprise Requirements
Below are some necessities you need to integrate and check for availability before adapting Magento 2 Enterprise version:
- PHP extension: bc-math
- Apache Solr 4.x
- RabbitMQ 3.5
- Three master databases: These master databases provide scalability advantages for different functional areas of the Magento application: checkout, orders, and product data. Available for Magento EE only.
PHPUnit (Optional)
Actually, it is important to use unit testing during development to find bugs or detect regressions. In Magento 2, you can use PHPUnit to check the thin and vulnerable places in your code, and spare time for bug tracking and testing. According to Magento 2 requirement of PHP, we recommend you to download the PHPUnit 5.5 version which is the current stable release series.
It comes to the end of the tutorial: Magento 2.3.x System Requirements.
We hope this is useful blog for you.
Thank you for reading!