Skip to content
This repository has been archived by the owner on Nov 4, 2020. It is now read-only.

Latest commit

 

History

History
169 lines (135 loc) · 8.73 KB

system_requirements.rst

File metadata and controls

169 lines (135 loc) · 8.73 KB
.. index::
    single: Requirements

System Requirements

OroCommerce is a web application which runs on a server. Users interact with the application via a web browser on any computer or mobile device that have access to the internet or the network where the server is hosted.

Server-side Requirements

Resources

Resources configuration depends on the data size and number of active users and integrations. Typical setup could be done on a single server with the minimum of 2 CPU cores, 2GB RAM and a fast hard drive (SSD is recommended). The application could scale to multiple servers and a separate database server based on the expected load.

Operating Systems

Linux distributions (RedHat, Ubuntu, Debian, CentOS) are recommended for the production setup. Windows 7 and above and Mac OS X can be used for the development environment.

Software

Oro applications are compatible with most web servers with PHP support, but the following configuration is recommended:

Web Server
  • Apache 2.2.x or 2.4.x
  • Nginx latest mainline or stable version

Web server configuration recommendations are well described in Symfony documentation

PHP
  • PHP >=7.1.26 and 7.2
  • PHP CLI, the same version as for the web server
PHP Settings

Few updates to default PHP configuration settings should be done in php.ini for the web server and CLI:

  • date.timezone must be set
  • detect_unicode must be disabled
  • memory_limit should be 512M or above

If the xdebug is installed (which is not recommended in the production setup):

  • xdebug.scream must be disabled
  • xdebug.show_exception_trace must be disabled
  • xdebug.max_nesting_level above 100

By default, max_execution_time value equals 30 seconds. In case of using the Schema update option, it is recommended to increase this value.

PHP Extensions
  • ctype
  • curl
  • fileinfo
  • gd
  • intl (ICU library 4.4 and above)
  • json
  • mbstring
  • openssl
  • mysql
  • pcre
  • simplexml
  • tokenizer
  • xml
  • zip
  • imap
Database

Note

Latest version of mariaDB may be used at one's own risk. Oro applications are not tested with mariaDB and thus the correct operation cannot be guaranteed.

Process Control
Assets
  • Node.js used for JS assets minification and SCSS assets build.

Note

It is recommended to disable phar PHP extension to reduce the risk of PHP unserialization vulnerability.

Enterprise Edition Software

Enterprise edition is built to support better scale and performance. It is compatible with additional software configuration that allows to achieve these goals.

PHP Extensions
  • pgsql
Database
Search Index
Job Queue
  • RabbitMQ 3.5.8 and above with Erlang/OTP version 18.0 and higher. RabbitMQ 3.6.x is recommended

PostgreSQL Configuration

PostgreSQL uuid-ossp extension should be loaded for proper doctrine's guid type handling. In order to enable it, one can connect to the database server and run the following sql query:

CREATE EXTENSION "uuid-ossp";

Optional recommendations

Client-side Requirements

On the client side, Oro applications could be used with most of the graphical browsers on any operating system. Recommended and supported browsers are:

Note

Any browser needs to have cookies and JavaScript turned on.