eCommerce Blog | IronPlane

A Comprehensive Guide to Magento 2 Requirements

Written by Kristin Jordan | March 22, 2019

Increasingly, eCommerce businesses are deciding to switch to Magento 2 for its better security, user-friendly interface, and overall better performance.  It’s essential to keep your Magento system installation current to ensure you have the latest advancements available.

In this guide, we’ll break Magento 2 system requirements into several areas, including server requirements, hardware requirements, and hosting requirements.

Why Upgrade to Magento 2?

If you're still running on Magento 1, it's time to consider upgrading to Magento 2. With enhanced performance, improved security, and a more user-friendly interface, Magento 2 offers a multitude of benefits for eCommerce businesses. The upgrade ensures your online store stays competitive and provides a seamless shopping experience for your customers.

For more information on replatforming your site, read our guide.

Key Differences Between Magento 1 and Magento 2

Magento 2 introduces several key differences from its predecessor. Firstly, the architecture is more modular, allowing for easier customization and scalability. The admin interface is more intuitive, making it simpler for users to navigate. Performance is significantly improved, with faster page loading times and optimized database performance. Here are a few other notable differences:

  • Magento 2's new indexing mechanism enhances query performance, leading to quicker search results and improved overall site speed.
  • The introduction of the knockout.js library in Magento 2 enhances the frontend experience, providing a smoother and more responsive interface for users.
  • Improved checkout processes and enhanced security features make Magento 2 a safer and more convenient platform for both merchants and customers.

The Risks of Not Meeting the Minimum Magento 2 Requirements

Failing to meet Magento 2's minimum requirements can pose significant risks to your online business. It may result in poor performance, security vulnerabilities, and compatibility issues with future updates. Additionally, you might miss out on essential features and improvements that come with Magento 2 — which would make the change ineffective.

Some risks include:

  • Inadequate server resources can lead to slow loading times, negatively impacting user experience and search engine rankings.
  • Failure to update PHP and MySQL versions may expose your store to potential security threats, putting sensitive customer data at risk.
  • Non-compliance with Magento 2 requirements may lead to compatibility issues with extensions and third-party integrations, limiting your store's functionality.

Magento 2 Hardware Requirements

Magento 2 has a number of specific hardware requirements that merchants should adhere to if they want to get the most out of the platform.

Magento 2 Hardware Requirements for CPUs

Magento web nodes serve all uncached requests or requests the application is unable to cache.  One central processing unit (CPU) can effectively serve approximately two to four Magento requests.  The equation below will determine the number of web cores/nodes required to process requests coming in without them needing to go into the queue:

N [Cores] = (N [Expected Requests] / 2) + N [Expected Cron Processes]

If you expect your eCommerce store’s load to differ, you can manually increase how many web cores/nodes are active during a specific sales period. You can also use an auto-scaling model to extend web tiers automatically.

Magento 2 Hardware Requirements for Memory

To upgrade the Magento extension and applications obtained from sources, including Magento Marketplace, you’ll likely need up to 2 GB of RAM.  When utilizing a system with 2 GB or less of RAM, it’s recommended that you create a swap file to avoid upgrade failure.

Magento 2 Hardware Requirements for PHP

Magento 2 accepts several versions of the programming language PHP.  It is important to note that for PHP 7, PHP 7.0.5 has been known to affect Magento 2 code compiler.  To avoid this issue, it is best not to use PHP 7.0.5. Instead, use:

  • 5.5x where x is higher than 22
  • 5.6x
  • 7.0.2 to 7.1.0 with the exception of 7.0.5

Magento 2 Hardware Requirements for Database Engines

MySQL is a leader in open-source databases for web applications.  Building on the confidence the industry places in MySQL, Magento 2 system requirements include MySQL 5.6 for database structure.  By supporting MySQL 5.6 application programming interfaces (APIs), Magento 2 is also adaptable with MariaDB and Percona.

Magento 2 Hardware Requirements for Cache Systems

The Magento 2 system addresses the speed concerns of Magento 1.  While faster than its predecessor, manufacturers still recommend you enable and utilize a cache management tool to help improve overall speed.

Memcached

A memory object caching system that can be built into the Magento system, Memcached is distributed to be used as a fast back-end cache, improving overall speed considerably.

PHP OPcache

A bytecode cache engine that holds precompiled script bytecode via shared memory, PHP OPcache eliminates the need for PHP to upload and define scripts upon request.

Redis

Redis is an open-sourced system that, after installation, plays the role of session back end and cache for Magento systems.  The most powerful feature of Redis is its ability to support master/slave replication and on-disk save.

Varnish

