ExpressionEngine® 3 User Guide

Legacy Documentation

You are using the documentation for version 3.5.17. Go here for the latest version or check here for your available upgrades to the latest version.

System Configuration Overrides

Warning

This article covers advanced topics.

By default, ExpressionEngine’s system settings are managed in the Control Panel and stored in the database, but these settings can be overridden with one of 3 configuration files: the main configuration file, the site index file, and the CP index file.

The main configuration file, found at system/user/config/config.php, is loaded every time the system is run, meaning that config overrides set in config.php always affect the system’s configuration.

The site index file is the index.php file found in the web root of the ExpressionEngine installation. This file acts like the gateway to the front-end of the site. Since all web requests for a site’s front-end pass through the site index file, there are a set of configuration overrides you can include in this file to alter ExpressionEngine’s configuration. Keep in mind that any overrides set in the site index file only affect the system’s behavior for front-end pages. (Even if you have removed index.php from your site’s URLs, all front-end web requests are still handled by the site index file.)

Note

Overrides available for use in the site index file are limited to cp_url, is_site_on, newrelic_app_name, site_404, site_index, site_name, site_url, template, and template_group.

The CP index file is the admin.php file also found in the installation’s web root. The CP index file is similar to the site index file except that it acts as the gateway for all web requests to the Control Panel. And similarly, any overrides set in the CP index file only affect the system’s behavior for CP pages accessed through that particular CP index file (e.g. http://example.com/admin.php).

Note

Overrides available for use in the CP index file are limited to cp_url, newrelic_app_name, and site_name.

ExpressionEngine’s settings are loaded in this order at runtime:

  1. Settings stored in the database are loaded.
  2. Settings in config.php are loaded and override settings loaded from the database.
  3. If a front-end page is being served, a limited array of settings in index.php are loaded and override any settings loaded from the database and the main configuration file.
  4. If a CP page is being served, a limited array of settings in admin.php are loaded and override any settings loaded from the database and the main configuration file.

Overrides

allow_avatar_uploads

Set whether members can upload their own avatar.

Value Behavior
y Allow members to upload their own avatar
n Do not allow members to upload their own avatar (default)

Example Usage:

$config['allow_avatar_uploads'] = 'y';

Also found in CP: Settings ‣ Avatar Settings: Allow members to upload their own avatars

allow_dictionary_pw

Set whether words commonly found in the dictionary can be used as passwords. Must be used in combination with name_of_dictionary_file.

Value Behavior
y Yes, allow dictionary words as passwords
n No, do not allow dictionary words as passwords

Example Usage:

$config['allow_dictionary_pw'] = 'y';

Also found in CP: Settings ‣ Security & Privacy: Allow Dictionary Words as Passwords

allow_extensions

Set whether extensions are enabled in the system. Disabling extensions will not uninstall extensions.

Value Behavior
y Enable all extensions (default)
n Disable all extensions

Example Usage:

$config['allow_extensions'] = 'y';

Also found in CP: Utilities ‣ Debug Extensions: Disable Extensions?

allow_member_localization

Set whether dates and times are localized to each members’ own localization preferences.

Value Behavior
y Show dates and times localized to each members’ preferences
n Show all dates and times localized to the site default

Example Usage:

$config['allow_member_localization'] = 'y';

Also found in CP: Settings ‣ Members: Allow members to set their own localization preferences

allow_member_registration

Set whether site visitors are allowed to register for accounts.

Value Behavior
y Allow front-end member registration
n Do not allow front-end member registration

Example Usage:

$config['allow_member_registration'] = 'y';

Also found in CP: Settings ‣ Members: Allow New Member Registrations

allow_multi_logins

Set whether an account can have multiple active sessions at one time.

Note

This feature is incompatible with the “Cookies Only” session type.

Value Behavior
y Allow multiple active sessions per account
n Do not allow multiple active sessions per account

Example Usage:

$config['allow_multi_logins'] = 'y';

Also found in CP: Settings ‣ Security & Privacy: Allow multiple log-ins from a single account

allow_pending_login

Set whether members of the Pending member group can log in or not. By default, Pending members cannot log in.

Value Behavior
y Allow Pending member log in
n Do not allow Pending members to log in (default)

Example Usage:

$config['allow_pending_login'] = 'y';

allow_signatures

Set whether member signatures are enabled.

Value Behavior
y Enable member signatures
n Disable member signatures

Example Usage:

$config['allow_signatures'] = 'y';

allow_textarea_tabs

Set whether a tab keystroke produces a tab in Publish Page and Template Editor textareas. This is the default behavior.

Value Behavior
y Insert tab on tab keystroke in textareas (default)
n Normal browser behavior on tab keystroke in textareas

Example Usage:

$config['allow_textarea_tabs'] = 'y';

allow_username_change

Set whether members can change their own usernames after registration.

Value Behavior
y Allow members to change their own usernames
n Do not allow members to change their own usernames

Example Usage:

$config['allow_username_change'] = 'y';

Also found in CP: Settings ‣ Security & Privacy: Allow members to change their username

app_version

The installation’s ExpressionEngine version.

Warning

This configuration variable is automatically set by the system and should not be modified.

auto_assign_cat_parents

Set whether to assign an entry to both the selected category and its parent category.

Value Behavior
y Entry will be assigned to the selected category and its parent category
n Entry will only be assigned to the selected category

Example Usage:

$config['auto_assign_cat_parents'] = 'y';

Also found in CP: Settings ‣ Content & Design: Auto-Assign Category Parents

autosave_interval_seconds

Set the interval between autosaves on the Publish Page.

Value Description
integer Autosave interval in seconds (default is 60)

Example Usage:

$config['autosave_interval_seconds'] = '30';

autosave_prune_hours

Set the age at which Channel Entry autosaves are automatically deleted.

Value Description
integer Pruning age in hours (default is 6)

Example Usage:

$config['autosave_prune_hours'] = '4';

avatar_max_height

Set the maximum height (in pixels) allowed for user-uploaded avatars.

Value Description
integer Max height (in pixels)

Example Usage:

$config['avatar_max_height'] = '120';

Also found in CP: Settings ‣ Avatars: Avatar Maximum Height

avatar_max_kb

Set the maximum file size (in kilobytes) allowed for user-uploaded avatars.

Value Description
integer Max file size (in kilobytes)

Example Usage:

$config['avatar_max_kb'] = '200';

Also found in CP: Settings ‣ Avatars: Avatar Maximum Size

avatar_max_width

Set the maximum width (in pixels) allowed for user-uploaded avatars.

Value Description
integer Max width (in pixels)

Example Usage:

$config['avatar_max_width'] = '120';

Also found in CP: Settings ‣ Avatars: Avatar Maximum Width

avatar_path

Set the server path to the avatar directory.

Value Description
path Full server path to writable avatar directory

Example Usage:

$config['avatar_path'] = '/path/images/avatars/';

Also found in CP: Settings ‣ Avatars: Server Path to Avatar Folder

avatar_url

Set the URL to the avatar directory.

Value Description
URL URL to avatar directory

Example Usage:

$config['avatar_url'] = 'http://example.com/images/avatars';

Also found in CP: Settings ‣ Avatars: URL to Avatar Folder

ban_action

Set the action to be taken when a visitor with a banned IP address attempts access.

Value Behavior
restrict Restrict the user to viewing the site only
message Show the user a specific message
bounce Redirect the user to a specified site

Example Usage:

$config['ban_action'] = 'message';

ban_destination

Set the redirect destination for visitors with banned IP addresses. Must be used in conjunction with ban_action set to bounce.

Value Description
URL Destination URL

Example Usage:

$config['ban_destination'] = 'http://www.example.com';

ban_message

Set the message shown to visitors with banned IP addresses. Must be used in conjunction with ban_action set to message.

Value Description
text Message to be shown to user

Example Usage:

$config['ban_message'] = 'This site is currently unavailable.';

banish_masked_ips

Set the system to deny a visitor access if the user’s IP address cannot be determined while throttling is enabled.

Value Behavior
y Deny access to visitors without IP addresses
n Allow access to visitors without IP addresses

Example Usage:

$config['banish_masked_ips'] = 'y';

Also found in CP: Settings ‣ Access Throttling: Deny Access if No IP Address is Present

banishment_message

Set a custom message to show throttled visitors. Throttling must be enabled and banishment_type must be set to message.

Value Description
text Custom message to show user

Example Usage:

$config['banishment_message'] = 'You have exceeded the allowed page load frequency.';

Also found in CP: Settings ‣ Access Throttling: Custom Message

banishment_type

Set the system’s method for handling throttled web requests.

Value Behavior
404 Respond to the request with standard 404 headers (default)
redirect Redirect the user to a specified URL
message Show the user a custom message

Example Usage:

$config['banishment_type'] = 'message';

Also found in CP: Settings ‣ Access Throttling: Action to Take

banishment_url

Set a URL to serve as the redirect destination for throttled visitors. Throttling must be enabled and banishment_type must be set to redirect.

Value Description
URL Destination URL for throttled visitors

Example Usage:

$config['banishment_url'] = 'http://www.yahoo.com';

Also found in CP: Settings ‣ Access Throttling: URL for Redirect

banned_emails

Specify email addresses to ban from site registration and login. Use wildcards for partial email addresses.

Value Description
email Pipe-delimited list of email addresses and/or wildcard domains

Example Usage:

$config['banned_emails'] = '[email protected]|[email protected]|*@spammydomain.com';

Also found in CP: Members ‣ Manage Bans: Banned Email Addresses

banned_ips

Specify IP addresses to ban from site registration and login. Use wildcards to ban blocks of IP addresses.

Value Description
IP Pipe-delimited list of IP addresses

Example Usage:

$config['banned_ips'] = '123.456.789.1|123.321.*';

Also found in CP: Members ‣ Manage Bans: Banned IP Address

banned_screen_names

Specify screen names that cannot be used for member accounts, which can be handy for reserving certain screen names for your own use.

Value Description
screen name Pipe-delimited list of screen names to restrict

Example Usage:

$config['banned_screen_names'] = 'Garfield|Snoopy|Hobbes';

Also found in CP: Members ‣ Manage Bans: Restricted Screen Names

banned_usernames

Specify usernames that cannot be used for member accounts, which can be handy for reserving certain usernames for your own use.

Value Description
username Pipe-delimited list of usernames to restrict

Example Usage:

$config['banned_usernames'] = 'garfield|snoopy|hobbes';

Also found in CP: Members ‣ Manage Bans: Restricted Usernames

base_path

Set your site’s base server path for use in other path configurations. Once set, this value is made available via a {base_path} variable that can be placed in server path fields in the control panel for easy environment management.

Value Description
path Server path, typically to your site’s root

Example Usage:

$config['base_path'] = '/var/www/html/';

Also found in CP: Settings ‣ URL and Path Settings: Default base path

base_url

Set your site’s base URL for use in other URL configurations. Once set, this value is made available via a {base_url} variable that can be placed in other URL configuration fields in the control panel for easy environment management.

Value Description
URL URL to your site

Example Usage:

$config['base_url'] = 'http://example.com';

Also found in CP: Settings ‣ URL and Path Settings: Default base URL

cache_driver

Specify a different caching driver to use.

Values Description
file File driver, /system/user/cache/ (default)
memcached Memcached driver, configured with memcached config
redis Redis driver, configured with redis config
dummy Dummy driver, will not cache

Example Usage:

$config['cache_driver'] = 'memcached';

cache_driver_backup

Specify a backup caching driver to use in case the one specified in cache_driver isn’t available. Same values accepted and same default as cache_driver.

Example Usage:

$config['cache_driver_backup'] = 'file';

captcha_font

Set whether TrueType fonts should be used for CAPTCHA images.

Value Behavior
y Enables the use of TrueType fonts (default)
n Disables use of TrueType fonts

Example Usage:

$config['captcha_font'] = 'n';

Also found in CP: Settings ‣ CAPTCHA: Use TrueType Font for CAPTCHA

captcha_path

Set the path to the directory containing CAPTCHA images.

Value Description
path Server path to CAPTCHA directory

Example Usage:

$config['captcha_path'] = '/path/to/captcha/folder/';

Also found in CP: Settings ‣ CAPTCHA: Server Path to CAPTCHA Folder

captcha_rand

Specify whether to add a random three-digit number to the end of each generated CAPTCHA word. This makes it more difficult for scripts to guess or brute-force the form submission.

Value Behavior
y Add random numbers to CAPTCHA words (default)
n Do not add random numbers to CAPTCHA words

Example Usage:

$config['captcha_rand'] = 'n';

Also found in CP: Settings ‣ CAPTCHA: Add Random Number to CAPTCHA Word

captcha_require_members

Specify whether to require logged-in members to pass CAPTCHA validation to submit front-end forms, such as Channel Form, comment forms and email forms.

Value Behavior
y Require logged-in members pass CAPTCHA validation
n Do not require logged-in members to pass CAPTCHA validation (default)

Example Usage:

$config['captcha_require_members'] = 'y';

Also found in CP: Settings ‣ CAPTCHA: Require CAPTCHA with logged-in members

captcha_url

Set the full URL to the directory containing CAPTCHA images.

Value Description
URL Full URL to the CAPTCHA directory

Example Usage:

$config['captcha_url'] = 'http://www.example.com/images/captchas';

Also found in CP: Settings ‣ CAPTCHA: Full URL to CAPTCHA Folder

censor_replacement

You may optionally specify a word or phrase to be used when replacing censored words. For example, if you set “tisk tisk” as your replacement word, and “shucks” is in your censored list, then anytime “shucks” is used it will be replaced with “tisk tisk”. If you do not set this preference, a pound symbol will be used for each character that is censored, so “shucks” would be converted to “######”.

Value Description
text Text to be used as a replacement for censored words

Example Usage:

$config['censor_replacement'] = 'tisk tisk';

Also found in CP: Settings ‣ Word Censoring: Censoring Replacement Word

censored_words

Specify a list of words to censor. Wildcards are allowed. For example, test* would censor the words “test”, “testing”, and “tester”, while *gress would censor the words “progress” and “congress”.

Value Description
word Pipe-delimited list of words to censor

Example Usage:

$config['censored_words'] = 'dagnabbit|consarnit|golly gee willikers';

Also found in CP: Settings ‣ Word Censoring: Censored Words

charset

Specify which character set for the system to use by default.

Warning

Unless you have good reason and you know what you’re doing, leave this setting at its default value of UTF-8.

Value Description
charset Character set to be used

Example Usage:

$config['charset'] = 'UTF-8';

code_block_pre

Custom markup to use wrap [code] blocks, works with code_block_post below to wrap the standard <pre><code>...</code></pre> with your custom markup.

Value Description
code_block_pre Markup to prepend to code blocks.

Example Usage:

$config['code_block_pre'] = '<div class="codeblock">';
$config['code_block_post'] = '</div>';

code_block_post

Custom markup to use wrap [code] blocks, works with code_block_pre above to wrap the standard <pre><code>...</code></pre> with your custom markup.

Value Description
code_block_post Markup to append to code blocks.

Example Usage:

$config['code_block_pre'] = '<div class="codeblock">';
$config['code_block_post'] = '</div>';

comment_edit_time_limit

Set the length of time in seconds that members have to edit their comments on the front end of the site. Set to 0 for no limit. Members in the Super Admin group are exempt from this time limit.

Value Description
integer Length of time in seconds

Example Usage:

$config['comment_edit_time_limit'] = '120';

Also found in CP: Settings ‣ Comment Settings: Comment Editing Time Limit

comment_moderation_override

By default, comments are no longer accepted for entries after their comment expiration date has passed. Set this preference to override that behavior and allow moderated comments on entries after comment expiration.

Value Behavior
y Allow moderated comments after comment expiration
n Do not allow any comments after comment expiration (default)

Example Usage:

$config['comment_moderation_override'] = 'y';

Also found in CP: Settings ‣ Comment Settings: Moderate expired entries

comment_word_censoring

Apply word censoring to comments, even if censoring is not enabled system-wide.

Value Behavior
y Enable censoring for comments
n Obey system-wide setting (default)

Example Usage:

$config['comment_word_censoring'] = 'y';

Also found in CP: Settings ‣ Comment Settings: Force word censoring for comments

cp_session_type

Set the method for session handling in the Control Panel.

Note

The Auto log-in on future visits? option appears on the CP login screen when the cookies only method is used, allowing users to remain logged-in to the CP for up to 2 weeks since their last visit.

Value Behavior
c Use cookies only
s Use session ID only
cs Use both cookies and session ID (default)

Example Usage:

$config['cp_session_type'] = 's';

Also found in CP: Settings ‣ Security & Privacy: Control Panel Session Type

Changed in version 2.8: Variable was changed from admin_session_type to cp_session_type.

cp_url

Set the full URL to your Control Panel.

Value Description
URL The full URL to your Control Panel

Example Usage:

$config['cp_url'] = 'http://example.com/admin.php';

Also available for use in the site index file, index.php, and the CP index file, admin.php. Example Usage:

$assign_to_config['cp_url'] = 'http://domain2.com/admin.php';

Also found in CP: Settings ‣ URL and Path Settings: URL to your Control Panel index page

date_format

Set the default format for displaying dates. If allow_member_localization is enabled and a member has their own localization preference set, that will override this setting.

Value Description
code Format string using date formatting codes

Example Usage:

$config['date_format'] = '%F %d %Y';

debug

Set display preferences for PHP and database error messages.

Note

Error messages are helpful for troubleshooting and catching errors during development, but since they can contain confusing language or reveal sensitive system information like file paths, we strongly recommend only showing them to Super Admin-level users once the site is in production.

Value Behavior
0 Hide PHP/SQL error messages
1 Show PHP/SQL error messages to only Super Admin users
2 Show PHP/SQL error messages all users NOT SECURE

Example Usage:

$config['debug'] = '1';

Also found in CP: Settings ‣ Debugging & Output: Debug Preference

default_member_group

Set the member group to which new users will be assigned.

Value Description
integer Member group ID

Example Usage:

$config['default_member_group'] = '6';

Also found in CP: Settings ‣ Members: Default Member Group Assigned to New Members

default_site_timezone

Set the default timezone. All dates and times displayed by ExpressionEngine will be localized to this timezone unless overridden by a member’s own localization preferences.

Value Behavior
timezone A valid timezone supported by PHP

Example Usage:

$config['default_site_timezone'] = 'America/Los_Angeles';

Also found in CP: Settings ‣ General Settings: Site Timezone

deft_lang

Set the default language. ExpressionEngine ships with English, and additional language packs are available for download.

Value Description
language Name of language directory found in system/user/language/

Example Usage:

$config['deft_lang'] = 'french';

deny_duplicate_data

Set whether to reject duplicate data submissions. This feature blocks a comment if an identical one already exists on the site.

Value Behavior
y Enable protection against duplicate data submissions (default)
n Disable protection against duplicate data submissions

Example Usage:

$config['deny_duplicate_data'] = 'n';

Also found in CP: Settings ‣ Security & Privacy: Deny Duplicate Data

disable_all_tracking

This is an emergency override which will disable all tracking when enabled. This is useful for server administrators who need a way to respond immediately to a traffic spike to help keep the site running smoothly.

Note

Hit tracking features are disabled by default, so if you have not intentionally enabled them, you can ignore this setting. It is only useful if you have enabled Hit Tracking and can’t access your control panel to disable them. In that rare instance, you can add this to your config.php file as an emergency override.

Value Behavior
y Disables all tracking (User, Template, Channel, Referrer)

Example Usage:

$config['disable_all_tracking'] = 'y';

disable_csrf_protection

CSRF protection prevents automated scripts (the most common way spam is generated) from repeatedly submitting comments or other form data. A submission is only allowed when a user manually loads a page and submits the form from your site.

Value Behavior
y Disable CSRF protection
n Enable CSRF protection (default)

Example Usage:

$config['disable_csrf_protection'] = 'y';

disable_tag_caching

Warning

Use only under extreme circumstances.

Disables tag caching, which if used unwisely on a high traffic site can lead to disastrous disk i/o. This setting allows quick thinking admins to temporarily disable it without hacking or modifying folder permissions.

Value Behavior
y Disable tag caching
n Enable tag caching (default)

Example Usage:

$config['disable_tag_caching'] = 'y';

dynamic_tracking_disabling

Set a value for the maximum number of online visitors to track. Once this value is exceeded, all of the tracking features will be temporarily disabled until the number of online visitors drops below the indicated value. Recommended values for this feature will vary based on your hosting environment. Check with your server administrator to discuss reasonable limits for your site.

Note

Online User Tracking must be enabled for this feature to work.

Value Behavior
integer Maximum number of online visitors to track

Example Usage:

$config['dynamic_tracking_disabling'] = '350';

Also found in CP: Settings ‣ Hit Tracking: Suspend ALL tracking when number of online visitors exceeds:

email_batch_size

Set the number of emails to be sent in each batch. The batch size you should use depend on many things; among them the email protocol you have chosen, the server configuration, and the server power, so you may need to experiment a little to get it right.

Note

Batch mode must be enabled.

If you are using one of the more robust mail protocols, like Sendmail or SMTP, you can set a greater batch total, possibly as high as several hundred or even more if you are on a dedicated server. A batch size of 300 in these cases is a good starting point. If you are having good success you can increase it until you begin experiencing time-outs.

Note

Unless your mailing list numbers in the thousands, you won’t notice much of a speed gain from setting large batches. If you are using the less efficient “PHP mail” protocol then you will usually need to set a lower batch size; 50-100 is typical.

Value Description
integer The number of emails per batch

Example Usage:

$config['email_batch_size'] = '300';

email_batchmode

Set whether to send email via the Communicate section of the Control Panel in batches.

This mode splits up large numbers of emails into small batches which are sent at short intervals. This gives you the ability to send email to very large mailing lists without running up against your server’s execution time limit. By default, PHP limits any process to 30 seconds, which is not enough time to send a large amount of email. Enabling the batch mode can prevent server time-outs. A secondary benefit is that it is less taxing on your mail server and, in the case of people on shared hosting accounts, less likely to cause problems with your server administrator.

Value Behavior
y Enable batch mode
n Disable batch mode (default)

Example Usage:

$config['email_batchmode'] = 'y';

email_charset

Set the character encoding used on the content of outgoing messages.

Value Description
encoding Encoding to use for content of outgoing emails

Example Usage:

$config['email_charset'] = 'utf-8';

Also found in CP: Settings ‣ Outgoing Email: Email Character Encoding

email_console_timelock

Set the number of minutes that must lapse before a member is allowed to send another email.

Note

This only applies to the Email Console in the member profile pages.

Value Description
integer Number of minutes that must lapse before a member is allowed to send another email

Example Usage:

$config['email_console_timelock'] = '300';

email_crlf

If set, this overrides the core Email class setting for crlf characters in quoted-printable encoded emails (Email class $crlf property).

Value Behavior
text Overrides the core Email class setting for crlf characters in quoted-printable encoded emails

Example Usage:

$config['email_crlf'] = "\r\n";

Note

Double quotes must be used around this value, as per example.

email_newline

If set, overrides the core Email class setting for newline characters (Email class $newline property).

Value Behavior
text Overrides the core Email class setting for newline characters

Example Usage:

$config['email_newline'] = "\r\n";

Note

Double quotes must be used around this value, as per example.

email_smtp_crypto

Cryptographic protocol for SMTP, when a secure connection is required.

Value Behavior
ssl Set the SMTP protocol to SSL (ssl://)
tls Set the SMTP protocol to Opportunistic TLS (STARTTLS)

Example Usage:

$config['email_smtp_crypto'] = 'tls';

emoticon_url

Set the URL to the base folder where smiley graphics are stored.

Value Description
URL URL to the location of smiley graphics

Example Usage:

$config['emoticon_url'] = 'http://example.com/images/smileys/';

Also found in CP: Settings ‣ Content & Design: URL to the folder containing your smileys

enable_avatars

If enabled, users can associate an image with their account that you can optionally display with entries, comments, and forum posts.

Value Behavior
y Enable avatars (default)
n Disable avatars

Example Usage:

$config['enable_avatars'] = 'n';

Also found in CP: Settings ‣ Avatar Settings: Enable Avatars

enable_censoring

If enabled, the system will censor any specified words in channel entries, comments, forum posts, etc. Censored words will be replaced with the censoring replacement word.

Value Behavior
y Enable word censoring
n Disable word censoring (default)

Example Usage:

$config['enable_censoring'] = 'y';

Also found in CP: Settings ‣ Word Censorship: Enable Word Censoring

enable_emoticons

If enabled, smileys entered as text will be displayed with graphic representations.

Value Behavior
y Enable emoticons (default)
n Disable emoticons

Example Usage:

$config['enable_emoticons'] = 'y';

Also found in CP: Settings ‣ Content & Design: Display Smileys

enable_entry_view_tracking

If enabled, the Entry “Views” Tracking Tag feature of the Channel module is available for use.

Value Behavior
y Enable tracking views
n Disable tracking views (default)

Example Usage:

$config['enable_entry_view_tracking'] = 'y';

Also found in CP: Settings ‣ Hit Tracking: Enable Channel Entry View Tracking

enable_hit_tracking

If enabled, the hit will be tracked each time a template is loaded.

Value Behavior
y Enable template hit tracking (default)
n Disable template hit tracking

Example Usage:

$config['enable_hit_tracking'] = 'y';

Also found in CP: Settings ‣ Hit Tracking: Enable Template Hit Tracking

enable_online_user_tracking

If enabled, online user statistics are tracked and the user-based variables in the Statistics module are available for use.

Value Behavior
y Enable online user tracking
n Disable online user tracking (default)

Example Usage:

$config['enable_online_user_tracking'] = 'y';

Also found in CP: Settings ‣ Hit Tracking: Enable Online User Tracking

enable_search_log

If enabled, each searched term will be logged and can be viewed in the Search Log.

Value Behavior
y Enable search term log (default)
n Disable search term log

Example Usage:

$config['enable_search_log'] = 'n';

enable_sql_caching

Improves the speed at which the Channel Entries tag is rendered by caching queries that are normally executed dynamically.

Value Behavior
y Enable query caching
n Disable query caching (default)

Example Usage:

$config['enable_sql_caching'] = 'n';

Also found in CP: Settings ‣ Content & Design: Cache Dynamic Channel Queries

enable_template_routes

This setting toggles whether or not Template Routes are used. If this is set to no, templates will not be accessible by their routes. When disabled the Template Route options will not appear in the Template Manager.

Value Behavior
y Enable Template Routes (default)
n Disable Template Routes

Example Usage:

$config['enable_template_routes'] = 'y';

enable_throttling

If enabled, the system will throttle excessive web requests from potentially malicious users.

Value Behavior
y Enable throttling
n Disable throttling (default)

Example Usage:

$config['enable_throttling'] = 'y';

Also found in CP: Settings ‣ Access Throttling: Enable Throttling

encode_removed_text

If set and $this->encode_email is set to FALSE in the Template class—which is not the default—this text will replace all instances of the encode global variable.

Value Description
text Replacement text

Example Usage:

$config['encode_removed_text'] = 'Encoded emails not allowed';

encryption_key

May be used by third parties as part of encoding and decoding encrypted data. The recommended length of the key is 32 characters (128 bits). The key should include numbers and uppercase and lowercase letters.

Value Description
string Key value

Example Usage:

$config['encryption_key'] = 'sy22k6QK6JzH38u4nLZ65bHOdK6VL89d';

expire_session_on_browser_close

Set the system to end a user’s session when the browser is closed. (In the case of Mac OS X, this means quitting the browser application.)

Value Behavior
y Expire user session when the browser closes
n Do not expire user session when the browser closes (default)

Example Usage:

$config['expire_session_on_browser_close'] = 'y';

Changed in version 2.8: Replaced user_session_ttl and cp_session_ttl. If either override had the value 0 in config.php prior to the 2.8 update, they were replaced with $config['expire_session_on_browser_close'] = 'y'; during the update.

filename_increment

Forces filenames of uploaded files to be unique. Secondary uploads of existing files or uploads that share a filename with an existing file will have an incrementing number appended to the filename.

Value Behavior
y Force upload filenames to be unique
n Allow duplicate filenames (default)

Example Usage:

$config['filename_increment'] = 'y';

force_query_string

If enabled, ExpressionEngine will render URLs with a question mark following index.php in order to pass along segment information as a standard query string:

http://example.com/index.php?/channel/joe/

This is necessary for only a few types of web servers to process ExpressionEngine’s URLs correctly. ExpressionEngine’s default is a much more search-engine friendly format:

http://example.com/index.php/channel/joe/

In rare circumstances, you may need to use this variable in conjunction with editing the $qtype variable in your main site index.php file.

Value Behavior
y Forces query strings
n Do not force query strings (default)

Example Usage:

$config['force_query_string'] = 'y';

Also found in CP: Settings ‣ Debugging & Output: Force URL query strings

forum_is_installed

Automatically enabled when the Discussion Forum module is installed.

Value Description
y Forum is installed (default)
n Forum is not installed

Example Usage:

$config['forum_is_installed'] = 'y';

forum_trigger

Sets the forum triggering word if the Discussion Forum module is installed.

Value Description
text Forum triggering word

Example Usage:

$config['forum_trigger'] = 'eerox';

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Discussion Forum Settings ‣ Edit: Forum Triggering Word

gmail_duplication_prevention

New in version 3.4.0.

Gmail email addresses can optionally include any number of .’s and they’re equivalent to the same address without .’s. For example example@gmail.com is the same as e.x.a.m.p.l.e@gmail.com. By default, ExpressionEngine prevents duplicate registration from the same address, but you can disable the prevention.

Value Behavior
y Prevent duplicate Gmail addresses from signing up (default)
n Do not prevent duplicate Gmail addresses

Example Usage:

$config['gmail_duplication_prevention'] = 'n';

gzip_output

Set the system to serve compressed front-end pages for faster load times as long as the requesting browser supports gzip compression, PHP’s zlib extension is loaded, and the web server is not already serving compressed pages. It’s a good idea to enable this setting in most production environments.

Note

This setting only controls whether ExpressionEngine itself serves up compressed front-end pages. If the web server is configured to serve compressed pages, this setting will have no effect.

Value Behavior
y Compress front-end pages if possible
n Do not compress front-end pages (default)

Example Usage:

$config['gzip_output'] = 'y';

Also found in CP: Settings ‣ Debugging & Output: Enable GZIP Output

hidden_template_indicator

Specify the character(s) that denote a hidden template when used to prefix a template name. The default is an underscore, e.g. _my_hidden_template.

Value Description
text Hidden template indicator characters

Example Usage:

$config['hidden_template_indicator'] = '.';

hidden_template_404

Set the system to show either a 404 page or the template group’s index page when a hidden template is directly loaded in a browser.

Value Behavior
y Show 404 (default)
n Show template group’s index page

Example Usage:

$config['hidden_template_404'] = 'y';

htaccess_path

Set the server path used by the Blacklist/Whitelist module to write rules to your .htaccess file.

Value Description
path Server path to .htaccess file.

Example Usage:

$config['htaccess_path'] = '/server/path/to/your/.htaccess/';

image_library_path

Set the path to the selected image library.

Note

If you choose ImageMagick or NetPBM as the image_resize_protocol, you must specify the server path to that image library.

Value Description
path Path to image library

Example Usage:

$config['image_library_path'] = '/usr/bin/';

Also found in CP: Settings ‣ Content & Design: Image Converter Path

image_resize_protocol

Specify the image manipulation library to use. You may need to contact your web host or sysadmin to determine which protocols are installed and available on your server.

Note

If you choose ImageMagick or NetPBM, you must set image_library_path in the configuration as well.

Value Description
gd GD library
gd2 GD2 library
imagemagick ImageMagick library
netpbm NetPBM library

Example Usage:

$config['image_resize_protocol'] = 'netpbm';

Also found in CP: Settings ‣ Content & Design: Image Resizing Protocol

include_seconds

Set the system to include seconds when time is displayed in the interface.

Value Behavior
y Include seconds
n Do not include seconds (default)

Example Usage:

$config['include_seconds'] = 'y';

ip2nation

Enable checks against the IP to Nation database.

Value Behavior
y Enable IP to Nation checks (default)
n Disable IP to Nation checks

Example Usage:

$config['ip2nation'] = 'n';

is_site_on

Specify whether the site should be viewable by the general public or taken offline. This can be helpful when performing maintenance on only one of several MSM sites.

Note

This setting will have no effect unless Multiple Site Manager is installed and multiple sites are enabled.

Note

When used in the main configuration file, config.php, this setting has the same effect as is_system_on since it will apply to all sites in the system.

Value Behavior
y Makes site available to everyone
n Makes site only available to Super Admins

Example Usage:

$config['is_site_on'] = 'n';

Also available for use in the site index file, index.php. Example Usage:

$assign_to_config['is_site_on'] = 'n';

Also found in CP: Settings ‣ General Settings: Is site on?

is_system_on

Specify whether the system’s front-end should be viewable by the general public or taken offline. This can be helpful when performing maintenance.

Value Behavior
y Makes system available to everyone
n Makes system only available to Super Admins

Example Usage:

$config['is_system_on'] = 'y';

Also found in CP: Settings ‣ General Settings: Is system on?

lockout_time

Set the length of time a throttled visitor will be locked out of the site.

Value Description
integer Length of lockout time in seconds

Example Usage:

$config['lockout_time'] = '30';

Also found in CP: Settings ‣ Access Throttling: Lockout Time

log_date_format

Set the timestamp format for all items added to the log file.

Value Description
string PHP date format

Example Usage:

$config['log_date_format'] = 'Y-m-d H:i:s';

log_email_console_msgs

Enable logging of all messages sent via the email console in the member profile pages.

Value Behavior
y Enable logging (default)
n Disable logging

Example Usage:

$config['log_email_console_msgs'] = 'n';

log_referrers

Enable referrer tracking. When enabled, one additional database access query will be performed for each page load so that the statistics can be generated.

Value Behavior
y Enable referrer tracking (default)
n Disable referrers tracking

Example Usage:

$config['log_referrers'] = 'n';

log_search_terms

Unused in first party files, this configuration item exists to allow backwards compatibility for any third party add-ons using it.

log_threshold

Note

In order to save anything to log files, you’ll need to create the /system/user/log/ directory and ensure it’s writable.

Set an error threshold to determine how much information is logged.

Value Behavior
0 Disables logging
1 Errors (including PHP errors)
2 Errors & debug messages
3 Errors, debug messages, & informational messages
4 All messages

Example Usage:

$config['log_threshold'] = '1';

mail_format

Set the default mail format selection for emails sent via the Communicate section.

Value Description
plain Plain Text
html HTML

Example Usage:

$config['mail_format'] = 'plain';

Also found in CP: Settings ‣ Outgoing Email: Default Mail Format

mail_protocol

Set the system’s method for sending email.

Value Behavior
mail PHP Mail
smtp SMTP
sendmail Sendmail

Example Usage:

$config['mail_protocol'] = 'smtp';

Also found in CP: Settings ‣ Outgoing Email: Email Protocol

max_logged_searches

Set the maximum number of most recent search terms to save in the search log.

Value Description
integer Maximum number of search terms to save

Example Usage:

$config['max_logged_searches'] = '500';

max_page_loads

Set the maximum number of times a visitor is allowed to load your web pages within a given time interval before being locked out. If you set this preference to 5 page loads within 10 seconds, a user can not browse more than 5 pages within a 10 second interval or the throttling feature will be triggered, locking them out for the given lockout time.

Value Description
integer Maximum number of page loads

Example Usage:

$config['max_page_loads'] = '10';

Also found in CP: Settings ‣ Access Throttling: Maximum Number of Page Loads

max_tmpl_revisions

Set the maximum number of template revisions to save if template revisions are enabled.

Value Description
integer Maximum number of template revisions to save

Example Usage:

$config['max_tmpl_revisions'] = '10';

Also found in CP: Settings ‣ Template Settings: Maximum Number of Revisions to Keep

max_url_segments

Set the maximum number of URL segments allows in requests made to your site.

Value Description
integer Maximum number of URL segments to allow (default is 12)

Example Usage:

$config['max_url_segments'] = '12';

mbr_notification_emails

List of email addresses to notify if notification is enabled for new member registrations.

Value Description
string Comma-delimited list of email addresses

Example Usage:

$config['mbr_notification_emails'] = '[email protected], [email protected]';

Also found in CP: Settings ‣ Members: Email address for notifications

memcached

If Memcached is the specified cache_driver, allows configuration of multiple Memcached servers to be used for cache storage.

Example Usage:

$config['memcached'] = array(
  array(
    'host' => '192.168.1.100',
    'port' => 11211,
    'weight' => 2,
  ),
  array(
    'host' => '192.168.1.101',
    'port' => 11211,
    'weight' => 1,
  )
);

member_theme

Set the default member profile theme.

Value Description
theme Name of theme directory found in themes/member

Example Usage:

$config['member_theme'] = 'default';

Also found in CP: Settings ‣ Members: Default Member Profile Theme

memberlist_order_by

Set the default sorting criteria for the member list.

Value Behavior
total_posts Sorts by Total Posts
screen_name Sorts by Screen Name
total_comments Sorts by Total Comments
total_entries Sorts by Total Entries
join_date Sorts by Join Date

Example Usage:

$config['memberlist_order_by'] = 'total_posts';

Also found in CP: Settings ‣ Members: Member List - Sort By

mime_whitelist_additions

With an array, add Mime Types to the whitelist.

Example Usage:

$config['mime_whitelist_additions'] = array(
  'image/vnd.adobe.photoshop'
);

mime_whitelist_member_exception

Specify member IDs to exclude from Mime Type whitelist restrictions.

Value Description
text Comma-delimited list of member IDs

Example Usage:

$config['mime_whitelist_member_exception'] = '3, 14, 83';

mime_whitelist_member_group_exception

Specify member group IDs to exclude from Mime Type whitelist restrictions.

Value Description
text Comma-delimited list of member group IDs

Example Usage:

$config['mime_whitelist_member_group_exception'] = '2, 5';

moblog_allow_nontextareas

Remove Moblog’s textarea-only restriction for Channel Fields.

Value Behavior
y Remove textarea-only restriction
n Allow only textarea fieldtypes (default)

Example Usage:

$config['moblog_allow_nontextareas'] = 'y';

memberlist_row_limit

Set the default number of rows for the member list to display.

Value Description
integer Default number of rows

Example Usage:

$config['memberlist_row_limit'] = '20';

Also found in CP: Settings ‣ Members: Member List - Rows

memberlist_sort_order

Set the default member list sort order.

Value Behavior
asc Sorts in ascending order
desc Sorts in descending order (default)

Example Usage:

$config['memberlist_sort_order'] = 'desc';

Also found in CP: Settings ‣ Members: Member List - Order

multiple_sites_enabled

Enable Multiple Site Manager.

Value Behavior
y Enable MSM
n Disable MSM

Example Usage:

$config['multiple_sites_enabled'] = 'y';

Also found in CP: Settings ‣ General Settings:

name_of_dictionary_file

Filename for the dictionary file. The official dictionary file is available for download. Must be used in combination with allow_dictionary_pw.

Value Description
filename Dictionary file found at system/user/config/

Example Usage:

$config['name_of_dictionary_file'] = 'dictionary.txt';

Also found in CP: Settings ‣ Security & Privacy: Name of Dictionary File

new_member_notification

Enables notification of a given notification list for new member registrations.

Value Behavior
y Enable notification
n Disable notification (default)

Example Usage:

$config['new_member_notification'] = 'n';

Also found in CP: Settings ‣ Members: Send new member notifications

new_posts_clear_caches

Set caches to clear when new entries are posted.

Note

If disabled, new entries will not appear until the cache expires.

Value Behavior
y New posts clear cache (default)
n New posts do not clear cache

Example Usage:

$config['new_posts_clear_caches'] = 'n';

Also found in CP: Settings ‣ Content & Design: Clear all caches when new entries are posted

new_version_check

Set ExpressionEngine to periodically check for available updates.

Value Behavior
y Enable version check (default)
n Disable version check

Example Usage:

$config['new_version_check'] = 'n';

Also found in CP: Settings ‣ General Settings: New Version Auto Check

newrelic_app_name

Sets the application name that is reported in the New Relic dashboard. If you’re using New Relic to monitor the performance of multiple ExpressionEngine installations, you’ll likely want those installations to show up separately in your New Relic dashboard.

Value Description
string Application name

Example Usage:

$config['newrelic_app_name'] = 'My Site';

Also available for use in the site index file, index.php, and the CP index file, admin.php. Example Usage:

$assign_to_config['newrelic_app_name'] = 'My Second Site';

newrelic_include_version_number

Whether or not to append the version number to the Application name in the New Relic dashboard.

New in version 2.9.1.

Value Behavior
y Append version number
n Do not append version number (default)

Example Usage:

$config['newrelic_include_version_number'] = 'y';

password_lockout

If enabled, the system will lock a member account if more than four invalid login attempts are made within a specified time period. This is designed to deter hackers from using collision attacks to guess poorly chosen passwords. The account remains locked for the duration of the password lockout time period.

Value Behavior
y Enable password lockouts (default)
n Disable password lockouts

Example Usage:

$config['password_lockout'] = 'n';

Also found in CP: Settings ‣ Security & Privacy: Enable Password Lockout

password_lockout_interval

Set the time period for measuring invalid login attempts and locking accounts.

Value Behavior
number Lockout interval, in minutes. (Decimals allowed.)

Example Usage:

$config['password_lockout_interval'] = '2.5';

Also found in CP: Settings ‣ Security & Privacy: Time Interval for Lockout

profile_trigger

Set the triggering word for the front-end members section. The default is “member”, and the word you set cannot be the name of an existing template group.

Value Description
text Profile triggering word

Example Usage:

$config['profile_trigger'] = 'accounts';

Also found in CP: Settings ‣ URL and Path Settings: Profile Triggering Word

proxy_ips

Whitelist of reverse proxy servers that may forward the visitor’s IP address.

Value Description
IP addresses Comma-delimited list of IP addresses

Example Usage:

$config['proxy_ips'] = '10.0.1.25, 10.0.1.26';

prv_msg_throttling_period

Set the length of time users must wait between sending private messages.

Note

Restriction does not apply to members in the Super Admin group.

Value Description
integer Throttling period in seconds (default is 30)

Example Usage:

$config['prv_msg_throttling_period'] = '60';

prv_msg_upload_path

Set the server path to the private messages uploads directory.

Value Description
path Full server path to writable private message uploads directory

Example Usage:

$config['prv_msg_upload_path'] = '/path/images/pm_attachments/';

Also found in CP: Settings ‣ Messages: Server Path for Attachment Upload Directory

prv_msg_waiting_period

Set the length of time members must wait after registration before being allowed to send private messages.

Note

Restriction does not apply to members in the Super Admin group.

Value Description
integer Wait time in hours (default is 1)

Example Usage:

$config['prv_msg_waiting_period'] = '4';

publish_page_title_focus

Specify whether the title field should gain focus when the publish page is loaded.

Value Behavior
y Title field gains focus when the publish page is loaded (default)
n Title field does not gain focus when the publish page is loaded

Example Usage:

$config['publish_page_title_focus'] = 'n';

pw_min_len

Set the minimum number of characters allowed for member passwords.

Value Description
integer Minimum character length

Example Usage:

$config['pw_min_len'] = '8';

Also found in CP: Settings ‣ Security & Privacy: Minimum Password Length

recount_batch_total

Set the batch size for recounting statistics.

Because the recounting of statistics can impose some load on your server, the recounting is performed in batches. This setting allows you to define how large each processing batch should be. For most servers, a value of 1000 works well. For high-performance or dedicated servers you can increase this number and if your server is low on resources you may need to lower the number.

Value Description
integer Batch size

Example Usage:

$config['recount_batch_total'] = '200';

redirect_method

Set the method the system uses for page redirection.

Value Behavior
redirect Use header('Location: http://www.example.com/'); (default)
refresh Use header('Refresh: 0;url=http://www.example.com/'); (Windows servers) (slower)

Example Usage:

$config['redirect_method'] = 'redirect';

Also found in CP: Settings ‣ Debugging & Output: Redirection Method

redis

If Redis is the specified cache_driver, allows configuration of a Redis server to be used for cache storage.

Example Usage:

$config['redis'] = array(
  'host' => '127.0.0.1',
  'password' => NULL,
  'port' => 6379,
  'timeout' => 0
);

relaxed_track_views

Allow Entry Views Tracking to work for ANY combination that results in only one entry being returned by the tag, including Channel query caching.

Value Behavior
y Enable relaxed Entry Views Tracking
n Disable relaxed Entry Views Tracking (default)

Example Usage:

$config['relaxed_track_views'] = 'y';

remove_close_all_button

Remove the button to close all HTML tags from the publish page and user-side HTML formatting buttons. Most browsers no longer need it.

Value Behavior
y Remove the close all button
n Display the close all button (default)

Example Usage:

$config['remove_close_all_button'] = 'y';

remove_unparsed_vars

Remove unparsed ExpressionEngine variables upon output when the debug has been set to 0.

Value Behavior
y Remove unparsed ExpressionEngine variables
n Leave unparsed ExpressionEngine variables untouched (default)

Example Usage:

$config['remove_unparsed_vars'] = 'y';

req_mbr_activation

Specify whether new member activation is automatic, requires email verification, or requires an administrator’s approval.

Value Behavior
none Automatically activate new member accounts
email Require email verification for new member accounts
manual Require administrator’s approval

Example Usage:

$config['req_mbr_activation'] = 'none';

Also found in CP: Settings ‣ Members: Require Member Account Activation

require_captcha

When enabled, site visitors will be required to pass a CAPTCHA to submit any front-end form, including Channel Form, comment forms, and member registrations.

Value Behavior
y Enable CAPTCHAS front-end forms
n Disable CAPTCHAS on front-end forms (default)

Also found in CP: Settings ‣ CAPTCHA: Require CAPTCHA

require_ip_for_login

Require users have a valid IP address and browser user agent when logging in. This helps prevent hackers from logging in using direct socket connections or trying to access the system with a masked IP address.

Value Behavior
y Require IP address and user agent for login (default)
n Do not require IP address and user agent for login

Example Usage:

$config['require_ip_for_login'] = 'n';

Also found in CP: Settings ‣ Security & Privacy: Require IP Address and User Agent for Login

require_ip_for_posting

Require users have a valid IP address and browser user agent when posting comments or Channel Form entries.

Value Behavior
y Require IP address and user agent for posting (default)
n Do not require IP address and user agent for posting

Example Usage:

$config['require_ip_for_posting'] = 'n';

Also found in CP: Settings ‣ Security & Privacy: Require IP Address and User Agent for posting

require_secure_passwords

Require users’ passwords to contain at least one uppercase character, one lowercase character, and one numeric character. Passwords that follow this basic formula are much more difficult to guess.

Value Behavior
y Require secure password (default)
n Do not require secure passwords

Example Usage:

$config['require_secure_passwords'] = 'n';

Also found in CP: Settings ‣ Security & Privacy: Require Secure Passwords

require_terms_of_service

Require new members to agree to your terms of service upon registration.

Value Behavior
y Require TOS (default)
n Do not require TOS

Example Usage:

$config['require_terms_of_service'] = 'n';

Also found in CP: Settings ‣ Members: Require Terms of Service

reserved_category_word

If use_category_name is enabled, specify a word to use in category URLs to indicate to the system that the following segment is the category URL title. For example, if the indicator is set to “category” and the category URL title is “blogging”:

http://example.com/index.php/site/category/blogging/

The word you set cannot be the name of an existing template group or template.

Value Description
text Category URL indicator

Example Usage:

$config['reserved_category_word'] = 'category';

Also found in CP: Settings ‣ URL and Path Settings: Category URL Indicator

rte_default_toolset_id

Set the default RTE toolset shown for any member that has not specifically chosen one in Rich Text Editor Preferences.

Value Description
toolset ID Default RTE toolset ID

Example Usage:

$config['rte_default_toolset_id'] = '2';

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Rich Text Editor Settings: Default Toolset

rte_enabled

If enabled, the Rich Text Editor will be applied to any Textarea (Rich Text) Channel Field. Otherwise, the field will appear as a normal textarea instead.

Value Behavior
y Enable RTE (default)
n Disable RTE and show normal textarea

Example Usage:

$config['rte_enabled'] = 'y';

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Rich Text Editor Settings: Enable Rich Text Editor

save_tmpl_files

Enable the saving of templates as files.

Value Behavior
y Templates are saved as files
n Templates are not saved as files (default)

Example Usage:

$config['save_tmpl_files'] = 'y';

Also found in CP: Settings ‣ Template Settings: Save Templates as Files

save_tmpl_revisions

Enable template revisions. Template history is saved when changes are made within the template editor.

Value Behavior
y Templates revisions are saved
n Templates revisions are not saved (default)

Example Usage:

$config['save_tmpl_revisions'] = 'y';

Also found in CP: Settings ‣ Template Settings: Save Template Revisions

sc_certificate_id

Specify the unique ID that is supplied by PayPal after providing them with a public certificate.

Value Description
string Certificate ID

Example Usage:

$config['sc_certificate_id'] = 'SX4DT7FDO1234';

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: ID Given to Public Certificate by PayPal

sc_encrypt_buttons

Enable encryption for PayPal purchase links and buttons created by Simple Commerce.

Important

Enabling this requires that your server have OpenSSL support compiled in PHP. Ask your server administrator for this information.

Note

Enabling this requires that you use a public certificate and private key. Please read the section on Encrypted Website Payments for full details. To be the most effective, you should set your PayPal account settings to only accept encrypted payments.

Value Behavior
y Enable encryption
n Disable encryption (default)

Example Usage:

$config['sc_encrypt_buttons'] = 'y';

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: Encrypt PayPal Buttons and Links?

sc_paypal_account

Specify the primary email address associated with the PayPal account processing payments for store purchases.

Value Description
string Primary PayPal email address

Example Usage:

$config['sc_paypal_account'] = '[email protected]';

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: PayPal Account

sc_paypal_certificate

Specify the path to the PayPal-provided certificate file. Please read the section on Encrypted Website Payments for full details.

Note

ExpressionEngine must have read access to this directory, but for security we highly recommended you use a location above web root so that the certificate and key files are not accessible via the web.

Value Description
path Full server path to PayPal certificate file

Example Usage:

$config['sc_paypal_certificate'] = "/path/to/paypal_certificate.pem";

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: PayPal Certificate Path

sc_private_key

Specify the path to the private key file. Please read the section on Encrypted Website Payments for full details.

Note

ExpressionEngine must have read access to this directory, but for security we highly recommended you use a location above web root so that the certificate and key files are not accessible via the web.

Value Description
path Full server path to private key file

Example Usage:

$config['sc_private_key'] = "/path/to/private_key.pem";

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: Private Key Path

sc_public_certificate

Specify the path to the public certificate file. Please read the section on Encrypted Website Payments for full details.

Note

ExpressionEngine must have read access to this directory, but for security we highly recommended you use a location above web root so that the certificate and key files are not accessible via the web.

Value Description
path Full server path to public certificate file

Example Usage:

$config['sc_public_certificate'] = "/path/to/public_certificate.pem";

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: Public Certificate Path

sc_temp_path

Specify the path to the temporarily stored encrypted files. Please read the section on Encrypted Website Payments for full details.

Note

ExpressionEngine must have read access to this directory, but for security we highly recommended you use a location above web root so that the certificate and key files are not accessible via the web.

Value Description
path Full server path to temporarily stored encrypted files

Example Usage:

$config['sc_temp_path'] = "/path/to/tmp";

Also found in CP: Developer Tools ‣ Add-On Manager ‣ Simple Commerce Settings: Temporary Encrypted Files Path

send_headers

Specify whether the system should automatically send HTTP page headers when it serves pages to a visitor.

Value Behavior
y System sends HTTP headers (default)
n System does not send HTTP headers

Example Usage:

$config['send_headers'] = 'n';

Also found in CP: Settings ‣ Debugging & Output: Generate HTTP Page Headers

server_offset

When a server’s clock is off and you are unable to correct it at the server level, use this preference to correct the disparity. Use a positive integer to correct a server clock that is too slow, and a negative integer to correct a server clock that is too fast.

Warning

This preference permanently changes the value of timestamps as they are being written to the database. Changing this setting later on will not undo the offset already applied to existing timestamps. Rather than using this setting, we strongly urge you to work with your web host or sysadmin to correct the inaccurate server clock. In almost all cases, that’s the best solution.

Value Behavior
integer Offsets the value of stored timestamps from given server time in minutes

Example Usage:

$config['server_offset'] = '-15';

show_profiler

Enable Output Profiler. When enabled, Super Admins will see benchmark results, SQL queries, and submitted form data displayed at the bottom of the browser window. Template debugging is included on the front end.

Value Behavior
y Enable output profiler
n Disable output profiler (default)

Example Usage:

$config['show_profiler'] = 'y';

Also found in CP: Settings ‣ Debugging & Output: Display Output Profiler

sig_allow_img_upload

Set whether members can upload their own signature image.

Value Behavior
y Allow members to upload their own signature image
n Do not allow members to upload their own signature image (default)

Example Usage:

$config['sig_allow_img_upload'] = 'y';

sig_img_max_height

Set the maximum height (in pixels) allowed for user-uploaded signature images.

Value Description
integer Max height (in pixels)

Example Usage:

$config['sig_img_max_height'] = '150';

sig_img_max_kb

Set the maximum file size (in kilobytes) allowed for user-uploaded signature images.

Value Description
integer Max file size (in kilobytes)

Example Usage:

$config['sig_img_max_kb'] = '50';

sig_img_max_width

Set the maximum width (in pixels) allowed for user-uploaded signature images.

Value Description
integer Max width (in pixels)

Example Usage:

$config['sig_img_max_width'] = '150';

sig_img_path

Set the server path to the signature images directory.

Value Description
path Full server path to writable signature images directory

Example Usage:

$config['sig_img_path'] = '/path/image/folder/';

sig_img_url

Set the URL to the signature images directory.

Value Description
URL URL to signature images directory

Example Usage:

$config['sig_img_url'] = 'http://example.com/images/signatures/';

sig_maxlength

Set the maximum number of characters allowed in a member’s signature.

Value Description
integer Max number of characters allowed in a signature

Example Usage:

$config['sig_maxlength'] = '500';

site_404

Set which template should be displayed when a visitor tries to access an invalid URL.

Value Description
template_group/template_name Template to show for 404s

Example Usage:

$config['site_404'] = 'site/404';

Also available for use in the site index file, index.php. Example Usage:

$assign_to_config['site_404'] = 'site/notfound';

Also found in CP: Settings ‣ Template Settings: 404 Page

site_index

Set the filename of the site index file. By default, this will be index.php, which is located in the base folder. You will only need to alter this setting if you have changed the filename or you want to remove index.php from your site’s URLs.

Value Description
filename Name of your sites index file

Example Usage:

$config['site_index'] = 'coolpage.php';

Also available for use in the site index file, index.php. Example Usage:

$assign_to_config['site_index'] = 'secondsite.php';

Also found in CP: Settings ‣ URL and Path Settings: Name of your site’s index page

site_name

Set the short name of the site. The site created upon installation is named default_site, so this is typically only helpful for additional sites in MSM-enabled installations.

Value Description
shortname Site short name

Available for use only in the site index file, index.php, and the CP index file, admin.php. Example Usage:

$assign_to_config['site_name'] = 'domain2_short_name';

Also found in CP: Developer Tools ‣ Site Manager ‣ Edit: Site Short Name

site_url

Set the full URL to the site’s web root.

Value Description
URL Full URL to the site’s web root

Example Usage:

$config['site_url'] = 'http://example.com';

Also available for use in the site index file, index.php. Example Usage:

$assign_to_config['site_url'] = 'http://domain2.com';

Also found in CP: Settings ‣ URL and Path Settings: URL to the root directory of your site

smart_static_parsing

When enabled, parsing of embedded templates that are not saved as static templates will still be parsed as if they were, if at all possible (i.e. they contain no PHP or ExpressionEngine tags). This setting is enabled by default.

Value Behavior
y Enable smart static parsing (default)
n Disable smart static parsing

Example Usage:

$config['smart_static_parsing'] = 'n';

smtp_password

If mail protocol is set to smtp, this sets the password the system will use to authenticate with the SMTP server. This information can be obtained from your email provider.

Value Description
password SMTP password

Example Usage:

$config['smtp_password'] = 'ic6XpWJnv4ip';

Also found in CP: Settings ‣ Outgoing Email: SMTP Password

smtp_port

If mail protocol is set to smtp, this sets the mail server port. This information can be obtained from your email provider.

Value Description
port SMTP port (default is 25)

Example Usage:

$config['smtp_port'] = '2525';

smtp_server

If mail protocol is set to smtp, this sets the mail server hostname. This information can be obtained from your email provider.

Note

You can connect to SSL servers as long as OpenSSL is installed on the server hosting ExpressionEngine. Please check with your server administrator to confirm.

Value Description
hostname SMTP server hostname

Example Usage:

$config['smtp_server'] = 'mail.example.com';

Also found in CP: Settings ‣ Outgoing Email: SMTP Server Address

smtp_username

If mail protocol is set to smtp, this sets the username the system will use to authenticate with the SMTP server. This information can be obtained from your email provider.

Value Description
username SMTP username

Example Usage:

$config['smtp_username'] = '[email protected]';

Also found in CP: Settings ‣ Outgoing Email: SMTP Username

spellcheck_language_code

Set the language used by spell check.

Value Description
language code 2 letter ISO 639 language code (e.g. en, es, de)

Example Usage:

$config['spellcheck_language_code'] = 'en';

strict_urls

Set whether the system will allow templates from your default template group to be directly accessed in the first URL segment. If enabled, the system will require that the first URL segment be a valid template group only or a 404 page will be shown.

Value Behavior
y Enable Strict URLs (default)
n Disable Strict URLs

Example Usage:

$config['strict_urls'] = 'n';

Also found in CP: Settings ‣ Template Settings: Enable Strict URLs

template

Sets the default template. Must be used with template_group, and the two overrides together set the template group and template shown on the front-end when the site is loaded without anything in the URL segments.

Value Description
template Template name

Example Usage:

$config['template'] = 'index';

Also available for use in the site index file, index.php. Example Usage:

$assign_to_config['template'] = 'index';

Also found in CP: Developer Tools ‣ Template Manager ‣ New/Edit: Make the index template in this group your site’s home page?

template_group

Sets the default template group. Must be used with template, and the two overrides together set the template group and template shown on the front-end when the site is loaded without anything in the URL segments.

Value Description
template group Template group name

Example Usage:

$config['template_group'] = 'about';

Also available for use in the site index file, index.php. Example Usage:

$assign_to_config['template_group'] = 'site_2';

Also found in CP: Developer Tools ‣ Template Manager ‣ New/Edit: Make the index template in this group your site’s home page?

theme_folder_path

Set the server path to the themes directory.

Value Description
path Server path to the themes directory

Example Usage:

$config['theme_folder_path'] = '/home/usr/domain.com/public_html/themes/';

Also found in CP: Settings ‣ URL and Path Settings: Theme Folder Path

theme_folder_url

Set the URL to the themes directory.

Value Description
URL URL to the themes directory

Example Usage:

$config['theme_folder_url'] = 'http://example.com/themes/';

Also found in CP: Settings ‣ URL and Path Settings: URL to your “themes” folder

time_format

Set default time format to either 12- or 24-hour time format.

Value Description
12 12-hour time format
24 24-hour time format

Example Usage:

$config['time_format'] = '24';

time_interval

Set the time interval for measuring the number of page loads that will trigger throttling. If you set this preference to 5 page loads within 10 seconds, a user can not browse more than 5 pages within a 10 second interval or the throttling feature will be triggered, locking them out for the given lockout time.

Value Description
integer Time interval in seconds

Example Usage:

$config['max_page_loads'] = '10';

Also found in CP: Settings ‣ Access Throttling: Time Interval

un_min_len

Set the minimum number of characters allowed for member usernames.

Value Description
integer Minimum character length

Example Usage:

$config['un_min_len'] = '5';

Also found in CP: Settings ‣ Security & Privacy: Minimum Username Length

upload_file_name_blacklist

With an array, add a case insensitive list of file names that cannot be uploaded.

Example Usage:

$config['upload_file_name_blacklist'] = array(
  'logo.png',
);

upload_preferences

With an associative array, specify upload destination paths, URLs, and titles.

Note

Each key in the array is optional and only overrides existing values in the database. New upload destinations cannot be created using this config override.

Example Usage:

$config['upload_preferences'] = array(
    1 => array(                                                            // ID of upload destination
        'name'        => 'Staging Image Uploads',                          // Display name in control panel
        'server_path' => '/home/user/example.com/staging/images/uploads/', // Server path to upload directory
        'url'         => 'http://staging.example.com/images/uploads/'      // URL of upload directory
    )
);

Also found in CP: Files: Edit Upload Destination

uri_protocol

Specify which server global should be used to retrieve the URI string. The default setting of AUTO works for most servers. Learn more about these server globals.

Value Behavior
AUTO Default value, auto detects
PATH_INFO Uses the PATH_INFO
QUERY_STRING Uses the QUERY_STRING
REQUEST_URI Uses the REQUEST_URI
ORIG_PATH_INFO Uses the ORIG_PATH_INFO

Example Usage:

$config['uri_protocol'] = 'PATH_INFO';

use_category_name

Set the system to generate category links with category URL titles rather than the numeric category indicator (e.g. /C12/).

Value Behavior
y Enable category links with category URL titles
n Disable category links with category URL titles (default)

Example Usage:

$config['use_category_name'] = 'y';

Also found in CP: Settings ‣ URL and Path Settings: Use Category URL Titles In Links?

use_forum_url

Set the system to use the forum URL specified in the forum board preferences rather than the the main site URL to form the forum’s URL.

Value Behavior
y Use forum URL from forum board preferences
n Use main site URL (default)

Example Usage:

$config['use_forum_url'] = 'y';

use_newrelic

When enabled, New Relic will add Real User Monitoring JavaScript to all ExpressionEngine-powered pages on both the front-end and in the CP.

Value Behavior
y Enable New Relic RUM JavaScript (default)
n Disable New Relic RUM JavaScript

Example Usage:

$config['use_newrelic'] = 'y';

webmaster_email

Set the site’s return email address for auto-generated emails.

Value Description
email Return email address for auto-generated emails

Example Usage:

$config['webmaster_email'] = '[email protected]';

Also found in CP: Settings ‣ Outgoing Email: Return email address for auto-generated emails

webmaster_name

Set the From name for auto-generated emails.

Value Description
string The From name for auto-generated emails.

Example Usage:

$config['webmaster_name'] = 'Your Favorite Website';

Also found in CP: Settings ‣ Outgoing Email: Webmaster or site name for auto-generated emails

website_session_type

Specify how sessions are handled on the front-end of the site.

Value Behavior
c Use cookies only (default)
s Use session ID only
cs Use both cookies and session ID

Example Usage:

$config['website_session_type'] = 'c';

Also found in CP: Settings ‣ Security & Privacy: Website Session Type

Changed in version 2.8: Variable was changed from user_session_type to website_session_type.

word_separator

Specify the character the system will use to replace spaces when auto-generating a URL title based on the entry’s title.

Value Behavior
dash Use a dash (-) as the word separator (default)
underscore Use an underscore (_) as the word separator

Example Usage:

$config['word_separator'] = 'dash';

Also found in CP: Settings ‣ URL and Path Settings: Word Separator for URL Titles

x_frame_options

Set the X-Frame-Options header to control where your site can be included in frames or iframes. This setting only affects the frontend of the site. The control panel will always use the default “SAMEORIGIN”.

Value Description
NONE Disable the header, allow framing from anywhere (not recommended)
SAMEORIGIN Only allow framing from the site itself (default)
DENY Do not allow framing of any sort

xml_lang

Set the default XML language, typically used when outputting RSS feeds. Feeds will identify themselves as having the language specified here.

Value Description
language code 2 letter ISO 639 language code (e.g. en, es, de)

Example Usage:

$config['xml_lang'] = 'en';

xss_clean_member_exception

Specify member IDs to exclude from XSS cleaning.

Value Description
text Comma-delimited list of member IDs

Example Usage:

$config['xss_clean_member_exception'] = '3, 14, 83';

xss_clean_member_group_exception

Specify member group IDs to exclude from XSS cleaning.

Value Description
text Comma-delimited list of member group IDs

Example Usage:

$config['xss_clean_member_group_exception'] = '2, 5';