main.inc configuration

The main.inc file is the primary configuration file for Matrix. This file can be located in the /data/private/conf directory of your Matrix system.

Many of the configuration settings available in the main.inc file can be altered on the administration interface by the system’s root user or a system administrator. Others must be documentationally edited in this file, such as database settings, due to their critical nature to the system’s stability.

Many configuration settings within the main.inc file should not be changed from their default setting. Read all associated documentation and take extreme care when editing this file.

The table below lists the Matrix configuration settings that are available in the main.inc file. Click on a configuration setting for more information.

Configuration Setting Type Default Value

string

SQ_SYSTEM_ROOT./php_includes

string

_admin

string

_edit

string

_login

string

_nocache

string

_recache

string

_performance

string

_performance_timing

string

_performance_result

integer

64

integer

4

integer

-1

integer

-1

boolean

0

integer

0

string

The System

string

string

string

string

string

-

boolean

true

boolean

false

string

string

integer

3

integer

120

integer

600

integer

1800

integer

50

string

%asset_short_name%

boolean

0

boolean

0

boolean

0

boolean

0

boolean

0

boolean

0

boolean

false

string

user

boolean

false

string

en

string

en_AU

string

utf-8

boolean

false

boolean

0

boolean

0

boolean

0

boolean

true

string

REMOTE_USER

boolean

0

SQ_CONF_COMMIT_BUTTON_TEXT

string

Commit

integer

1

string

string

system

string

error

boolean

true

string

default

string

integer

604800

integer

3600

integer

20

string

integer

64

integer

64

boolean

false

string

boolean

false

boolean

false

boolean

false

boolean

false

string

Australia/Sydney

boolean

false

boolean

false

boolean

false

boolean

0

boolean

0

boolean

1

boolean

1

boolean

0

SQ_CONF_VISITED_PAGES_MAX_ENTRIES

integer

10

SQ_FILE_TYPE_RESTRICT_ON_STATIC_URL

SQ_CONFIG_STRIP_MATRIX_COMMENTS

boolean

true

string

ON THIS PAGE

System settings

SQ_CONF_SYSTEM_NAME / SQ_CONF_SYSTEM_OWNER

These configuration settings allow you to define the name and the owner of your Matrix system. This information is displayed in the HTML source code header of sites within your system. It is also included at the bottom of emails sent from Matrix to content editors and system administrators.

define('SQ_CONF_SYSTEM_NAME', 'The System');

define('SQ_CONF_SYSTEM_OWNER', '');

These settings can also be configured through the System name and System owner fields on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_BACKEND_SUFFIX / SQ_CONF_LIMBO_SUFFIX

These configuration settings define the suffixes that are appended to a Matrix URL to access the editing interfaces.

The backend suffix is used to access the administration interface. By default, this is set to _admin. Read the Admin UI overview documentation for more information.

The limbo suffix is used to access the inline edit mode. By default, this is set to _edit. Read the Inline edit mode documentation for more information.

define('SQ_CONF_BACKEND_SUFFIX', '_admin');

define('SQ_CONF_LIMBO_SUFFIX', '_edit');

You can disable access to these interfaces by clearing the values in these configuration settings.

define('SQ_CONF_BACKEND_SUFFIX', '');

define('SQ_CONF_LIMBO_SUFFIX', '');

These settings can also be configured through the System backend suffix and System simple edit suffix fields on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_LOGIN_SUFFIX

This configuration setting defines the suffix to be appended to a Matrix URL to access the system’s sign-in page. By default, this is set to _ login. Read the Concepts documentation for more information.

define('SQ_CONF_LOGIN_SUFFIX', '_login');

This setting can also be configured through the System login suffix field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_NOCACHE_SUFFIX

This configuration setting defines the suffix that is appended to a Matrix URL to access the uncached version of the page. Using this suffix forces the system to serve the most recent version of the page to the site visitor.

define('SQ_CONF_NOCACHE_SUFFIX', '_nocache');

This setting can also be configured through the System bypass cache suffix field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_RECACHE_SUFFIX

This configuration setting defines the suffix that is appended to a Matrix URL to refresh the Matrix cache with an up-to-date representation of the requested asset.

It is recommended that you change the value of this setting to hide its functionality from public users.
define('SQ_CONF_RECACHE_SUFFIX', '_recache');

This setting can also be configured through the System clear cache suffix field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_PERFORMANCE_SUFFIX

This configuration setting defines the suffix to be appended to a Matrix URL to access performance mode for an asset. By default, this is set to _performance. Read the Using performance mode to measure asset performance documentation for more information.

define('SQ_CONF_PERFORMANCE_SUFFIX', '_recache');