Appearing as an ordinary server to users, Varnish is a caching HTTP reverse proxy that stores files or file fragments from the memory that reduce network bandwidth consumption and response time for equivalent future requests.

To ensure optimal performance, here are some best practices that merchants should follow:

  • Invest in a robust and scalable server infrastructure to accommodate your growing business needs.
  • Utilize solid-state drives (SSDs) for faster data retrieval and improved overall system responsiveness.
  • Consider load balancing techniques to distribute traffic efficiently and prevent server overload during peak periods.

Magento 2 Hosting Requirements

Selecting the right hosting provider is crucial for a successful Magento 2 deployment. 

To meet Magento 2 hosting requirements, you need either an LNMP or LAMP stack.  These stacks include a Linux operating system, Nginx or Apache HTTP server, MySQL management system, and PHP programming language. Magento servers must run recent Apache or Nginx web daemon, PHP versions as well as specific PHP extensions, modern database, and a modern Linux kernel.  Servers must also override options in .htaccess files and run scheduled cron jobs with PHP.  IronPlan Cloud hosting plans can meet all these requirements.

eCommerce businesses can choose either a dedicated or a VPS server.  Magento 2 hosting requirements do not recommend shared hosting, as resources might not be available when needed or during busy times.  While VPS servers with enough RAM can provide adequate resources for most small or new eCommerce stores, more active or larger eCommerce businesses should invest in a dedicated server.

Some key hosting tips include:

  • Choose a hosting provider with experience in Magento hosting and a track record of high-performance server environments.
  • Opt for a hosting plan that includes automatic backups and provides reliable customer support for technical issues.
  • Ensure that the hosting environment meets Magento's PHP, MySQL, and Apache/Nginx version requirements.

Magento 2 Server Requirements

Meeting Magento 2's server requirements is fundamental for optimal performance and security. 

Magento 2 server requirements support several reverse proxy servers.  It’s necessary to confirm that your current server either matches Magento 2 server requirements preconditions or that you’ve uploaded the latest mainline version. These servers include:

  • Nginx 1.8
  • Apache 2.2
  • Apache 2.4

Here are some additional best practices when it comes to ensuring your server meet's Magento 2's requirements:

  • Regularly update and patch your server's operating system to address potential vulnerabilities.
  • Implement a Content Delivery Network (CDN) to distribute content globally, reducing server load and improving page load times.
  • Configure your server to enable Full Page Caching, significantly enhancing website speed and performance.

Magento 2 Operating System Requirements

Magento 2 is compatible with various operating systems, but it's crucial to choose the one that best suits your business needs. Linux distributions such as CentOS, Debian, RedHat Enterprise Linux (RHEL), Ubuntu, and similar are the most effective.

Regardless of which operating system you choose, be sure to regularly update it to benefit from the latest security patches and performance improvements. Also ensure that your chosen operating system is compatible with the PHP and MySQL versions required by Magento 2.

Operating Systems not Supported by Magento

Mac OS and Windows OS do not support Magento.

Partner with IronPlane for Magento 2 Upgrade Services

For a seamless transition to Magento 2, consider partnering with IronPlane. Our experienced team offers comprehensive Magento 2 upgrade and development services, ensuring a smooth and efficient migration process. From system requirements analysis to implementation, IronPlane is your trusted support partner in unlocking the full potential of Magento 2 for your eCommerce business.

FAQs About Magento 2 System Requirements

What are the Magento 2 system requirements for email services?

To receive and send emails in Magento 2, you must have an SMTP or MTA server configuration.

  • Simple Mail Transfer Protocol (SMTP):  Upon successful configuration within the Magento system, you can send and receive emails.
  • Mail Transfer Agent (MTA):  Enables email transfer by utilizing a client-server application architecture.  The SMTP specifies the transmission details.

What are the Magento 2 requirements for secure sockets layer (SSL)?

SSL serves as a security layer between your browser and a web server. It authorizes encrypted links to store all data shared between browsers and the web server while remaining integral and private.  Many websites utilize SSL to protect customer transactions.  Magento 2 requirements for establishing SSL for your eCommerce store include:

  • HTTPS must have a valid security certificate.
  • Self-signed SSL certificates are not permitted.
  • Transport Layer Security (TLS) is a requirement.

Are there TLS Magento 2 requirements?

Magento requires TLS 1.1 or later and its component repository repo.magento.com.  The PCI Security Standards Council has removed SSL/TLS 1.0 as a strong cryptography example from the 3.1 version of the PCI Data Security Standard (PCI DSS), stating that, as of June 30, 2016, it can no longer be used as a security control.

To process payments in a live environment, PayPal requires TLS version 1.2, which is already needed in the sandbox.