GeneralConfig

Type
Class
Namespace
craft\config
Inherits
craft\config\GeneralConfig » yii\base\BaseObject
Implements
yii\base\Configurable
Since
3.0

General config class

View source

Public Properties

PropertyDescription
$actionTriggerstring – The URI segment Craft should look for when determining if the current request should first be routed to a controller action.
$activateAccountSuccessPathmixed – The URI Craft should use upon successfully activating a user.
$addTrailingSlashesToUrlsboolean – Determines whether auto-generated URLs should have trailing slashes.
$aliasesarray – Any custom Yii [aliases](http://www.
$allowSimilarTagsboolean – If this is set to true, then a tag name of "Proteines" will also match a tag name of "Protéines".
$allowUpdatesboolean – Whether to allow Craft and plugin updates in the Control Panel, and plugin installation in the Plugin Store.
$allowUppercaseInSlugboolean – Whether or not to allow uppercase letters in the slug.
$allowedFileExtensionsstring[] – List of file extensions that Craft will allow when a user is uploading files.
$autoLoginAfterAccountActivationboolean – If set to true, will automatically log the user in after successful account activation.
$backupCommandstring, null – Craft will use the command line libraries pg_dump and mysqldump for backing up a database by default.
$backupOnUpdateboolean – Whether Craft should create a database backup before running new migrations.
$baseCpUrlstring, null – Sets the base URL to the CP that Craft should use when generating CP-facing URLs.
$blowfishHashCostinteger – The higher the cost value, the longer it takes to generate a password hash and to verify against it.
$cacheDurationmixed – The default length of time Craft will store data, RSS feed, and template caches.
$cacheElementQueriesboolean – Whether Craft should cache element queries that fall inside {% cache %} tags.
$convertFilenamesToAsciiboolean – If set to true, any uploaded file names will have multi-byte characters (Chinese, Japanese, etc.
$cooldownDurationmixed – The amount of time a user must wait before re-attempting to log in after their account is locked due to too many failed login attempts.
$cpTriggerstring – The URI segment Craft should look for when determining if the current request should route to the CP rather than the front-end website.
$csrfTokenNamestring – The name of CSRF token used for CSRF validation if $enableCsrfProtection is set to true.
$customAsciiCharMappingsarray – Any custom ASCII character mappings.
$defaultCookieDomainstring – Used to set a custom domain on any cookies that Craft creates.
$defaultCpLanguagestring, null – Defines the default language the Control Panel should get set to if the logged-in user doesn't have a preferred language set.
$defaultDirModemixed – The default permission to be set for newly generated directories.
$defaultFileModeinteger, null – The default permission to be set for newly generated files.
$defaultImageQualityinteger – The quality level Craft will use when saving JPG and PNG files.
$defaultSearchTermOptionsarray – The default options that should be applied to each search term.
$defaultTemplateExtensionsstring[] – The template file extensions Craft will look for when matching a template path to a file on the front end.
$defaultTokenDurationmixed – The default amount of time tokens can be used before expiring.
$defaultWeekStartDayinteger – The default day that new users should have set as their “Week Start Day”.
$deferPublicRegistrationPasswordboolean – By default, Craft will require a 'password' field to be submitted on front-end, public user registrations.
$devModeboolean – Determines whether the system is in Dev Mode or not.
$elevatedSessionDurationmixed – The amount of time a user’s elevated session will last, which is required for some sensitive actions (e.g. user group/permission assignment).
$enableCsrfCookieboolean – Whether to use a cookie to persist the CSRF token if $enableCsrfProtection is enabled.
$enableCsrfProtectionboolean – Whether to enable CSRF protection via hidden form inputs for all forms submitted via Craft.
$enableTemplateCachingboolean – Whether to enable Craft's template {% cache %} tag on a global basis.
$errorTemplatePrefixstring – The prefix that should be prepended to HTTP error status codes when determining the path to look for an error’s template.
$extraAllowedFileExtensionsstring[], null – List of file extensions that will be merged into the $allowedFileExtensions config setting.
$filenameWordSeparatorstring, boolean – The string to use to separate words when uploading Assets.
$generateTransformsBeforePageLoadboolean – Whether transforms be generated before loading the page.
$imageDrivermixed – By default Craft will auto-detect if Imagick is installed and fallback to GD if not.
$indexTemplateFilenamesstring[] – The template filenames Craft will look for within a directory to represent the directory’s “index” template when matching a template path to a file on the front end.
$invalidLoginWindowDurationmixed – The amount of time to track invalid login attempts for a user, for determining if Craft should lock an account.
$invalidUserTokenPathmixed – The URI Craft should redirect to when user token validation fails.
$ipHeadersstring[], null – List of headers where proxies store the real client IP.
$isSystemOnboolean, null – Whether the site is currently online or not.
$limitAutoSlugsToAsciiboolean – If set to true, the auto-generated slugs for an entry will strip any multi-byte characters (Chinese, Japanese, etc.
$loginPathmixed – The URI Craft should use for user login.
$logoutPathmixed – The URI Craft should use for user logout.
$maxCachedCloudImageSizeinteger – The maximum dimension size to use when caching images from external sources to use in transforms.
$maxInvalidLoginsinteger – The number of invalid login attempts Craft will allow within the specified duration before the account gets locked.
$maxSlugIncrementinteger – The highest number Craft will tack onto a slug in order to make it unique before giving up and throwing an error.
$maxUploadFileSizeinteger, string – The maximum upload file size allowed.
$omitScriptNameInUrlsboolean – Whether generated URLs should omit 'index.
$optimizeImageFilesizeboolean – If set to true and Imagick is used, Craft will take advantage of Imagick's advanced options to reduce the final image size without losing quality significantly.
$pageTriggerstring – The string preceding a number which Craft will look for when determining if the current request is for a particular page in a paginated list of pages.
$pathParamstring – The query string param that Craft will check when determining the request's path.
$phpMaxMemoryLimitstring – The maximum amount of memory Craft will try to reserve during memory intensive operations such as zipping, unzipping and updating.
$phpSessionNamestring – The name of the PHP session cookie.
$postCpLoginRedirectmixed – The path that users should be redirected to after logging in from the Control Panel.
$postLoginRedirectmixed – The path that users should be redirected to after logging in from the front-end site.
$postLogoutRedirectmixed – The path that users should be redirected to after logging out from the front-end site.
$preserveCmykColorspaceboolean – Whether CMYK should be preserved as the colorspace when when manipulating images.
$preserveExifDataboolean – Whether the EXIF data should be preserved when manipulating images.
$preserveImageColorProfilesboolean – Whether the embedded Image Color Profile (ICC) should be preserved when manipulating images.
$preventUserEnumerationboolean – When set to false and you go through the "forgot password" workflow on the control panel login page, for example, you get distinct messages saying if the username/email didn't exist or the email was successfully sent and to check your email for further instructions.
$privateTemplateTriggerstring – The template path segment prefix that should be used to identify "private" templates -- templates that aren't directly accessible via a matching URL.
$purgePendingUsersDurationmixed – The amount of time to wait before Craft purges pending users from the system that have not activated.
$rememberUsernameDurationmixed – The amount of time Craft will remember a username and pre-populate it on the CP login page.
$rememberedUserSessionDurationmixed – The amount of time a user stays logged if “Remember Me” is checked on the login page.
$requireMatchingUserAgentForSessionboolean – Whether Craft should require a matching user agent string when restoring a user session from a cookie.
$requireUserAgentAndIpForSessionboolean – Whether Craft should require the existence of a user agent string and IP address when creating a new user session.
$resourceBasePathstring – The path to the root directory that should store published CP resources.
$resourceBaseUrlstring – The URL to the root directory that should store published CP resources.
$restoreCommandstring, null – Craft will use the command line libraries psql and mysql for restoring a database by default.
$rotateImagesOnUploadByExifDataboolean – Whether Craft should rotate images according to their EXIF data on upload.
$runQueueAutomaticallyboolean – Whether Craft should run pending queue jobs automatically over HTTP requests.
$sanitizeSvgUploadsboolean – Whether Craft should sanitize uploaded SVG files and strip out potential malicious looking content.
$secureHeadersarray, null – Lists of headers that are, by default, subject to the trusted host configuration.
$secureProtocolHeadersarray, null – List of headers to check for determining whether the connection is made via HTTPS.
$securityKeystring – A private, random, cryptographically-secure key that is used for hashing and encrypting data in craft\services\Security.
$sendPoweredByHeaderboolean – Whether the X-Powered-By header should be sent on each request, helping clients identify that the site is powered by Craft.
$setPasswordPathmixed – The password-reset template path.
$setPasswordSuccessPathmixed – The URI Craft should use upon successfully setting a users’s password.
$showBetaUpdatesboolean – Whether or not to show beta Craft updates from the updates page in the control panel.
$siteNamestring, string[] – The site name(s).
$siteUrlstring, string[] – The base URL to the site(s).
$slugWordSeparatorstring – The character(s) that should be used to separate words in slugs.
$suppressTemplateErrorsboolean – Controls whether or not to show or hide any Twig template runtime errors that occur on the site in the browser.
$testToEmailAddressstring, array, null – Configures Craft to send all system emails to a single email address, or an array of email addresses for testing purposes.
$timezonestring, null – The timezone of the site.
$tokenParamstring – The name of the 'token' query string parameter.
$transformGifsboolean – Tells Craft whether GIF files should be transformed or cleansed.
$translationDebugOutputboolean – Tells Craft whether to surround all translatable strings with “@” symbols, to help find any strings that are not being run through Craft::t() or the
$trustedHostsarray – The configuration for trusted security-related headers.
$useCompressedJsboolean – Tells Craft whether to use compressed JavaScript files whenever possible, to cut down on page load times.
$useEmailAsUsernameboolean – If set to true, Craft will use a user's email address in place of their username and remove username UI from the control panel.
$useFileLocksboolean, null – Whether to grab an exclusive lock on a file when writing to it by using the LOCK_EX flag.
$usePathInfoboolean – Whether Craft should specify the path using PATH_INFO or as a query string parameter when generating URLs.
$useSecureCookiesboolean, string – Determines whether Craft will set the "secure" flag when saving cookies when using Craft::cookieConfig() to create a cookie.
$useSslOnTokenizedUrlsboolean, string – Determines what protocol/schema Craft will use when generating tokenized URLs.
$useXSendFileboolean – Whether Craft should use XSendFile to serve files when possible.
$userSessionDurationmixed – The amount of time a user stays logged in.
$verificationCodeDurationmixed – The amount of time a user verification code can be used before expiring.

$actionTrigger

Type
string

The URI segment Craft should look for when determining if the current request should first be routed to a controller action.

View source

Signature

public string $actionTrigger = 'actions'

$activateAccountSuccessPath

Type
mixed
Access
Read-only

The URI Craft should use upon successfully activating a user. Note that this only affects front-end site requests. See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getActivateAccountSuccessPath()

View source

Signature

public string getActivateAccountSuccessPath ( \craft\config\string $siteHandle = null )

$addTrailingSlashesToUrls

Type
boolean

Determines whether auto-generated URLs should have trailing slashes.

View source

Signature

public boolean $addTrailingSlashesToUrls = false

$aliases

Type
array

Any custom Yii aliases that should be defined for every request.

View source

Signature

public array $aliases = []

$allowSimilarTags

Type
boolean

If this is set to true, then a tag name of "Proteines" will also match a tag name of "Protéines". Otherwise, they are treated as the same tag. Note that this

View source

Signature

public boolean $allowSimilarTags = false

$allowUpdates

Type
boolean

Whether to allow Craft and plugin updates in the Control Panel, and plugin installation in the Plugin Store.

View source

Signature

public boolean $allowUpdates = true

$allowUppercaseInSlug

Type
boolean

Whether or not to allow uppercase letters in the slug.

View source

Signature

public boolean $allowUppercaseInSlug = false

$allowedFileExtensions

Type
string[]

List of file extensions that Craft will allow when a user is uploading files.

See also $extraAllowedFileExtensions

View source

Signature

public string[] $allowedFileExtensions = ['7z', 'aiff', 'asf', 'avi', 'bmp', 'csv', 'doc', 'docx', 'fla', 'flv', 'gif', 'gz', 'gzip', 'htm', 'html', 'jp2', 'jpeg', 'jpg', 'jpx', 'js', 'm2t', 'mid', 'mov', 'mp3', 'mp4', 'm4a', 'm4v', 'mpc', 'mpeg', 'mpg', 'ods', 'odt', 'ogg', 'ogv', 'pdf', 'png', 'potx', 'pps', 'ppsm', 'ppsx', 'ppt', 'pptm', 'pptx', 'ppz', 'pxd', 'qt', 'ram', 'rar', 'rm', 'rmi', 'rmvb', 'rtf', 'sdc', 'sitd', 'svg', 'swf', 'sxc', 'sxw', 'tar', 'tgz', 'tif', 'tiff', 'txt', 'vob', 'vsd', 'wav', 'webm', 'wma', 'wmv', 'xls', 'xlsx', 'zip']

$autoLoginAfterAccountActivation

Type
boolean

If set to true, will automatically log the user in after successful account activation.

View source

Signature

public boolean $autoLoginAfterAccountActivation = false

$backupCommand

Type
string, null

Craft will use the command line libraries pg_dump and mysqldump for backing up a database by default. It assumes that those libraries are in the $PATH variable for the user the web server is running as. If you want to use some other library, or want to specify an absolute path to them, or want to specify different parameters than the default, or you want to implement some other backup solution, you can override that behavior here. There are several tokens you can use that Craft will swap out at runtime: * {path} - Swapped with the dynamically generated backup file path. * {port} - Swapped with the current database port. * {server} - Swapped with the current database host name. * {user} - Swapped with the user to connect to the database. * {database} - Swapped with the current database name. * {schema} - Swapped with the current database schema (if any). This can also be set to false to disable database backups completely.

View source

Signature

public string, null $backupCommand = null

$backupOnUpdate

Type
boolean
Access
Read-only

Whether Craft should create a database backup before running new migrations.

See also $backupCommand

View source

Signature

public boolean getBackupOnUpdate ( )

$baseCpUrl

Type
string, null

Sets the base URL to the CP that Craft should use when generating CP-facing URLs. This will be determined automatically if left blank.

View source

Signature

public string, null $baseCpUrl = null

$blowfishHashCost

Type
integer

The higher the cost value, the longer it takes to generate a password hash and to verify against it. Therefore, higher cost slows down a brute-force attack. For best protection against brute force attacks, set it to the highest value that is tolerable on production servers. The time taken to compute the hash doubles for every increment by one for this value. For example, if the hash takes 1 second to compute when the value is 14 then the compute time varies as 2^(value - 14) seconds.

View source

Signature

public integer $blowfishHashCost = 13

$cacheDuration

Type
mixed

The default length of time Craft will store data, RSS feed, and template caches.

If set to 0, data and RSS feed caches will be stored indefinitely; template caches will be stored for one year. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $cacheDuration = 86400

$cacheElementQueries

Type
boolean

Whether Craft should cache element queries that fall inside {% cache %} tags.

View source

Signature

public boolean $cacheElementQueries = true

$convertFilenamesToAscii

Type
boolean

If set to true, any uploaded file names will have multi-byte characters (Chinese, Japanese, etc.) stripped and any high-ASCII characters converted to their low ASCII counterparts (i.e. ñ → n).

View source

Signature

public boolean $convertFilenamesToAscii = false

$cooldownDuration

Type
mixed

The amount of time a user must wait before re-attempting to log in after their account is locked due to too many failed login attempts. Set to 0 to keep the account locked indefinitely, requiring an admin to manually unlock the account. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $cooldownDuration = 300

$cpTrigger

Type
string

The URI segment Craft should look for when determining if the current request should route to the CP rather than the front-end website.

View source

Signature

public string $cpTrigger = 'admin'

$csrfTokenName

Type
string

The name of CSRF token used for CSRF validation if $enableCsrfProtection is set to true.

See also $enableCsrfProtection

View source

Signature

public string $csrfTokenName = 'CRAFT_CSRF_TOKEN'

$customAsciiCharMappings

DEPRECATED

Deprecated in 3.0.10. Any corrections to ASCII char mappings should be submitted to Stringy.

Type
array

Any custom ASCII character mappings.

This array is merged into the default one in StringHelper::asciiCharMap(). The key is the ASCII character to be used for the replacement and the value is an array of non-ASCII characters that the key maps to.

View source

Signature

public array $customAsciiCharMappings = []

Example

$defaultCookieDomain

Type
string

Used to set a custom domain on any cookies that Craft creates. Defaults to an empty string, which leaves it up to the browser to determine which domain to use (almost always the current). If you want the cookies to work for all subdomains, for example, you could set this to '.domain.com'.

View source

Signature

public string $defaultCookieDomain = ''

$defaultCpLanguage

Type
string, null

Defines the default language the Control Panel should get set to if the logged-in user doesn't have a preferred language set.

View source

Signature

public string, null $defaultCpLanguage = null

$defaultDirMode

Type
mixed

The default permission to be set for newly generated directories.

If set to null, the permission will be determined by the current environment.

View source

Signature

public mixed $defaultDirMode = 0775

$defaultFileMode

Type
integer, null

The default permission to be set for newly generated files.

If set to null, the permission will be determined by the current environment.

View source

Signature

public integer, null $defaultFileMode = null

$defaultImageQuality

Type
integer

The quality level Craft will use when saving JPG and PNG files. Ranges from 0 (worst quality, smallest file) to 100 (best quality, biggest file).

View source

Signature

public integer $defaultImageQuality = 82

$defaultSearchTermOptions

Type
array

The default options that should be applied to each search term.

Options include:

  • attribute – The attribute that the term should apply to (e.g. 'title'), if any. (null by default)
  • exact – Whether the term must be an exact match (only applies if attribute is set). (false by default)
  • exclude – Whether search results should exclude records with this term. (false by default)
  • subLeft – Whether to include keywords that contain the term, with additional characters before it. (false by default)
  • subRight – Whether to include keywords that contain the term, with additional characters after it. (true by default)

View source

Signature

public array $defaultSearchTermOptions = []

$defaultTemplateExtensions

Type
string[]

The template file extensions Craft will look for when matching a template path to a file on the front end.

View source

Signature

public string[] $defaultTemplateExtensions = ['html', 'twig']

$defaultTokenDuration

Type
mixed

The default amount of time tokens can be used before expiring.

See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $defaultTokenDuration = 86400

$defaultWeekStartDay

Type
integer

The default day that new users should have set as their “Week Start Day”.

This should be set to an int from 0 to 6 where:

  • 0 represents Sunday
  • 1 represents Monday
  • 2 represents Tuesday
  • 3 represents Wednesday
  • 4 represents Thursday
  • 5 represents Friday
  • 6 represents Saturday

View source

Signature

public integer $defaultWeekStartDay = 0

$deferPublicRegistrationPassword

Type
boolean

By default, Craft will require a 'password' field to be submitted on front-end, public user registrations. Setting this to true will no longer require it on the initial registration form. If you have email verification enabled, the will set their password once they've clicked on the verification link in the email. If you don't, the only way they can set their password is to go through your "forgot password" workflow.

View source

Signature

public boolean $deferPublicRegistrationPassword = false

$devMode

Type
boolean

Determines whether the system is in Dev Mode or not.

View source

Signature

public boolean $devMode = false

$elevatedSessionDuration

Type
mixed

The amount of time a user’s elevated session will last, which is required for some sensitive actions (e.g. user group/permission assignment).

Set to 0 to disable elevated session support. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $elevatedSessionDuration = 300

$enableCsrfCookie

Type
boolean

Whether to use a cookie to persist the CSRF token if $enableCsrfProtection is enabled. If false, the CSRF token will be stored in session under the 'csrfTokenName' config setting name. Note that while storing CSRF tokens in session increases security, it requires starting a session for every page that a CSRF token is need, which may degrade site performance.

See also $enableCsrfProtection

View source

Signature

public boolean $enableCsrfCookie = true

$enableCsrfProtection

Type
boolean

Whether to enable CSRF protection via hidden form inputs for all forms submitted via Craft.

See also:

View source

Signature

public boolean $enableCsrfProtection = true

$enableTemplateCaching

Type
boolean

Whether to enable Craft's template {% cache %} tag on a global basis.

See also http://craftcms.com/docs/templating/cache

View source

Signature

public boolean $enableTemplateCaching = true

$errorTemplatePrefix

Type
string

The prefix that should be prepended to HTTP error status codes when determining the path to look for an error’s template. If set to '_', then your site’s 404 template would live at templates/_404.html, for example.

View source

Signature

public string $errorTemplatePrefix = ''

$extraAllowedFileExtensions

Type
string[], null

List of file extensions that will be merged into the $allowedFileExtensions config setting.

See also $allowedFileExtensions

View source

Signature

public string[], null $extraAllowedFileExtensions = null

$filenameWordSeparator

Type
string, boolean

The string to use to separate words when uploading Assets. If set to false, spaces will be left alone.

View source

Signature

public string, boolean $filenameWordSeparator = '-'

$generateTransformsBeforePageLoad

Type
boolean

Whether transforms be generated before loading the page.

View source

Signature

public boolean $generateTransformsBeforePageLoad = false

$imageDriver

Type
mixed

By default Craft will auto-detect if Imagick is installed and fallback to GD if not. You can explicitly set either 'imagick' or 'gd' here to override that behavior.

View source

Signature

public mixed $imageDriver = self::IMAGE_DRIVER_AUTO

$indexTemplateFilenames

Type
string[]

The template filenames Craft will look for within a directory to represent the directory’s “index” template when matching a template path to a file on the front end.

View source

Signature

public string[] $indexTemplateFilenames = ['index']

$invalidLoginWindowDuration

Type
mixed

The amount of time to track invalid login attempts for a user, for determining if Craft should lock an account.

See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $invalidLoginWindowDuration = 3600

$invalidUserTokenPath

Type
mixed
Access
Read-only

The URI Craft should redirect to when user token validation fails. A token is used on things like setting and resetting user account passwords. Note that this only affects front-end site requests. See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getInvalidUserTokenPath()

View source

Signature

public string getInvalidUserTokenPath ( \craft\config\string $siteHandle = null )

$ipHeaders

Type
string[], null

List of headers where proxies store the real client IP.

See yii\web\Request::$ipHeaders for more details. If not set, the default craft\web\Request::$ipHeaders value will be used.

View source

Signature

public string[], null $ipHeaders = null

$isSystemOn

Type
boolean, null

Whether the site is currently online or not. If set to true or false, it will take precedence over the System Status setting in Settings → General.

View source

Signature

public boolean, null $isSystemOn = null

$limitAutoSlugsToAscii

Type
boolean

If set to true, the auto-generated slugs for an entry will strip any multi-byte characters (Chinese, Japanese, etc.) and attempt to convert any high-ASCII to their low ASCII counterparts (i.e. ñ → n). Note that this only affects the JavaScript auto-generated slugs and they still can be manually entered in the slug.

View source

Signature

public boolean $limitAutoSlugsToAscii = false

$loginPath

Type
mixed
Access
Read-only

The URI Craft should use for user login. Note that this only affects front-end site requests.

See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getLoginPath()

View source

Signature

public string getLoginPath ( \craft\config\string $siteHandle = null )

$logoutPath

Type
mixed
Access
Read-only

The URI Craft should use for user logout. Note that this only affects front-end site requests.

See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getLogoutPath()

View source

Signature

public string getLogoutPath ( \craft\config\string $siteHandle = null )

$maxCachedCloudImageSize

Type
integer

The maximum dimension size to use when caching images from external sources to use in transforms. Set to 0 to never cache them.

View source

Signature

public integer $maxCachedCloudImageSize = 2000

$maxInvalidLogins

Type
integer

The number of invalid login attempts Craft will allow within the specified duration before the account gets locked.

View source

Signature

public integer $maxInvalidLogins = 5

$maxSlugIncrement

Type
integer

The highest number Craft will tack onto a slug in order to make it unique before giving up and throwing an error.

View source

Signature

public integer $maxSlugIncrement = 100

$maxUploadFileSize

Type
integer, string

The maximum upload file size allowed.

See craft\helpers\ConfigHelper::sizeInBytes() for a list of supported value types.

View source

Signature

public integer, string $maxUploadFileSize = 16777216

$omitScriptNameInUrls

Type
boolean

Whether generated URLs should omit 'index.php', e.g. http://domain.com/path as opposed to showing it, e.g. http://domain.com/index.php/path This can only be possible if your server is configured to redirect would-be 404's to index.php, for example, with the redirect found in the 'htaccess' file that came with Craft: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule (.+) /index.php?p=$1 [QSA,L]

View source

Signature

public boolean $omitScriptNameInUrls = false

$optimizeImageFilesize

Type
boolean

If set to true and Imagick is used, Craft will take advantage of Imagick's advanced options to reduce the final image size without losing quality significantly.

See also $imageDriver

View source

Signature

public boolean $optimizeImageFilesize = true

$pageTrigger

Type
string

The string preceding a number which Craft will look for when determining if the current request is for a particular page in a paginated list of pages.

View source

Signature

public string $pageTrigger = 'p'

$pathParam

Type
string

The query string param that Craft will check when determining the request's path.

View source

Signature

public string $pathParam = 'p'

$phpMaxMemoryLimit

Type
string

The maximum amount of memory Craft will try to reserve during memory intensive operations such as zipping, unzipping and updating. Defaults to an empty string, which means it will use as much memory as it possibly can. See http://php.net/manual/en/faq.using.php#faq.using.shorthandbytes for a list of acceptable values.

View source

Signature

public string $phpMaxMemoryLimit = ''

$phpSessionName

Type
string

The name of the PHP session cookie.

See also https://php.net/manual/en/function.session-name.php

View source

Signature

public string $phpSessionName = 'CraftSessionId'

$postCpLoginRedirect

Type
mixed
Access
Read-only

The path that users should be redirected to after logging in from the Control Panel.

This setting will also come into effect if the user visits the CP’s Login page (/admin/login) or the CP’s root URL (/admin) when they are already logged in. See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getPostCpLoginRedirect()

View source

Signature

public string getPostCpLoginRedirect ( )

$postLoginRedirect

Type
mixed
Access
Read-only

The path that users should be redirected to after logging in from the front-end site.

This setting will also come into effect if the user visits the Login page (as specified by the loginPath config setting) when they are already logged in. See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getPostLoginRedirect()

View source

Signature

public string getPostLoginRedirect ( \craft\config\string $siteHandle = null )

$postLogoutRedirect

Type
mixed
Access
Read-only

The path that users should be redirected to after logging out from the front-end site.

See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getPostLogoutRedirect()

View source

Signature

public string getPostLogoutRedirect ( \craft\config\string $siteHandle = null )

$preserveCmykColorspace

Type
boolean

Whether CMYK should be preserved as the colorspace when when manipulating images.

Setting this to true will prevent Craft from transforming CMYK images to sRGB, but on some Imagick versions can cause color distortion in the image. This will only have effect if Imagick is in use.

View source

Signature

public boolean $preserveCmykColorspace = false

$preserveExifData

Type
boolean

Whether the EXIF data should be preserved when manipulating images.

Setting this to false will reduce the image size a little bit, but all EXIF data will be cleared. This will only have effect if Imagick is in use.

View source

Signature

public boolean $preserveExifData = false

$preserveImageColorProfiles

Type
boolean

Whether the embedded Image Color Profile (ICC) should be preserved when manipulating images.

Setting this to false will reduce the image size a little bit, but on some Imagick versions can cause images to be saved with an incorrect gamma value, which causes the images to become very dark. This will only have effect if Imagick is in use.

View source

Signature

public boolean $preserveImageColorProfiles = true

$preventUserEnumeration

Type
boolean

When set to false and you go through the "forgot password" workflow on the control panel login page, for example, you get distinct messages saying if the username/email didn't exist or the email was successfully sent and to check your email for further instructions. This can allow for username/email enumeration based on the response. If set true, you will always get a successful response even if there was an error making it difficult to enumerate users.

View source

Signature

public boolean $preventUserEnumeration = false

$privateTemplateTrigger

Type
string

The template path segment prefix that should be used to identify "private" templates -- templates that aren't directly accessible via a matching URL.

Set to an empty value to disable public template routing.

View source

Signature

public string $privateTemplateTrigger = '_'

$purgePendingUsersDuration

Type
mixed

The amount of time to wait before Craft purges pending users from the system that have not activated.

Note that any content assigned to a pending user will be deleted as well when the given time interval passes. Set to 0 to disable this feature. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $purgePendingUsersDuration = 0

$rememberUsernameDuration

Type
mixed

The amount of time Craft will remember a username and pre-populate it on the CP login page.

Set to 0 to disable this feature altogether. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $rememberUsernameDuration = 31536000

$rememberedUserSessionDuration

Type
mixed

The amount of time a user stays logged if “Remember Me” is checked on the login page.

Set to 0 to disable the “Remember Me” feature altogether. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $rememberedUserSessionDuration = 1209600

$requireMatchingUserAgentForSession

Type
boolean

Whether Craft should require a matching user agent string when restoring a user session from a cookie.

View source

Signature

public boolean $requireMatchingUserAgentForSession = true

$requireUserAgentAndIpForSession

Type
boolean

Whether Craft should require the existence of a user agent string and IP address when creating a new user session.

View source

Signature

public boolean $requireUserAgentAndIpForSession = true

$resourceBasePath

Type
string

The path to the root directory that should store published CP resources.

View source

Signature

public string $resourceBasePath = '@webroot/cpresources'

$resourceBaseUrl

Type
string

The URL to the root directory that should store published CP resources.

View source

Signature

public string $resourceBaseUrl = '@web/cpresources'

$restoreCommand

Type
string, null

Craft will use the command line libraries psql and mysql for restoring a database by default. It assumes that those libraries are in the $PATH variable for the user the web server is running as. If you want to use some other library, or want to specify an absolute path to them, or want to specify different parameters than the default, or you want to implement some other restoration solution, you can override that behavior here. There are several tokens you can use that Craft will swap out at runtime: * {path} - Swapped with the dynamically generated backup file path. * {port} - Swapped with the current database port. * {server} - Swapped with the current database host name. * {user} - Swapped with the user to connect to the database. * {database} - Swapped with the current database name. * {schema} - Swapped with the current database schema (if any). This can also be set to false to disable database restores completely.

View source

Signature

public string, null $restoreCommand = null

$rotateImagesOnUploadByExifData

Type
boolean

Whether Craft should rotate images according to their EXIF data on upload.

View source

Signature

public boolean $rotateImagesOnUploadByExifData = true

$runQueueAutomatically

Type
boolean

Whether Craft should run pending queue jobs automatically over HTTP requests.

This setting should be disabled for servers running Win32, or with Apache’s mod_deflate/mod_gzip installed, where PHP’s flush() method won’t work. If disabled, an alternate queue runner must be set up separately.

View source

Signature

public boolean $runQueueAutomatically = true

$sanitizeSvgUploads

Type
boolean

Whether Craft should sanitize uploaded SVG files and strip out potential malicious looking content.

This should definitely be enabled if you are accepting SVG uploads from untrusted sources.

View source

Signature

public boolean $sanitizeSvgUploads = true

$secureHeaders

Type
array, null

Lists of headers that are, by default, subject to the trusted host configuration.

See yii\web\Request::$secureHeaders for more details. If not set, the default yii\web\Request::$secureHeaders value will be used.

View source

Signature

public array, null $secureHeaders = null

$secureProtocolHeaders

Type
array, null

List of headers to check for determining whether the connection is made via HTTPS.

See yii\web\Request::$secureProtocolHeaders for more details. If not set, the default yii\web\Request::$secureProtocolHeaders value will be used.

View source

Signature

public array, null $secureProtocolHeaders = null

$securityKey

Type
string

A private, random, cryptographically-secure key that is used for hashing and encrypting data in craft\services\Security. This value should be the same across all environments. Note that if this key ever changes, any data that was encrypted with it will be inaccessible.

View source

Signature

public string $securityKey = null

$sendPoweredByHeader

Type
boolean

Whether the X-Powered-By header should be sent on each request, helping clients identify that the site is powered by Craft.

View source

Signature

public boolean $sendPoweredByHeader = true

$setPasswordPath

Type
mixed
Access
Read-only

The password-reset template path. Note that this only affects front-end site requests.

See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getSetPasswordPath()

View source

Signature

public string getSetPasswordPath ( \craft\config\string $siteHandle = null )

$setPasswordSuccessPath

Type
mixed
Access
Read-only

The URI Craft should use upon successfully setting a users’s password. Note that this only affects front-end site requests. See craft\helpers\ConfigHelper::localizedValue() for a list of supported value types.

See also getSetPasswordSuccessPath()

View source

Signature

public string getSetPasswordSuccessPath ( \craft\config\string $siteHandle = null )

$showBetaUpdates

Type
boolean

Whether or not to show beta Craft updates from the updates page in the control panel. It is highly recommended that you do not use beta releases of Craft in a production environment.

View source

Signature

public boolean $showBetaUpdates = false

$siteName

Type
string, string[]

The site name(s). If set, it will take precedence over the Name settings in Settings → Sites → [Site Name].

This can be set to a string, which will override the primary site’s name only, or an array with site handles used as the keys.

View source

Signature

public string, string[] $siteName = null

$siteUrl

Type
string, string[]

The base URL to the site(s). If set, it will take precedence over the Base URL settings in Settings → Sites → [Site Name].

This can be set to a string, which will override the primary site’s base URL only, or an array with site handles used as the keys. The URL(s) must begin with either http://, https://, // (protocol-relative), or an alias.

'siteUrl' => [
    'siteA' => 'https://site-a.com/',
    'siteB' => 'https://site-b.com/',
],



<p>
    <a href="https://github.com/craftcms/cms/blob/master/src/config/GeneralConfig.php#L577" target="_blank" class="outbound-link" rel="noopener noreferrer">View source</a>
    <outbound-link/>
</p>



---

#### Signature

```php
public string, string[] $siteUrl = null

$slugWordSeparator

Type
string

The character(s) that should be used to separate words in slugs.

View source

Signature

public string $slugWordSeparator = '-'

$suppressTemplateErrors

Type
boolean

Controls whether or not to show or hide any Twig template runtime errors that occur on the site in the browser.

If it is set to true, the errors will still be logged to Craft’s log files.

View source

Signature

public boolean $suppressTemplateErrors = false

$testToEmailAddress

Type
string, array, null

Configures Craft to send all system emails to a single email address, or an array of email addresses for testing purposes. By default the recipient name(s) will be “Test Recipient”, but you can customize that by setting the value with the format ['email@address.com' => 'Name'].

View source

Signature

public string, array, null $testToEmailAddress = null

$timezone

Type
string, null

The timezone of the site. If set, it will take precedence over the Timezone setting in Settings → General.

This can be set to one of PHP’s supported timezones (http://php.net/manual/en/timezones.php).

View source

Signature

public string, null $timezone = null

$tokenParam

Type
string

The name of the 'token' query string parameter.

View source

Signature

public string $tokenParam = 'token'

$transformGifs

Type
boolean

Tells Craft whether GIF files should be transformed or cleansed. Defaults to true.

View source

Signature

public boolean $transformGifs = true

$translationDebugOutput

Type
boolean

Tells Craft whether to surround all translatable strings with “@” symbols, to help find any strings that are not being run through Craft::t() or the |translate filter.

View source

Signature

public boolean $translationDebugOutput = false

$trustedHosts

Type
array

The configuration for trusted security-related headers.

See yii\web\Request::$trustedHosts for more details. By default, all hosts are trusted.

View source

Signature

public array $trustedHosts = ['any']

$useCompressedJs

Type
boolean

Tells Craft whether to use compressed JavaScript files whenever possible, to cut down on page load times.

View source

Signature

public boolean $useCompressedJs = true

$useEmailAsUsername

Type
boolean

If set to true, Craft will use a user's email address in place of their username and remove username UI from the control panel.

View source

Signature

public boolean $useEmailAsUsername = false

$useFileLocks

Type
boolean, null

Whether to grab an exclusive lock on a file when writing to it by using the LOCK_EX flag.

Some file systems, such as NFS, do not support exclusive file locking. If not set to true or false, Craft will automatically try to detect if the underlying file system supports exclusive file locking and cache the results.

See also http://php.net/manual/en/function.file-put-contents.php

View source

Signature

public boolean, null $useFileLocks = null

$usePathInfo

Type
boolean

Whether Craft should specify the path using PATH_INFO or as a query string parameter when generating URLs.

Note that this setting only takes effect if $omitScriptNameInUrls is set to false.

View source

Signature

public boolean $usePathInfo = false

$useSecureCookies

Type
boolean, string

Determines whether Craft will set the "secure" flag when saving cookies when using Craft::cookieConfig() to create a cookie.

Valid values are true, false, and 'auto'. Defaults to 'auto', which will set the secure flag if the page you're currently accessing is over https://. true will always set the flag, regardless of protocol and false will never automatically set the flag.

View source

Signature

public boolean, string $useSecureCookies = 'auto'

$useSslOnTokenizedUrls

Type
boolean, string

Determines what protocol/schema Craft will use when generating tokenized URLs. If set to 'auto', Craft will check the siteUrl and the protocol of the current request and if either of them are https will use https in the tokenized URL. If not, will use http. If set to false, the Craft will always use http. If set to true, then, Craft will always use https.

View source

Signature

public boolean, string $useSslOnTokenizedUrls = 'auto'

$useXSendFile

Type
boolean

Whether Craft should use XSendFile to serve files when possible.

View source

Signature

public boolean $useXSendFile = false

$userSessionDuration

Type
mixed

The amount of time a user stays logged in.

Set to 0 if you want users to stay logged in as long as their browser is open rather than a predetermined amount of time. See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $userSessionDuration = 3600

$verificationCodeDuration

Type
mixed

The amount of time a user verification code can be used before expiring.

See craft\helpers\ConfigHelper::durationInSeconds() for a list of supported value types.

View source

Signature

public mixed $verificationCodeDuration = 86400

Public Methods

MethodDescription
__call()Calls the named method which is not a class method.
__construct()Constructor.
__get()Returns the value of an object property.
__isset()Checks if a property is set, i.e. defined and not null.
__set()Sets value of an object property.
__unset()Sets an object property to null.
canGetProperty()Returns a value indicating whether a property can be read.
canSetProperty()Returns a value indicating whether a property can be set.
className()Returns the fully qualified name of this class.
getActivateAccountSuccessPath()Returns the localized Activate Account Success Path value.
getBackupOnUpdate()Returns whether the DB should be backed up before running new migrations.
getInvalidUserTokenPath()Returns the localized Invalid User Token Path value.
getLoginPath()Returns the localized Login Path value.
getLogoutPath()Returns the localized Logout Path value.
getPostCpLoginRedirect()Returns the localized Post-CP Login Redirect path.
getPostLoginRedirect()Returns the localized Post-Login Redirect path.
getPostLogoutRedirect()Returns the localized Post-Logout Redirect path.
getSetPasswordPath()Returns the localized Set Password Path value.
getSetPasswordSuccessPath()Returns the localized Set Password Success Path value.
hasMethod()Returns a value indicating whether a method is defined.
hasProperty()Returns a value indicating whether a property is defined.
init()Initializes the object.

__construct()

Constructor.

The default implementation does two things:

  • Initializes the object with the given configuration $config.
  • Call init().

If this method is overridden in a child class, it is recommended that

  • the last parameter of the constructor is a configuration array, like $config here.
  • call the parent implementation at the end of the constructor.

View source

Arguments

  • $config (array) – Name-value pairs that will be used to initialize the object properties

Signature

public void __construct ( array $config = [] )

__get()

Returns the value of an object property.

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing $value = $object->property;.

View source

Arguments

  • $name (string) – The property name

Returns

mixed – The property value

Throws

Signature

public mixed __get ( $name )

__isset()

Checks if a property is set, i.e. defined and not null.

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing isset($object->property).

Note that if the property is not defined, false will be returned.

View source

Arguments

  • $name (string) – The property name or the event name

Returns

boolean – Whether the named property is set (not null).

Signature

public boolean __isset ( $name )

__set()

Sets value of an object property.

Do not call this method directly as it is a PHP magic method that will be implicitly called when executing $object->property = $value;.

View source

Arguments

  • $name (string) – The property name or the event name
  • $value (mixed) – The property value

Throws

Signature

public void __set ( $name, $value )

getActivateAccountSuccessPath()

Returns the localized Activate Account Success Path value.

See also $activateAccountSuccessPath

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getActivateAccountSuccessPath ( \craft\config\string $siteHandle = null )

getBackupOnUpdate()

Returns whether the DB should be backed up before running new migrations.

View source

Returns

boolean

Signature

public boolean getBackupOnUpdate ( )

getInvalidUserTokenPath()

Returns the localized Invalid User Token Path value.

See also $invalidUserTokenPath

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getInvalidUserTokenPath ( \craft\config\string $siteHandle = null )

getLoginPath()

Returns the localized Login Path value.

See also $loginPath

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getLoginPath ( \craft\config\string $siteHandle = null )

getLogoutPath()

Returns the localized Logout Path value.

See also $logoutPath

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getLogoutPath ( \craft\config\string $siteHandle = null )

getPostCpLoginRedirect()

Returns the localized Post-CP Login Redirect path.

See also $postCpLoginRedirect

View source

Returns

string

Signature

public string getPostCpLoginRedirect ( )

getPostLoginRedirect()

Returns the localized Post-Login Redirect path.

See also $postLoginRedirect

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getPostLoginRedirect ( \craft\config\string $siteHandle = null )

getPostLogoutRedirect()

Returns the localized Post-Logout Redirect path.

See also $postLogoutRedirect

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getPostLogoutRedirect ( \craft\config\string $siteHandle = null )

getSetPasswordPath()

Returns the localized Set Password Path value.

See also $setPasswordPath

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getSetPasswordPath ( \craft\config\string $siteHandle = null )

getSetPasswordSuccessPath()

Returns the localized Set Password Success Path value.

See also $setPasswordSuccessPath

View source

Arguments

  • $siteHandle (string, null) – The site handle the value should be defined for. Defaults to the current site.

Returns

string

Signature

public string getSetPasswordSuccessPath ( \craft\config\string $siteHandle = null )

init()

Initializes the object.

This method is invoked at the end of the constructor after the object is initialized with the given configuration.

View source

Signature

public void init ( )

Constants

ConstantDescription
IMAGE_DRIVER_AUTO
IMAGE_DRIVER_GD
IMAGE_DRIVER_IMAGICK