This setting can also be configured through the System performance mode suffix field on the System configuration screen. Read the System configuration screen documentation for more information.

The SQ_CONF_PERFORMANCE_TIMING_SUFFIX / SQ_CONF_PERFORMANCE_RESULT_SUFFIX settings are used internally by performance mode. It is recommended that you do not alter the values of these configuration settings.

SQ_CONF_TIMEZONE

The configuration setting allows you to set the system timezone for the Matrix system in the appropriate PHP timezone format (http://au.php.net/timezones). By default, this is set to Australia/Sydney.

define('SQ_CONF_TIMEZONE', 'Australia/Sydney');

This setting can also be configured through the Timezone field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_DISABLE_ATTRIBUTION

The configuration setting allows you to remove the Matrix attribution from the design source of your sites.

<!--
  Running Squiz Matrix
  Developed by Squiz - http://www.squiz.net
  Squiz, Squiz Matrix, MySource, MySource Matrix and
  Squiz.net are registered Trademarks of Squiz Pty Ltd
  Page generated: 29 August 2013 09:59:40
-->

When this setting is enabled, the attribution will not be displayed.

Design assets will need to be regenerated before this option takes effect.
define('SQ_CONF_DISABLE_ATTRIBUTION', '1');

This setting can also be configured through the Disable attribution field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ENFORCE_FRAME_SAMEORIGIN

If set to 1, Matrix will add the header "X-Frame-Options: SAMEORIGIN" to pages within admin mode and edit mode. This means that only pages hosted on the same domain as this Matrix system will be able to nest the admin and edit mode interfaces using frames. Virtually all recent browsers support this header.

define('SQ_CONF_ENFORCE_FRAME_SAMEORIGIN', '1');

This value can also be configured through the Enforce same origin frame security for backend? setting on the System configuration screen.

SQ_CONF_ENFORCE_FRAME_SAMEORIGIN_FRONTEND

If set to 1, Matrix will add the header "X-Frame-Options: SAMEORIGIN" to frontend pages. This means that all frontend pages served by this Matrix system cannot be nested in a frame unless the parent page is hosted on the same domain. Virtually all recent browsers support this header.

define('SQ_CONF_ENFORCE_FRAME_SAMEORIGIN_FRONTEND', '1');

Setting this value to 0 also means that any JS API calls made within the Matrix system will require a unique CSRF token value to be present within the HTML code that the JS API script will use when making web service calls.

This value can also be configured through the Enforce same origin frame security for frontend? setting on the System configuration screen.

SQ_CONF_ENABLE_CSRF_TOKEN_REQUEST

This configuration setting controls how the JS API receives its authentication token for making requests to Matrix. By default, this setting is set to 0, which means CSRF token requests are not possible, making the system safer against CSRF attacks.

define('SQ_CONF_ENABLE_CSRF_TOKEN_REQUEST', '0');

Setting this value to 0 also means that any JS API calls made within the Matrix system will require a unique CSRF token value to be present within the HTML code that the JS API script will use when making web service calls.

For any systems that use the automatic upgrade script to upgrade to 5.2 or above, this setting will automatically change to 1 to prevent any existing implementations from breaking. Changing it to or leaving it as 1 means that potential CSRF token requests are enabled, which is less secure, but the CSRF token design area will not be required for the JS API to work. It is highly recommended that this is set to 0, however, to make the system more secure.

System URL settings

SQ_CONF_SYSTEM_ROOT_URLS

This configuration setting defines a list of URLs that can be used to access your system. All site assets created within Matrix will require a URL based on the system URL defined in this setting.

When using multiple URLs on a system, each URL should be defined on a new line. The protocol (HTTP:// or HTTPS://) should not be specified.

define('SQ_CONF_SYSTEM_ROOT_URLS', 'www.example.com');

OR

define('SQ_CONF_SYSTEM_ROOT_URLS', 'www.example.com
web01.example.com
web02.example.com
store.example.com
secure.example.com');

This setting can also be configured through the System root URLs field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_SYSTEM_PARENT_DOMAINS

This configuration setting defines a list of parent domains to use for setting session cookies.

Parent domains are helpful if several system root URLs have a common parent domain, for example, syd.example.com and melb.example.com). If the current URL ends with one of the parent domains, the cookie will be set on the parent domain instead, with the result that the user’s session will persist across the parent domain and all its subdomains.

When listing multiple parent domains, each domain should be defined on a new line. The protocol (HTTP:// or HTTPS://) should not be specified.

define('SQ_CONF_SYSTEM_PARENT_DOMAINS', 'example.com');

OR

define('SQ_CONF_SYSTEM_PARENT_DOMAINS', 'example.com
squiz.com.au
mydomain.com.au');

This setting can also be configured through the System parent domains field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_STATIC_ROOT_URL

These configuration settings can be used to offload static file serving to an alternative web server, reducing the load on the main web server used by Matrix.

By default, Matrix rewrites URLs for publicly accessible and live file-based assets to an apache readable directory on the same server on which Matrix is installed. Configuring this option will tell Matrix to rewrite those URLs to an alternative location, which could be a different (and lightweight) piece of web server software on the same machine as the Matrix install or a completely different machine. Leave this configuration setting empty to use the default Matrix behavior.

The SQ_CONF_STATIC_ROOT_HTTP and SQ_CONF_STATIC_ROOT_HTTPS configuration settings define whether the static files can be served using the HTTP:// or HTTPS:// protocols.

define('SQ_CONF_STATIC_ROOT_URL', '');

define('SQ_CONF_STATIC_ROOT_HTTP', true);

define('SQ_CONF_STATIC_ROOT_HTTPS', false);

These settings can also be configured through the System static URL, Static URL uses HTTP, and Static URL uses HTTPS fields on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_WEB_PATH_SEPARATOR

This configuration setting defines the character used to replace spaces in the names of assets when automatically generating URLs. For example, an asset named Contact Us would have an automatically generated URL of contact_us, where the space has been replaced by the URL separator (by default, a hyphen).

define('SQ_CONF_WEB_PATH_SEPARATOR', '-');

This setting can also be configured through the System web path separator field on the System configuration screen. Read the System configuration screen documentation for more information.

Rollback settings

SQ_CONF_ROLLBACK_ENABLED

This configuration setting defines whether rollback is enabled within the Matrix system.

define('SQ_CONF_ROLLBACK_ENABLED', '0');

This setting can also be configured through the Rollback enabled field on the System configuration screen. Read the System configuration screen documentation for more information.

It is recommended that you do not independently change this setting. To enable or disable rollback, follow the procedures outlined in the rollback management script documentation in this documentation.

Email settings

SQ_CONF_DEFAULT_EMAIL

This configuration setting defines the email address that Matrix will send emails to if it has not been supplied with an email address. For example, a custom form that has been configured to send emails but not configured with an email address to which to send them.

It is recommended that this be the email address of the owner of the Matrix installation.
define('SQ_CONF_DEFAULT_EMAIL', 'you@example.com');

This setting can also be configured through the Default email field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_TECH_EMAIL

This configuration setting defines the email address that Matrix will send technical emails to, including error reports and system configuration changes.

It is recommended that this be the email address of the user that can diagnose and fix any technical issues on the Matrix installation.
define('SQ_CONF_TECH_EMAIL', 'admin@example.com');

This setting can also be configured through the Tech email field on the System configuration screen. Read the System configuration screen documentation for more information.

Login/session settings

SQ_CONF_FORCE_SECURE_LOGIN_URLS

This configuration setting accepts a list of system root URLs, as entered in the SQ_CONF_SYSTEM_ROOT_URLS setting. System root URLs listed in this setting will attempt to display the sign-in box using the HTTPS protocol, regardless of other protocol settings on the site.

Similar to the SQ_CONF_SYSTEM_ROOT_URLS setting, this is stored as a newline-delimited ("\n") string.

define('SQ_CONF_FORCE_SECURE_LOGIN_URLS', '');

This setting can also be configured through the Root URLs requiring secure login field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_MAX_LOGIN_ATTEMPTS

This configuration setting defines the number of times a user may incorrectly enter their password before their account is locked out.

define('SQ_CONF_MAX_LOGIN_ATTEMPTS', 3);

This setting can also be configured through the Max login attempts field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ALLOW_IP_CHANGE

By default, if a user’s IP address changes while they are using Matrix, they will be logged out to ensure their account is not being used by another. In some companies, proxy settings are configured to change the IP address of a user each time they view a Matrix page, which would effectively log these users out frequently using this setting’s default.

Enabling this setting will permit Matrix to allow a user’s IP address to change throughout their session.

define('SQ_CONF_ALLOW_IP_CHANGE', 1);

This setting can also be configured through the Allow IP change field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ACCEPT_HTTP_CREDS

If a user has previously entered their username and password in a standard HTTP authentication form, Matrix will be provided with the username and password they entered.

If this configuration setting is enabled, Matrix will attempt to log the user into the system using the username and password combination provided, without requiring the user to retype their username and password. The password stored within Matrix must match the password entered during the initial HTTP authentication.

define('SQ_CONF_ACCEPT_HTTP_CREDS', 1);

This setting can also be configured through the Process PHP credentials field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ENABLE_HTTP_LOGIN

If this configuration setting is enabled, Matrix will generate an HTTP authentication dialogue box instead of painting the applied sign-in design. This will allow external tools to log in to Matrix by appending use_http_login=1 to the URL.

define('SQ_CONF_ENABLE_HTTP_LOGIN', 0);

This setting can also be configured through the Enable HTTP authentication field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ALLOW_HTTP_LOGIN

This configuration setting controls whether Matrix should use a username sent from an external authentication mechanism (for example, an authentication system provided by a web server or a proxy) to automatically sign in a user, without them having to enter their password directly into the Matrix system. If this setting is enabled, Matrix will assume the user has been successfully authenticated from the external system and will not check the password entered during the original authentication against their system password.

This setting uses the server variable set in the SQ_CONF_HTTP_LOGIN_VAR configuration setting.
define('SQ_CONF_ALLOW_HTTP_LOGIN', 1);

This setting can also be configured through the Accept HTTP authentication field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_HTTP_LOGIN_VAR

This configuration setting controls the PHP server variable used to authenticate external users if the SQ_CONF_ALLOW_HTTP_LOGIN setting is turned on.

Authentication may be bypassed if SQ_CONF_HTTP_LOGIN_VAR is used with an HTTP header.

To securely implement this setting, you must ensure that any HTTP header is fully managed through all routes to Matrix.

There are two typical value types for this setting:

Remote_user

Used by standard HTTP authentication systems, such as that used by Apache. This is the default setting.

HTTP_*

Some proxies may instead send a user name as an HTTP header. Generally speaking, to convert from an HTTP header name to a server variable name, the header name should be capitalized, hyphens should be changed to underscores, and http_ added to the front. For example, if the user name is returned in a header X-User-Name, this setting should be set to HTTP_X_USER_NAME.

define('SQ_CONF_HTTP_LOGIN_VAR', 'remote_user');

This setting can also be configured through the HTTP authentication variable field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ENABLE_EXTERNAL_AUTH_SYSTEMS

This configuration setting controls whether external authentication systems, such as LDAP bridges are enabled when authenticating a user.

When this option is disabled, only the default authentication asset will be returned from the authentication systems folder (inside system management). This allows a system administrator to temporarily disable external authentication in certain circumstances, for example, if an external system is compromised.

define('SQ_CONF_ENABLE_EXTERNAL_AUTH_SYSTEMS', false);

This setting can also be configured through the Enable external authentication systems field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_USE_DEFAULT_SESSION_SAVE_PATH

This configuration setting allows you to select whether to use the default PHP session file save path, as specified in the php.ini configuration file or let Matrix set it to the cache folder of the system.

The former may be required when using shared storage, that is, with multiple Matrix servers, while the latter is required of site networks to operate.

This option should only be changed by advanced users. If you change this option, all users who are currently logged in will be immediately logged out of their session.
define('SQ_CONF_USE_DEFAULT_SESSION_SAVE_PATH', false);

This setting can also be configured through the Use default PHP session file save path field on the System configuration screen. Read the System configuration screen documentation for more information.

Intervals

SQ_CONF_REFRESH_INTERVAL

This configuration setting defines how often (in seconds) the top frame refreshes in the administration and inline edit modes. The refreshing of this frame re-acquires locks that the user still needs.

The value of this setting should be lower than the value of SQ_CONF_LOCK_LENGTH to ensure locks do not expire while users are editing content.
define('SQ_CONF_REFRESH_INTERVAL', 120);

This setting can also be configured through the Refresh interval field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_LOCK_LENGTH

This configuration setting defines how long a lock is held before it expires (in seconds). For example, if a user acquires the locks on a page and then decides they do not want to edit it any more, the lock will be released automatically after a period defined in this setting.

define('SQ_CONF_LOCK_LENGTH', 600);

This setting can also be configured through the Lock length field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_LOCK_INACTIVITY_EXPIRY

This configuration setting defines how long a lock is held before it expires (in seconds) due to inactivity on the current page. For example, if a user acquires the locks on a page and does not make any changes within this time, the lock will be released automatically after a period defined in this setting.

define('SQ_CONF_LOCK_INACTIVITY_EXPIRY', 1800);

This setting can also be configured through the Lock inactivity expiry field on the System configuration screen. Read the System configuration screen documentation for more information.

PHP configuration

SQ_CONF_WEB_MEMORY_LIMIT / SQ_CONF_CRON_MEMORY_LIMIT

These configuration settings specify the maximum amount of memory that can be used by Matrix’s web and cron systems (in megabytes). The default value for both these settings is 64 Mb. On larger, more complex systems, you may need to increase this limit.

define('SQ_CONF_WEB_MEMORY_LIMIT', 64);

define('SQ_CONF_CRON_MEMORY_LIMIT', 64);

These settings can also be configured through the Web memory limit and Cron memory limit fields on the System configuration screen. Read the System configuration screen documentation for more information.

Error/debug settings

SQ_CONF_LOG_ERRORS

This configuration setting allows you to specify whether Matrix will log all errors generated on the frontend and editing interfaces.

It is highly recommended that you do not alter the default value of this configuration setting.
define('SQ_CONF_LOG_ERRORS', true);

This setting can also be configured through the Log errors field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ERRORS_HIDE_FRONTEND

This configuration setting allows you to specify whether errors are hidden on the frontend for users of your site. The default value for this setting is false, meaning that errors will be displayed on the frontend. This may be undesirable on a production system and can be disabled by setting this option to true.

define('SQ_CONF_ERRORS_HIDE_FRONTEND', false);

This setting can also be configured through the Hide errors on frontend field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ERRORS_LOG_TO_SYSLOG

This configuration setting allows you to specify whether to log system errors to the operating system log.

define('SQ_CONF_ERRORS_LOG_TO_SYSLOG', false);

This setting can also be configured through the Log errors to Syslog? field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ERRORS_SYSLOG_FACILITY

This configuration setting defines the facility used for logging errors to the operating system log. This will determine where in the system log the errors will be filed. The options available are User and Local 0 to 7. These facilities are user-defined and must be configured in the system’s syslog.conf file.

The SQ_CONF_ERRORS_LOG_TO_SYSLOG setting must be enabled to set the Syslog facility.
define('SQ_CONF_ERRORS_SYSLOG_FACILITY', 'user');

This setting can also be configured through the Syslog facility field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_LOG_EXTENSION

This setting defines the file extension that all log files will receive.

It is highly recommended that you do not alter the default value of this configuration setting.
define('SQ_CONF_LOG_EXTENSION', '.log');

SQ_CONF_LOG_FILE_SYSTEM / SQ_CONF_LOG_FILE_ERROR

Within Matrix, there are two main log files:

  • The system log is an audit trail of all activity that occurs within the Matrix editing interfaces.

  • The error log is a record of all generated errors on the frontend and editing interfaces.

These configuration settings define the names of these log files. The file extension should not be specified.

It is highly recommended that you do not alter the default values of these configuration settings.
define('SQ_CONF_LOG_FILE_SYSTEM', 'system');

define('SQ_CONF_LOG_FILE_ERROR', 'error');

Internationalisation settings

SQ_CONF_DEFAULT_FRONTEND_LANGUAGE

This configuration setting allows you to select the frontend language sent in the headers of the pages in your site to a user’s web browser. This setting can be configured on individual assets, but if the value has not been set, then this value is used instead.

define('SQ_CONF_DEFAULT_BACKEND_LOCALE', 'en');

This setting can also be configured through the Default frontend language field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_DEFAULT_BACKEND_LOCALE

This configuration setting determines the locale used by the translation system to determine the language to be used for string translations.

define('SQ_CONF_DEFAULT_BACKEND_LOCALE', 'en_au');

This setting can also be configured through the Default backend locale field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_DEFAULT_CHARACTER_SET

This configuration setting allows you to select the character set sent in the headers of the pages in your site to a user’s web browser.

define('SQ_CONF_DEFAULT_CHARACTER_SET', 'utf-8');

Changing this value has not been supported since Matrix 5.0.0.0.

SQ_CONF_USE_LANG_CHAR_MAP

The configuration setting allows you to select whether to use character conversion for URLs based on the international settings. If this setting is enabled, the newly-created asset’s URLs will be converted to characters of the selected language.

Not all languages are supported.
define('SQ_CONF_USE_LANG_CHAR_MAP', false);

This setting can also be configured through the Use language character map field on the System configuration screen. Read the System configuration screen documentation for more information.

Editing interface settings

SQ_CONF_SAVE_BUTTON_TEXT

This configuration setting defines the text displayed on the Save button in the administration and inline edit modes.

define('SQ_CONF_SAVE_BUTTON_TEXT', 'btn:[Save]');

This setting can also be configured through the Save button text field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_CONFIRM_SAVE_CHANGES

This configuration setting defines whether a warning dialogue is displayed when navigating away from a page within the administration interface on which there are uncommitted changes. This setting is enabled by default.

define('SQ_CONF_CONFIRM_SAVE_CHANGES', 1);

This setting can also be configured through the Confirm save changes field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_EDITING_TIME

This configuration setting defines the amount of time that a user can be idle before they are logged out automatically by Matrix.

define('SQ_CONF_EDITING_TIME', 3600)

This configuration setting prevents the content of an asset from containing a link to itself. By default, this setting is disabled.

define('SQ_CONF_NO_ASSET_SELF_LINKS', false)

Asset tree settings

SQ_CONF_ASSET_MAP_ASSET_LIMIT

When an asset is expanded in the asset tree, a set number of child assets are shown before the Next button is displayed to view the next set of child assets. This configuration setting defines how many child assets are shown at one time.

define('SQ_CONF_ASSET_MAP_ASSET_LIMIT', 50);

This setting can also be configured through the Asset limit per set field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ASSET_MAP_DISPLAY_NAME

This configuration setting controls the display name of assets within the asset tree. By default, this will be the short name of an asset.

You can modify this setting to display other information for each asset, such as the asset ID and the number of children. The following keywords can be used in conjunction with other formatting:

%asset_assetid%

The asset’s ID.

%asset_name%

The full name of the asset.

%asset_short_name%

The short name of the asset.

%asset_type_code%

The full asset type name (for example, "Standard page").

%asset_status%

A text description of the asset’s status (for example, "Safe editing").

%asset_num_kids%

The number of immediate child assets (bridges return "n/a" for this keyword).

define('SQ_CONF_ASSET_MAP_ASSET_DISPLAY_NAME', '`%asset_name% (%asset_assetid%`)');

This setting can also be configured through the Asset display name field on the System configuration screen. Read the System configuration screen documentation for more information.

HTTP header settings

SQ_CONF_SEND_CACHEABLE_HEADER

When this configuration setting is enabled, Matrix will send cacheable cache-control and pragma headers for all public live pages it serves to users who are not logged in. This allows the web browser to cache pages for faster browsing.

define('SQ_CONF_SEND_CACHEABLE_HEADER', 1);

This setting can also be configured through the Send cacheable header field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_SEND_LAST_MODIFIED_HEADER

When this configuration setting is enabled, Matrix will send a last-modified header for all publicly cached pages it serves to users who are not logged in.

define('SQ_CONF_SEND_LAST_MODIFIED_HEADER', 0);

This setting can also be configured through the Send last-modified header field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_SEND_NOT_MODIFIED_HEADER

When this configuration setting is enabled, Matrix will send a 304 Not Modified code if requested to do so by a proxy. The 304 code will only be sent for publicly cached pages and users who are not logged in.

define('SQ_CONF_SEND_NOT_MODIFIED_HEADER', 0);

This setting can also be configured through the Send not modified status-code field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_SEND_NO_CACHE_HEADER

When this configuration setting is enabled, Matrix will send a no-cache cache-control header for file asset types. This option can be disabled to resolve inline file display issues involving PDF documents in Internet Explorer.

define('SQ_CONF_SEND_NO_CACHE_HEADER', 0);

This setting can also be configured through the Send no-cache header for file assets field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_SEND_404_CACHEABLE_HEADER

When this configuration setting is enabled, pages returning an HTTP 404 Not Found response are cached by a caching proxy server. This option is separate from the SQ_CONF_SEND_CACHEABLE_HEADER setting. The expiry time of the cached response is determined by the Cache expiry setting on the Details* screen of the cache manager.

define('SQ_CONF_SEND_404_CACHEABLE_HEADER', 0);

This setting can also be configured through the Send 404 cacheable header field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_USE_HTTP_X_FORWARDED_FOR

This configuration setting allows you to specify whether to enable the x-forwarded-for HTTP header. This header allows parent servers to discern client IPS when behind reverse proxies. This means that IP restrictions within Matrix can be used in conjunction with squid and other reverse proxies, as specified in the SQ_CONF_FORWARDED_IP_PROXY_LIST setting.

define('SQ_CONF_USE_HTTP_X_FORWARDED_FOR', 1);

define('SQ_CONF_FORWARDED_IP_PROXY_LIST', '172.16.254.1
172.16.254.2
172.16.254.3');

These settings can also be configured through the Use "X-Forwarded-for" header field on the System configuration screen. Read the System configuration screen documentation for more information.

This configuration setting allows you to specify whether to enable HTTPonly cookies. An HTTPOnly cookie will only be used when transmitting HTTP or HTTPS requests. Additionally, a web browser will not allow client-side scripts (such as JavaScript) access to the cookie. This can help mitigate the effects of cross-site scripting attacks.

define('SQ_CONF_COOKIE_OPTION_HTTP_ONLY', false);

This setting can also be configured through the HTTP only for cookie field on the System configuration screen. Read the System configuration screen documentation for more information.

This configuration setting allows you to specify whether to transmit the secure cookie flag when a connection is made over HTTPS. Enabling this will cause browsers to not share the session cookie between HTTP and HTTPS.

define('SQ_CONF_COOKIE_OPTION_SECURE', false);

This setting can also be configured through the Enable 'secure' cookie option field on the System configuration screen. Read the System configuration screen documentation for more information.

Roles configuration settings

SQ_CONF_ENABLE_ROLES_PERM_SYSTEM

This configuration setting allows you to enable permission roles in the system. By default, this setting is disabled. Leaving roles disabled will increase system performance.

define('SQ_CONF_ENABLE_ROLES_PERM_SYSTEM', false);

This setting can also be configured through the Enable permission roles system field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ENABLE_ROLES_WF_SYSTEM

This configuration setting allows you to enable workflow roles in the system. By default, this setting is disabled. Leaving roles disabled will increase system performance.

define('SQ_CONF_ENABLE_ROLES_WF_SYSTEM', false);

This setting can also be configured through the Enable workflow roles system field on the System configuration screen. Read the System configuration screen documentation for more information.

SQ_CONF_ENABLE_GLOBAL_ROLES

This configuration setting allows you to enable global roles in the system. By default, this setting is disabled. Leaving roles disabled will increase system performance.

define('SQ_CONF_ENABLE_ROLES_WF_SYSTEM', false);

This setting can also be configured through the Enable global roles field on the System configuration screen. Read the System configuration screen documentation for more information.

Pear configuration settings

SQ_CONF_PEAR_PATH

Matrix overrides some pear packages to fix minor errors that have not been fixed in the official release of the package. These overridden packages are placed into the directory defined in this configuration setting.

It is highly recommended that you do not alter the default value of this configuration setting.
define('SQ_CONF_PEAR_PATH', sq_system_root.'/php_includes');

Asset tree configuration settings

SQ_CONF_ASSET_TREE_BASE / SQ_CONF_ASSET_TREE_SIZE

These configuration settings define the way the linking system encodes asset tree ids in the database.

It is highly recommended that you do not alter the default values of these configuration settings.
define('SQ_CONF_ASSET_TREE_BASE', 64);

define('SQ_CONF_ASSET_TREE_SIZE', 4);
These settings should not be modified after Matrix has been installed. If they are changed, the Matrix link tree must be recreated.

CACHE CONFIGURATION SETTINGS

SQ_CONF_ASSET_CACHE_SIZE_WEB / SQ_CONF_ASSET_CACHE_SIZE_CLI

These configuration settings define the maximum number of assets that can be stored in the internal Matrix asset cache for web and CLI requests. A value of -1 indicates that there is no maximum.

It is highly recommended that you do not alter the default values of these configuration settings.
define('SQ_CONF_ASSET_CACHE_SIZE_WEB', -1);

define('SQ_CONF_ASSET_CACHE_SIZE_CLI', -1);

Debug configuration settings

SQ_CONF_DEBUG

This configuration setting defines the amount of debugging information displayed within the system. Debug information is helpful in diagnosing issues that may occur within your system.

This setting takes one of the following values:

0

No debug information will be displayed

1

All errors will display the file and line number where the error occurred.

2

All errors will display a backtrace of the script’s execution.

3

All errors will display the file and line number of where the error occurred and a backtrace of the script’s execution.

4

Additional information about memory and performance metrics of a page is displayed when the page loads.

5

All errors will display the file and line number of where the error occurred, and additional information about memory and performance will be shown for pages.

6

All errors will display a backtrace of the script’s execution, and additional information about memory and performance will be shown for pages.

7

All errors will display the file, and line number of where the error occurred and a backtrace of the script’s execution and additional information about memory and performance will be shown for pages.

define('SQ_CONF_DEBUG', 3);

Session handler settings

SQ_CONF_SESSION_HANDLER / SQ_CONF_CUSTOM_SESSION_SAVE_PATH

The SQ_CONF_SESSION_HANDLER configuration setting defines whether the default Matrix session handler is used (when blank) or if a memcache session handler is used (when set to memcache).

The SQ_CONF_CUSTOM_SESSION_SAVE_PATH configuration setting allows you to specify an alternate path in which to save Matrix session files. By default, this setting will be blank, indicating the system’s default 'cache' directory.

If a memcache session handler is specified in the SQ_CONF_SESSION_HANDLER setting, you will need to configure the system’s memcache.inc file.

For more information, refer to the memcache configuration documentation in this documentation.

define('SQ_CONF_SESSION_HANDLER', '');

define('SQ_CONF_CUSTOM_SESSION_SAVE_PATH', '/path/to/caches');

SQ_CONF_SESSION_GC_MAXLIFETIME

This configuration setting defines the amount of time that a user’s session file can be idle before it is deleted by PHP.

More information about the PHP session.gc_maxlifetime configuration option can be found on the PHP session configuration documentation.

If you are using the memcache session handler, this setting cannot exceed 2592000 seconds.

It is highly recommended that you do not alter the default value of this configuration setting.
define('SQ_CONF_SESSION_GC_MAXLIFETIME', 604800);

SQ_CONF_LOCKING_METHOD

Matrix lock entries can be stored within memcache, rather than the default SQ_LOCK database table (specified as default).

However, that forcibly acquiring locks, the mass changing of lock ownership, and notifications of active lock ownership are not available under memcache asset locking due to the limitations of memcache.

Once you have configured the memcache.inc file, you can enable memcache asset locking by setting this configuration option to memcache. For more information, refer to the memcache configuration documentation in this documentation.

define('SQ_CONF_LOCKING_METHOD', 'default');

Data directory settings

SQ_CONF_NUM_DATA_DIRS

The Matrix system data directory (data/private/assets) has a two-level structure; the upper level containing asset ID hash directories (to avoid the 32,000 sub-directory limit found in some file systems). The configuration setting regulates the number of hash directories used.

It is highly recommended that you do not alter the default values of these configuration settings except in very large systems (upwards of 640,000 of specific asset types).
Do not alter this setting after step_02.php is run during the initial system installation. Altering this setting after this step will corrupt the data directory.
define('SQ_CONF_NUM_DATA_DIRS', 20);

License key settings

SQ_LICENSE_INSTALL_KEY / SQ_LICENSE_WARRANTY_KEY

These configuration settings define the unique Matrix install and warranty license keys for your system.

The SQ_LICENSE_INSTALL_KEY is automatically generated during the installation process and should not be altered.

The SQ_LICENSE_WARRANTY_KEY setting can be used to input a warranty key if you have obtained one for your system.

define('SQ_LICENSE_INSTALL_KEY', '');

define('SQ_LICENSE_WARRANTY_KEY', '');

These settings can also be configured through the Install key and Warranty key fields on the System configuration screen. Read the System configuration screen documentation for more information.

User settings

SQ_CONF_FORCE_LOWERCASE_USERNAME

This configuration will force the usernames of Matrix users created in the backend and frontend to lowercase characters.

This setting is effective on the following user types:

  • User

  • Simple_edit_user

  • Backend_user

  • System_user (system administrator)

define('SQ_CONF_FORCE_LOWERCASE_USERNAME', false);

SQ_CONF_ROOT_USER_DISABLED

This feature works differently in versions between 4.16.2 - 5.4.1.3 and versions from 5.4.2.0 and above.

4.16.2 - 5.4.1.3

Enabling this configuration setting will disable the system’s root user account and give root access to system administrators.

When the root user account is disabled, the account asset will remain within the system; however, all of its functionality will be removed, and the account can no longer be logged into. In addition, all root privileges, including access to the system configuration and system management settings, will be given to system administrator users.

define('SQ_CONF_ROOT_USER_DISABLED', '1');

If the root user account has been disabled, disabling this configuration setting will reinstate the root user account and remove the root privileges for system administrators.

This setting will be automatically enabled if the root user account exhausts its max number of incorrect sign-in attempts, as defined in the SQ_CONF_MAX_LOGIN_ATTEMPTS configuration setting. If this occurs, a system administrator will be required to disable this setting to reinstate the root user account.

5.4.2.0 and above

Enabling this configuration setting will disable the system’s root user account.

When the root user account is disabled, the account asset will remain within the system; however, all of its functionality will be removed, and the account can no longer be logged into.

define('SQ_CONF_ROOT_USER_DISABLED', '1');

If the root user account has been disabled, disabling this configuration setting will reinstate the root user account.

Changing this setting will not have any effect on the access level for system administrators.

SQ_CONF_FUNNELBACK_INDEXING_USER

This configuration is used to allow Funnelback to crawl a Matrix instance using one or multiple Matrix users.

define('SQ_CONF_FUNNELBACK_INDEXING_USER', '1111,2222,3333');

Specify one or multiple Matrix user ids (comma-separated) to be allowed for Funnelback indexing. Funnelback crawler will have to sign in as one of those users to receive "X-Funnelback" headers for extra page metadata.

© 2015- Squiz Pty Ltd