Requirements for Matrix 5.4
Please note that the requirements on this page are for Squiz Matrix version 5.4 only. For requirements related to previous versions, use the links below:
Web Browser Support
The Squiz Matrix Admin and Edit Mode editing interfaces support the following desktop web browsers and browser versions:
Mozilla Firefox | Internet Explorer | Microsoft Edge | Safari | Google Chrome |
---|---|---|---|---|
Mozilla Firefox for Windows 8.1 & 10 and Mac OS X Latest Extended Support Release | Internet Explorer 11 for Windows 8.1 & 10. | Microsoft Edge for Windows 10, Latest Stable Release | Safari for Mac OS X, Latest Stable Release | Google Chrome for Windows 8.1, & 10 and Mac OS X, Latest Stable Release |
Squiz Matrix only supports out of the box (native) installations and configurations of desktop web browsers and browser versions. For example, Squiz Matrix does not support Internet Explorer 'emulation' configurations where later versions are configured to act like older versions e.g. IE10 is told (via local and/or server side controls) to act like IE7.
Some features and tools of the edit interfaces in Squiz Matrix rely on native browser features to function. Therefore, some features as outlined in this manual may not be supported for all of the web browsers listed above.
JavaScript
Squiz Matrix requires JavaScript to be enabled in your web browser. JavaScript is enabled by default in most browsers so as long as you have not turned it off, you should be fine.
Cookies
Squiz Matrix makes use of browser cookies to identify authenticated users. Your web browser must have cookies enabled in order to access the editing and administration interfaces of Squiz Matrix.
Operating System
Squiz Matrix requires a UNIX-like operating system for the web server. The following operating systems are endorsed and recommended for use with Squiz Matrix:
- Red Hat Enterprise Linux 6
- Scientific Linux 6
While these operating systems are recommended and officially supported by Squiz, Squiz Matrix can potentially be run on any operating system that supports the software packages outlined below.
You can verify the program requirements of a Squiz Matrix installation against your server configuration using the system's check_requirements.php script. This script is located in the install directory of your system and will notify you of any third-party applications, PHP extensions and/or PEAR packages that are required on your installation.
PHP
Squiz Matrix supports PHP version 5.4 and 5.6. It is strongly recommended that you do use PHP version 5.6.
The following PHP extensions are required:
- xsl
- pdo_pgsql or oci8
- curl
- gd
- mbstring
- pspell
- soap
- SimpleXML
- ldap
- json
- intl
Suhosin Configuration
When using the Suhosin patch on your PHP installation, you will need to adjust the default configuration settings, as follows:
- the suhosin.session.encrypt setting must be disabled.
- the suhosin.request.max_varname_length setting should be set to 200.
- and the suhosin.post.max_name_length setting should be set to 200.
PEAR
Squiz Matrix makes use of PEAR packages to provide some functionality. The following PEAR packages are required:
- Archive_Tar
- Mail_Mime
- Mail_mimeDecode
- XML_HTMLSax
- XML_Parser
- Text_Diff
- Mail_Queue
- HTTP_Request
- HTTP_Client
- Net_URL
- Image_Graph
- Image_Color
- Image_Canvas
- Numbers_Roman
- Numbers_Words
Web Server
Squiz Matrix is officially supported on the Nginx web server. For more information on installing Nginx, please refer to the Beginner's Guide. It is strongly recommend to also use the OpenResty bundle, which includes many popular and useful Nginx plug-ins.
Squiz Matrix can potentially also be run on any other web server that supports and is compatible with software's PHP and other server requirements.
If you are using Apache 2 as your web server, it must be compiled with the Apache MPM prefork module or PHP will not work correctly. For more information on Apache 2 support, please read the PHP compatibility guide.
Database
Squiz Matrix uses a database as its primary data store and supports both the PostgreSQL open source database and Oracle.
Squiz Matrix supports:
- PostgreSQL versions 9.2, 9.3, 9.4, 9.6
- Oracle versions 11.1 & 11.2
Oracle support has been scheduled for deprecation for the upcoming 5.5.0.0 version of Squiz Matrix. For more information, visit the Deprecations page.
Squiz Matrix supports UTF-8 character encoding only.
In-Memory Cache
Squiz Matrix supports both Memcached and Redis caching systems. The following table outlines which caching system is recommended for each cache mechanism.
Cache Manager | Redis |
---|---|
Session Handling | Memcached |
Asset Locking | Redis |
Deja Vu | Redis |
Please note that Memcached requires the Memcache PECL module (version 2.0.0) and Redis requires the Redis PECL module (version 2.2.5).
Third-Party Tools
Some third-party tools are required to support extended functionality in Squiz Matrix. These tools must be sourced independently, installed on the server and referenced from the "External Tools Configuration" screen in System Configuration.
The following versions have been tested and are minimum requirements for the following functionality:
HTML Tidy
HTML Tidy for Linux is required to clean HTML content for the Classic WYSIWYG editor and provide accessibility checking.
This tool is not applicable if you are using the Edit+ Editor.
Anti-virus
Virus checking of file uploads requires the clamdscan client.
Microsoft Word Conversion
Convert Word to HTML 1.01 is required to import Microsoft Word documents into Squiz Matrix as structured page navigation. This is a Windows executable which must be configured to upload to a Squiz Matrix system directory for use with the "Word Import Tool Converter" and "Structured File Import Tool".
File Keyword Indexing
File keyword indexing support for PDF and MS Word documents requires Apache Tika version 1.8 and Java version 6 or later installed on the server.
Image Metadata Extraction
Image metadata extraction support for Image assets requires ExifTool version 9.90.
getID3 Metata Extraction
The getID3 metadata extraction tool for FLV File, MP3 File and Video File assets requires getID3 version 1.7.9.
Markdown
The Markdown bodycopy content type requires markdown version 1.0.1m and markdownify version 2.0.0 alpha.
PayPal
The PPCrypto.php file and PayPal certificates are required to secure transactions between Squiz Matrix and PayPal if implementing E-Commerce using the PayPal gateway type. References to this third-party code are configured in the PayPal Payment Gateway rather than "External Tools Configuration". Further details are available on the PayPal website.
Please note that the above requirements are only applicable to the Paypal Payment Gateway asset type. The PayPal Express Checkout and PayPal Payflow Pro assets do not require these configurations.
REST JavaScript Processing
The REST Resource JavaScript asset allows you to use either SpiderMonkey, Rhino or V8 JavaScript engines for processing response body content. These modules must be correctly installed and configured if they have been selected for use on this asset.
SAML Authentication
In order for Squiz Matrix to provide federated access management, the SimpleSAMLphp (version 1.14+) application must be correctly configured and installed on the same server as your Squiz Matrix installation.
Please refer to the SimpleSAMLphp Installation Guide for more information.
SCSS Compiler
The SCSS Design Asset requires the scssphp PHP package to be installed on the server for the compiling of SCSS code into normal CSS to function. Checkout the homepage, http://leafo.github.io/scssphp, for more information on how to use this tool.
Recommended Squiz Matrix Stack
Squiz recommends and endorses the following stack to be the most optimal for stability, performance and security.
Operating System | Scientific Linux 6.x/Red Hat Enterprise Linux 6.x |
---|---|
Caching Proxy | Squid |
Web Server | Nginx |
Application Server | php-fpm 5.6 |
Database Server | PostgreSQL 9.2 |
In-Memory Cache | Memcache & Redis |
PHP OpCode Cache | Zend Opcache |
Please note that the details of the recommended Squiz Matrix stack above may change, subject to the results of future reviews, tests and endorsements from Squiz.
Squiz Matrix Operating System Support Statement
Each minor release of Squiz Matrix is supported on the major version of the Operating System (OS) it was originally released on until either the OS vendor ceases support for the OS or 36 months elapse since that Minor release of Squiz Matrix was released.
For most OSs', security and maintenance fix updates are only provided for the latest minor version of that OS, so users will need to update their OS installation to the latest minor version of the OS to continue receiving security and maintenance fixes for the entirety of the supported period.
Squiz Matrix updates may also require packages additional to those provided by the OS and these will be indicated in the release notes for each version of Squiz Matrix.
For example, Squiz Matrix 5.3 was released in November 2015 and is fully supported until November 2018. At release, it was tested and certified on Red Hat Enterprise Linux version 6, which is supported by Red Hat until November 30, 2020.
This means users can build a server with Squiz Matrix 5.3 and Red Hat Enterprise Linux 6 today, and retain that server as a fully supported configuration simply by applying OS package and Squiz Matrix updates until November 2018.