Kentico CMS 7.0 Developer's Guide

Appendix B - Web.config parameters

Appendix B - Web.config parameters

Previous topic This is the last topic Mail us feedback on this topic!  

Appendix B - Web.config parameters

Previous topic This is the last topic JavaScript is required for the print function Mail us feedback on this topic!  

The system settings include appSettings keys and other settings, such as a connection string placed in appropriate sections of the web.config file. AppSettings keys are stored in the /configuration/appSettings section.
 
The following setting categories are available:
 

General settings

Assembly settings

Forbidden character settings in user and role names

Forbidden character replacement in URLs

Staging settings

WYSIWYG editor settings

Code editor settings

E-commerce settings

Event log settings

File export settings

Item listing settings

URL settings for cultures

Query string parameter name settings

Transaction isolation settings

Scheduler settings

Contact management settings

Security settings

Smart search settings

Translation services

UI culture settings

Web farm synchronization settings

Windows Azure deployment settings

Debugging settings

 

General settings

 

Key

Description

Sample Value

CMSProgrammingLanguage

Indicates the programming language used in transformations and in custom code added to web parts.

 

The default value is C#.

<add key="CMSProgrammingLanguage" value="C#" />
 

or

 
<add key="CMSProgrammingLanguage" value="VB" />

CMSTrialKey

Contains a temporary trial license key. You can remove this value after installation.

 

The default value is "" (empty string).


CMSHashStringSalt

Sets the salt value that the system uses in hash functions, for example when creating macro signatures. The installer automatically adds the key for new instances of Kentico, with a random GUID as the value.

 

Note: Changing the hash salt on a website that already has defined content may prevent macros from resolving correctly, or break dialog links and images on your website. If you encounter such problems, you need to re-save the given content or globally re-sign macros (the system then creates the hashes using the new salt).

<add key="CMSHashStringSalt" value="eb2d6fac-8b9e-427c-b98b-3c562dffbb35" />

CMSUseCustomHandlers

Indicates if custom handlers should be executed to process system events. See the Global events and their handling chapter for more details.

 

The default value is false.

<add key="CMSUseCustomHandlers" value="true" />

CMSUseVirtualPathProvider

Indicates if the virtual path provider should be used (true by default). Before you switch off the virtual path provider, please read the Pre-compilation (Publish function) chapter.

 

The default value is true.

<add key="CMSUseVirtualPathProvider" value="false" />

CMSShowWebPartCodeTab

Indicates if the Code tab should be displayed in the web part properties dialog in CMS Desk. This parameter can be used for the purposes of backwards compatibility. Otherwise, using the Code tab is now obsolete.

 

The default value is false.

<add key="CMSShowWebPartCodeTab" value="true" />

CMSShowWebPartBindingTab

Indicates if the Binding tab should be displayed in the web part properties dialog in CMS Desk. This parameter can be used for the purposes of backwards compatibility. Otherwise, using the Binding tab is now obsolete.

 

The default value is false.

<add key="CMSShowWebPartBindingTab" value="true"/>

CMSRenderGeneratorName

Indicates if the 'generator' meta tag stating that the page was generated by Kentico CMS is generated in the header of each page.

 

The default value is false.

<add key="CMSRenderGeneratorName" value="true"/>

CMSClearFieldEditor

Determines field editor behavior when creating new fields. If true, new fields will have empty values of attributes. If false, new fields will have pre-defined values, the same as the previously selected field.

 

The default value is true.

<add key="CMSClearFieldEditor" value="true"/>

CMSShowTemplateASPXTab

Indicates if ASPX code tab is displayed when editing a page template. Using this tab, ASPX code of a page template created using the portal engine can be exported.

 

The default value is false.

<add key="CMSShowTemplateASPXTab" value="true"/>

CMSDatabaseCulture

Specifies the default culture of the system's database.

 

The default value is en-us.

<add key="CMSDatabaseCulture" value="en-us"/>

CMSDisposeConnectionAfterClose

If true, database connection is automatically disposed (allocated resources released) when a database connection is closed.

 

The default value is false.

<add key="CMSDisposeConnectionAfterClose" value="true"/>

CMSUseSessionCookies

Indicates if session cookies are used or not.

 

The default value is true.

<add key="CMSUseSessionCookies" value="true"/>

CMSImportWindowsRoles

When Windows authentication is used and this key set to true, roles available in the Active Directory will be imported into the system.

 

The default value is true.

<add key="CMSImportWindowsRoles" value="true"/>

CMSFileScriptTimeout

The maximum number of seconds a script can run before the server terminates it.

 

The default value is 7200.

<add key="CMSFileScriptTimeout" value="7200"/>

CMSUseExtensionOnPostback

When using friendly URL extensions, postback doesn't work in some cases. If you enable this setting, .aspx extension is attached to the URL in the form tag, which prevents the postback problems.

 

The default value is true.

<add key="CMSUseExtensionOnPostback" value="true"/>

CMSUseSQLResourceManager

If true, SQL Resource manager is used to retrieve strings used in the user interface.

 

The default value is true.

<add key="CMSUseSQLResourceManager" value="true"/>

CMSAllowCheckIOPermissions

If true, write permissions on the site folder are checked when necessary and produce an error message when they are insufficient.

 

The default value is true.

<add key="CMSAllowCheckIOPermissions" value="true"/>

CMSWorkflowSendEmailToModerator

If true, workflow notification e-mails will be sent to the user who is performing the current workflow step along with other users involved in the workflow.

 

The default value is false.

<add key="CMSWorkflowSendEmailToModerator" value="true"/>

CMSControlElement

If present in the web.config, the tag entered in the value will be used instead of the SPAN tag when generating pages.

 

The default value is span.

<add key="CMSControlElement" value="div"/>

CMSUseParsedSelfClose

Indicates if parsed self closing tags operations (faster) are used instead of standard self close filter.

 

The default value is true.

<add key="CMSUseParsedSelfClose" value="true"/>

CMSGetFileEndRequest

If true, ApplicationInstance.CompleteRequest() is used instead of Response.End() in the CompleteRequest method.

 

The default value is true.

<add key="CMSGetFileEndRequest" value="true"/>

CMSDefaultUserID

Specifies default user ID.

 

The default value is 0.

<add key="CMSDefaultUserID" value="53"/>

ImportFilesDiskPath

Specifies path to attachments that should be attached to documents imported via the SQL Import windows application.

 

The default value is "" (empty string).

<add key="ImportFilesDiskPath" value="C:\Temp"/>

CMSDeleteTemporaryAttachmentsOlderThan

Specifies how old should be attachments deleted by the 'Delete old temporary attachments' scheduled task. The value is entered in hours. Attachments older than the entered value will be deleted when the scheduled task is executed.

 

The default value is 24.

<add key="CMSDeleteTemporaryAttachmentsOlderThan" value="12"/>

CMSAllowGZip

Enables Gzip compression of output HTML code.

 

The default value is false.

<add key="CMSAllowGZip" value="true" />

CMSDisableAdministrationInterface

Disables the administration interface. The 'Access denied' screen is displayed on each attempt to access CMS Desk or Site Manager.

 

The default value is false.

<add key="CMSDisableAdministrationInterface" value="true"/>

CMSMaxNodeAliasLength

Determines the maximum allowed length of document aliases. The default value is 50 characters and larger names are trimmed. You can increase the allowed length if you need to enter very long aliases (URLs).

 

If you increase the key's value, you also need to:

 

1.Edit the ~\CMSModules\Content\CMSDesk\Properties\Alias_List.aspx file and increase the MaxLength property of the txtAlias control.

 

2.Delete the following views from your database:

View_CMS_Tree_Joined_Linked

View_CMS_Tree_Joined_Regular

 

3.Increase the nvarchar size for the NodeAlias column in the CMS_Tree database table.

 

4.Increase the nvarchar size for the NodeAlias column in the code of the following stored procedures:

Proc_CMS_Tree_InitNodeOrders

Proc_CMS_Tree_MoveNodeAlphabetical

Proc_CMS_Tree_OrderAlphaAsc

Proc_CMS_Tree_OrderAlphaDesc

 

5.Recreate the deleted views. Run the following scripts found in the ~\App_Data\Install\SQL\Objects folder:

View_CMS_Tree_Joined_Linked.sql

View_CMS_Tree_Joined_Regular.sql

 

Note: The maximum allowed length for the Node alias path is 450 characters, so the system may trim the alias path for documents deep in the content tree regardless of the allowed length.

<add key="CMSMaxNodeAliasLength" value="120" />

CMSMaxNodeNameLength

Sets the maximum possible length for the names of documents in the content tree. The default value is 100 characters and larger names are trimmed. This key can be used to increase the allowed length, which can be useful if you wish to enter very long document names.

 

If you use the key, you also need to set the same size for the following columns in the database:

 

NodeName (CMS_Tree table)

DocumentName (CMS_Document table)

PageTemplateDisplayName (CMS_PageTemplate table)

VersionDocumentName (CMS_VersionHistory table)

 

<add key="CMSMaxNodeNameLength" value="150" />

CMSWebAnalyticsSlidingIPExpiration

This key is used when the Site Manager -> Settings -> On-line marketing -> Web Analytics -> Remember visitors by IP (minutes) key has a value higher than 0.

If enabled (by default), users who are active on the site but have disabled cookies are not logged as new visitors after the set time. If disabled, even an active user with disabled cookies is logged as a new site visitor after the set time.

<add key="CMSWebAnalyticsSlidingIPExpiration" value="false" />

CMSAuthenticationType

This key overrides the values returned by the IsFormsAuthentication and IsWindowsAuhentication methods in CMS.GlobalHelper.RequestHelper.

 

You will typically use this if you are using a custom authentication provider whose authentication type is a non-standard one (e.g. Federated authentication) to make Kentico CMS handle it as if it was windows or forms authentication.

 

The following values are available:

 

default: standard behavior

forms: IsFormsAuthentication always returns true, IsWindowsAuthentication always returns false

windows: IsFormsAuthentication always returns false, IsWindowsAuthentication always returns true

both: IsFormsAuthentication always returns true, IsWindowsAuthentication always returns true

 

The default value is default.

<add key="CMSAuthenticationType" value="windows" />

CMSTemporaryFilesFolderPath

Overrides the default ~/AppData/CMSTemp location where various temporary files are stored by the system. As a value, you can use:

 

physical disk path - e.g. c:\myfiles\mysite

virtual path - e.g. ~/UploadedFiles

UNC path - e.g. \\server\folder

<add key="CMSTemporaryFilesFolderPath" value="\\server\MyCustomFolder" />

CMSEnableInlineControls

Indicates if Inline control insertion should be possible using the Insert inline control button in the WYSIWYG editor toolbar.

 

This key does not affect the resolving of inline control macro expressions.

 

The default value is false.

<add key="CMSEnableInlineControls" value="true" />

CMSDefaultTheme

Sets name of the folder within ~\App_Themes\ containing the theme to be used as the default theme by the CMS.

 

The default value is Default.

<add key="CMSDefaultTheme" value="MyTheme" />

CMSImagesDirectory

Sets a custom path to the Images folder of the theme to be used by the CMS. It can be located in a different location than within the default theme folder.

 

The default value is ~/App_Themes/<default theme folder>/Images.

<add key="CMSImagesDirectory" value="~/App_Themes/MyTheme/Images" />

CMSApplicationName

Used by Kentico CMS Windows services to identify the Kentico CMS instance. In case of IIS installation, path to the instance in IIS is used as its value. In case of Visual Studio web server installation, name of the target web project root folder is used. The value must be less than 60 characters long.

 

It is also used to register Health monitoring performance counters and to identify respective counter categories when writing monitored values to them.

<add key="CMSApplicationName" value="Default Web Site/CMS" />

CMSApplicationGuid

Unique identifier of the Kentico CMS instance. Used by Kentico CMS Windows services to identify the Kentico CMS instance.

<add key="CMSApplicationGuid" value="fe5493b6-4ea9-42e6-92fa-0db1156b9163" />

CMSEnableAutomaticCampaignCreate

If set to true, a campaign object will automatically be added to the current website if it is viewed by a user coming from an undefined campaign (typically specified through the campaign tracking URL parameter).

 

If the key is set to false (this is the default state), then undefined campaigns will be ignored.

 

Please see Modules -> Web analytics -> Campaigns for further information.

<add key="CMSEnableAutomaticCampaignCreate" value="true" />

CMSMediaFileMaxVersioningSize

Sets the maximal file size of versioned media files in kiloBytes. Files in media libraries that are larger than the entered value will not have versions created on their update.

 

The default value is 2147483647 (int.MaxValue).

<add key="CMSMediaFileMaxVersioningSize" value="1024" />

CMSShowForgottenPassLink

Indicates if a link that allows users to recover a forgotten password should be displayed on the logon page for the administration interface (CMS Desk and Site Manager).

 

The default value is true.

<add key="CMSShowForgottenPassLink" value="false" />

CMSDisableMacroParameters

Disables resolving of macro parameters. If set to true, macro parameters will be ignored and the macro expressions will return results as if they contained no parameters.

 

The default value is false.

<add key="CMSDisableMacroParameters" value="true" />

CMSSelectorMaxDisplayedTotalItems

Determines the maximum number of items that can be displayed in drop‑down list selectors in the administration interface. If there are more selectable objects, the list will be shortened and the (more..) option will be added.

 

The value of this key can be overridden for individual UniSelector controls.

<add key="CMSSelectorMaxDisplayedTotalItems" value="30" />

CMSAlwaysCacheResources

Enables/disables client caching of (minifiable) resources.

 

The default value is true.

 

Please note that caching on the client side is not done at all if the Client cache (minutes) setting is disabled (set to 0) in Site Manager -> Settings -> System -> Performance.

<add key="CMSAlwaysCacheResources" value="false"/>

CMSStorageProviderAssembly

Indicates the assembly name of storage provider.

 

The default value is CMS.CMSStorage.

<add key="CMSStorageProviderAssembly" value="CMS.CMSStorage"/>

CMSProcessTrailingSlashForFile

Allows to disable processing of the trailing slash for attachment URLs.

 

The default value is true.

<add key="CMSProcessTrailingSlashForFile" value="false"/>

CMSWebAnalyticsShowFullData

Indicates whether the amount of data displayed in the analytics reports should be reduced before being rendered.

 

The default value is false (for performance reasons).

<add key="CMSWebAnalyticsShowFullData" value="true"/>

CMSPhysicalFilesCacheMinutes

Determines expiration time in minutes that should be set for the physical files in the client cache.

 

The default value is 10080.

<add key="CMSPhysicalFilesCacheMinutes" value="10080"/>

CMSHTMLEncodeEval

If true, the EvalXXX() methods in the CMSAbstractTransformation class encode string values.

 

The default value is false.

<add key="CMSHTMLEncodeEval" value="true"/>

CMSInstancePath

Contains the instance path.

<add key="CMSInstancePath" value="c:\inetpub\wwwroot\KenticoCMS\"/>

CMSEmailValidationRegex

Allows to customize a regular expression string for email validation.

<add key="CMSEmailValidationRegex" value="^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$"/>

CMSEmailTransferEncoding

 

[Only available after applying hotfix 7.0.44 or newer]

Specifies the type of transfer encoding used for e-mails sent from the CMS.

 

Supported values are: base64, quotedprintable, sevenbit.

The default value is base64.

<add key="CMSEmailTransferEncoding" value="QuotedPrintable" />

CMS55Compatibility

Ensures compatibility with CMS version 5.5 (includes the CMS.Compatibility namespace in transformations).

 

The default value is false.

<add key="CMS55Compatibility" value="true"/>

CMSMacrosCaseSensitiveComparison

If true, string comparisons are case sensitive (if not overriden by |(casesensitive) macor parameter).

 

The default value is false.

<add key="CMSMacrosCaseSensitiveComparison" value="true"/>

CategoryIDLength

Category IDs in the CategoryIDPath column/field (the CMS_Category table) will be padded with leading zeros to the width specified in the key, e.g. 00001232.

 

The default value is 8.

<add key="CategoryIDLength" value="9"/>

UIelementIDLength

UI element IDs in the ElementIDPath column/field (the CMS_UIElement table) will be padded with leading zeros to the width specified in the key, e.g. 00001232.

 

The default value is 8.

<add key="UIelementIDLength" value="9"/>

SettingsCategoryIDLength

Settings category IDs in the CategoryIDPath column/field (the CMS_SettingsCategory table) will be padded with leading zeros to the width specified in the key, e.g. 00001232.

 

The default value is 8.

<add key="SettingsCategoryIDLength" value="9"/>

CMSDeleteTemporaryUploadFilesOlderThan

Specifies how old (in hours) unfinished upload files should be deleted by the 'Delete old temporary upload files' scheduled task.

 

The default value is 24.

<add key="CMSDeleteTemporaryUploadFilesOlderThan" value="12"/>

CMSImageEditorMaxVersionsCount

Indicates how many versions of edited image should be saved in the image editor temporary folder.

 

The default value is 999.

<add key="CMSImageEditorMaxVersionsCount" value="500"/>

CMSImageExtensions

Specifies a list of file extensions which should be allowed as image files.

 

The default value is "".

<add key="CMSImageExtensions" value=""/>

CMSAudioExtensions

Specifies a list of file extensions which should be allowed as audio files.

 

The default value is "".

<add key="CMSAudioExtensions" value=""/>

CMSVideoExtensions

Specifies a list of file extensions which should be allowed as video files.

 

The default value is "".

<add key="CMSVideoExtensions" value=""/>

CMSUrlPort

Specifies the port number that will be used in certain types of URLs in the administration interface (e.g. those of stylesheet images or modal dialogs). Standard navigation URLs are not affected.

 

If not set, the URL port is automatically taken from the current request (80 in most cases).

 

Add this key if you wish to generate URLs with a custom port number, regardless of the request port.

 

It may also be useful in scenarios where requests are redirected to a non‑standard port number, but you wish to use the usual HTTP port in URLs.

<add key="CMSURLPort" value="80" />

CMSUseServerSideLiveIDAuthentication

Determines which authentication mode should be used during Windows Live ID authentication. Each mode generates a different authentication token for the same Live ID user.

 

Setting the value to false is necessary to ensure backward compatibility for users created via Live ID authentication by versions of Kentico CMS older than 6.0 (or those users created while this key is set to false).

 

The default value is true.

<add key="CMSUseServerSideLiveIDAuthentication" value="false" />

CMSDefaultCookieLevel

Can be used to set the default cookie level system-wide. Available cookie levels are: None, System, Essential, Editor, Visitor, All.

 

The default value is All.

<add name="CMSDefaultCookieLevel" value="System" />

CMSUseSilverlightUploader

Indicates whether the system should use the multi-file uploader written in Microsoft Silverlight.

<add key="CMSUseSilverlightUploader" value="false" />

CMSDefaultPageClassName

Use the key to change the default value of the page menu item classname.

 

The default value is CMS.MenuItem.

<add key="CMSDefaultPageClassName" value="CMS.MenuItem" />

CMSXUACompatibleValue

Defines a value of X-UA-Compatible header meta tag. This meta tag allows you to choose the version of Internet Explorer, in which the page should be rendered.

 

Available options are:

 

IE=5

IE=EmulateIE7

IE=7

IE=EmulateIE8

IE=8

IE=EmulateIE9

IE=9

IE=edge

 

Default value is IE=9. The meta tag is added if IE browser is used.

<add key="CMSXUACompatibleValue" value="IE=edge" />

CMSUseXUACompatible

Defines if X-UA-Compatible header meta tag can be added.

 

The default value is true.

<add key="CMSUseXUACompatible" value="false" />

 
Special settings for assemblies

 

You can use the following keys to specify which assemblies are used:

 

Key

Description

Sample Value

CMSDirectoryProviderAssembly

Name of the assembly that should be used for operations in the file system. You can choose from the following options:

 

CMS.DirectoryProviderDotNet - this is a managed code library that uses System.IO methods for disk operations. It is useful for environment that allows only managed code.
 

CMS.DirectoryProviderWin32 - this is an unmanaged code library that uses Win32 API for disk operations. It is useful for environment that requires Win32 API calls.

 

The default assembly is CMS.DirectoryProviderDotNet.

<add key="CMSDirectoryProviderAssembly" value="CMS.DirectoryProviderDotNet" />

 

or

 
<add key="CMSDirectoryProviderAssembly" value="CMS.DirectoryProviderWin32" />

 

 

CMSSearchProviderAssembly

Name of the assembly that is used for full-text search based on the SQL engine.

 

The default assembly is CMS.SearchProviderSQL.

<add key="CMSSearchProviderAssembly" value="CMS.SearchProviderSQL" />

CMSDataProviderAssembly

Specifies custom data provider assembly used as the database connector for the CMS. See this topic for more details.

 

The default assembly is CMS.DataProviderSQL.

<add key="CMSDataProviderAssembly" value="CMS.CustomDataProvider"/>

CMSCustomHandlersAssembly

Specifies custom event handler assembly. Read this topic for more information.

 

The default assembly is CMS.CustomEventHandler.

<add key="CMSCustomHandlersAssembly" value="CMS.CustomEventHandler"/>

CMSVirtualPathProviderAssembly

Specifies the Custom virtual path provider assembly.

 

The default assembly is CMS.VirtualPathProvider.

<add key="CMSVirtualPathProviderAssembly" value="CMS.CustomVirtualPathProvider"/>

CMSCustomEcommerceProviderAssembly

Specifies the custom e-commerce provider assembly.

 

The default assembly is CMS.EcommerceProvider.

<add key="CMSCustomEcommerceProviderAssembly" value="CMS.CustomECommerceProvider"/>

 
Special settings for forbidden characters in user and role names

 

You can use the following keys to configure forbidden characters in user and role names:

 

Key

Description

Sample Value

CMSEnsureSafeUserNames

Indicates if forbidden characters in user names imported from AD should be replaced. If turned off by setting the value to false, you may experience problems when editing users imported with forbidden characters. Therefore, it is NOT RECOMMENDED to turn it off.

 

The default value is true.

<add key="CMSEnsureSafeUserNames" value="false" />

CMSEnsureSafeRoleNames

Indicates if forbidden characters in role names imported from AD should be replaced. If turned off by setting the value to false, you may experience problems when editing roles imported with forbidden characters. Therefore, it is NOT RECOMMENDED to turn it off.

 

The default value is true.

<add key="CMSEnsureSafeRoleNames" value="false" />

CMSForbiddenUserNameCharactersReplacement

Sets the character by which forbidden characters in user names imported from AD should be replaced.

 

If not set, value from Site Manager -> Settings -> URLs and SEO -> Forbidden characters replacement is used.

<add key="CMSForbiddenUserNameCharactersReplacement" value="-" />

CMSForbiddenRoleNameCharactersReplacement

Sets the character by which forbidden characters in role names imported from AD should be replaced.

 

If not set, value from Site Manager -> Settings -> URLs and SEO -> Forbidden characters replacement is used.

<add key="CMSForbiddenRoleNameCharactersReplacement" value="-" />

CMSUserValidationRegEx

Sets custom regular expression used for user name validation (used when new accounts are created or when existing usernames are modified).

 

The default value is "^[a-zA-Z0-9_\\-\\.@]+$".

 

If the CMSEnsureSafeUserNames key is set to false, the following regular expression is used by default: "^[a-zA-Z0-9_\\-\\.\\\\@]+$".

<add key="CMSUserValidationRegEx" value="([A-Za-z0-9-]+)" />

 

Special settings for forbidden character replacement in URLs

 

You can use the following keys to configure how forbidden URL characters should be replaced:

 

Key

Description

Sample Value

CMSForbiddenURLValues

The characters entered as the value of this key are forbidden in URLs (document aliases and URL paths) and will be replaced automatically by the character specified in the Forbidden characters replacement setting in Site Manager -> Settings -> URLs and SEO.

 

By default, the following characters are forbidden:

 

\/:*?"<>|&%.'#[]+=„“ and the space character.

 

If you add this key to the web.config, its value will override the default forbidden character set. This way, you can either allow some of the forbidden characters or add new ones.

 

Please note that it is recommended to keep the default characters forbidden, since they may prevent certain types of URLs from working correctly if entered into URL paths.

 

Also keep in mind that some characters need to be escaped in the web.config according to standard XML rules, e.g. enter &lt; instead of the < character.

<add key="CMSForbiddenURLValues" value="\/:$?&quot;&lt;&gt;|&amp;%.&apos;#[] =" />

CMSLimitUrlReplacements

While enabled, consecutive forbidden characters in URLs will be replaced by only a single replacement character and forbidden URL characters located at the beginning or end of the path will be removed completely instead of being replaced. If set to false, each forbidden character is replaced individually.

 

The default value is true.

<add key="CMSLimitUrlReplacements" value="false" />

CMSUseLimitReplacementsForUrlPath

Indicates if the functionality enabled by the CMSLimitUrlReplacements key should be applied to the Document URL Path property.

 

The default value is true.

<add key="CMSUseLimitReplacementsForUrlPath" value="false" />

 
Special settings for content staging

 

You can use the following keys to achieve specific behavior of the Staging module:

 

Key

Description

Sample Value

CMSStagingAcceptAllCertificates

Causes all certificates to be accepted when performing content staging tasks through SSL (X.509). If false, only certificates generated by a certification authority will be accepted.

 

The default value is false.

<add key="CMSStagingAcceptAllCertificates" value="true" />

CMSStagingUseTreeCustomHandlers

Ensures that events will be raised in CustomTreeNodeHandler when performing content staging synchronization.

The CMSUseCustomHandlers key needs to be enabled too for this to work.

 

The default value is false.

<add key="CMSStagingUseTreeCustomHandlers" value="true" />

CMSMediaFileMaxStagingSize

Sets the maximal file size of synchronized media files in kiloBytes. Files in media libraries that are larger than the entered value will not be synchronized using the Staging module.

 

The default value is 2147483647 (int.MaxValue).

<add key="CMSMediaFileMaxStagingSize" value="1024" />

CMSStagingTreatServerNamesAsInstances

Global metadata changes such as changes to document types, custom tables and system tables produce staging tasks for all staging servers of all sites. In such case, it is recommended to synchronize such changes to all servers of all sites at the same time to prevent overwriting of such metadata and losing the data by synchronizing the older tasks later.

 

You can use this key to make sure that once the global task is synchronized, it is deleted from all other servers with the same name to prevent such possibility.

 

The default value is false since staging can use multiple target instances targeted with the same names.

<add key="CMSStagingTreatServerNamesAsInstances" value="true" />

CMSStagingServerName

Name of the staging server used for advanced bi-directional content staging. The value needs to be used as Server code name when defining this server as a target server on the remaining servers.

 

The default value is "" (empty string).

<add key="CMSStagingServerName" value="server2" />

CMSStagingServiceTimeout

Sets timeout interval for the staging service. The value should be entered in seconds.

 

The default value is 180.

<add key="CMSStagingServiceTimeout" value="240" />

CMSStagingLogSynchronization

Indicates if performed staging synchronization tasks should be logged as new staging tasks (that can be subsequently transferred to other staging servers). The primary use of this key is to disable logging of these tasks globally for all sites in the system.

 

The default value is true.

<add key="CMSStagingLogSynchronization" value="false" />

CMSSynchronizeSharedTemplatesWithDocuments

Indicates if changes made to page templates used by multiple documents should be synchronized together with document update synchronization tasks of all documents using the template. If disabled, document update tasks will not include page template synchronization tasks.

 

The default value is true.

<add key="CMSSynchronizeSharedTemplatesWithDocuments" value="false" />

CMSStagingLogGlobalObjectsOnlyForAssignedSites

If true, tasks for global objects are logged only for the sites to which the respective objects are assigned.

 

The default value is false.

<add key="CMSStagingLogGlobalObjectsOnlyForAssignedSites" value="true" />

 
Special settings for the WYSIWYG editor

 

You can use the following keys to configure the WYSIWYG editor:
 

Key

Description

Sample Value

CMSWYSIWYGFixXHTML

Indicates if the WYSIWYG editor should automatically try to fix XHTML incompatibilities in the code it generates.

 

Supported values are true and false. The default value is true.

<add key="CMSWYSIWYGFixXHTML" value="true" />

CKeditor:BasePath

Specifies the location of the WYSIWYG editor (CKEditor).

 

By default, it is located in ~/CMSAdminControls/CKeditor.

<add key="CKeditor:BasePath" value="/CKeditor/"/>

CKEditor:PersonalizeToolbarOnLiveSite

Indicates if the CK toolbar can be personalized on the live site. See this topic for more details.
 
Supported values are true and false. The default value is false.

<add key="CKEditor:PersonalizeToolbarOnLiveSite" value="true" />

 
Special settings for the code editor

 

You can use the following keys to configure the Code editor, which is used in the interface to ensure syntax highlighting and work with code fields:
 

Key

Description

Sample Value

CMSEnableSyntaxHighlighting

Globally enables or disables the advanced editor and syntax highlighting support for all code fields. This can be used to turn off the editor if it is causing performance issues or other problems.

 

The default value is true.

<add key="CMSEnableSyntaxHighlighting" value="false" />

CMSEnableSyntaxHighlighting.<Language>

Can be used to disable the advanced editor and syntax highlighting support for fields that display code in a specific language.

 

Replace the <Language> string with the name of the language that you wish to disable. The following language options are available: Text, HTML, CSS, JavaScript, XML, CSharp, SQL, HTMLMixed, ASPNET, CMSSharp.

 

All languages are enabled by default.

<add key="CMSEnableSyntaxHighlighting.CSS" value="false" />

CMSShowLineNumbers

If set to true, the panel that displays the number of every line in the editor will be displayed by default when the page is loaded. Please note that some fields in the user interface are not affected by this setting.

 

The default value is false.

<add key="CMSShowLineNumbers" value="true" />

 

Special settings for E-commerce

 

You can use the following keys when you need to achieve specific behavior of the E-commerce module:

 

Key

Description

Sample Value

CMSShoppingCartExpirationPeriod

Number of days after which E-commerce shopping cart content is deleted from the database. It's used for deleting unused shopping carts of anonymous users that are stored in the database with ID stored in the browser cookie.

 

The default value is 30.

<add key="CMSShoppingCartExpirationPeriod" value="60" />

CMSUseCurrentSKUData

Indicates if the E-commerce module should use the price from the existing order items or from the current SKU data when re-calculating the order.

 

The default value is false.

<add key="CMSUseCurrentSKUData" value="true"/>

CMSEnableOrderItemEditing

If true, order item parameters, such as order item name and order item unit price, can be modified when editing an existing order.

 

The default value is false.

<add key="CMSEnableOrderItemEditing" value="true"/>

CMSUseMetaFileForProductImage

Indicates if meta files should be used for product images in E-commerce.

 

The default value is true.

<add key="CMSUseMetaFileForProductImage" value="true"/>

CMSUseCustomEcommerceProviders

Specifies whether to use custom E-commerce provider handlers. See this topic for more details.

 

The default value is false.

<add key="CMSUseCustomEcommerceProviders" value="true"/>

 
Special settings for Event log

 

You can use the following keys when you need to achieve specific behavior of the Event log:

 

Key

Description

Sample Value

CMSLogEvents

Indicates if logging of events in the Event log is enabled.

 

The default value is true.

<add key="CMSLogEvents" value="true"/>

CMSLogKeepPercent

Coefficient for Event log deletion. Keeps the specified percentage of extra log items in the log with regards to the Site Manager -> Settings -> System -> Event log size setting. The specified percentage of the oldest events is deleted by batch when the percentage is exceeded. If 0, the exact number of records is kept in the log.

 

The default value is 10.

<add key="CMSLogKeepPercent" value="10"/>

CMSLogEventsToFile

If true, events are also logged into the ~\App_Data\logevents.log file.

 

The default value is false.

<add key="CMSLogEventsToFile" value="true"/>

CMSLogFieldChanges

If true and the Site Manager -> Settings -> System -> Log metadata changes option is enabled, details about particular object changes are included in the respective log records.

 

The default value is false.

<add key="CMSLogFieldChanges" value="true"/>

CMSLogDocumentFieldChanges

If true and the Site Manager -> Settings -> System -> Log metadata changes option is enabled, details about changes of values in document fields are included in the respective log records.

 

The default value is false.

<add key="CMSLogDocumentFieldChanges" value="true"/>

CMSLogNewsletterIssueEvents

 

[Only available after applying hotfix 7.0.18 or newer]

Indicates if the system logs newsletter issue changes into the event log (including logging of all sent issues).

 

You can disable logging of these events if you encounter problems with performance or a cluttered event log when mailing issues to a very large number of subscribers.

 

The default value is true.

<add key="CMSLogNewsletterIssueEvents" value="false" />

CMSLogMATransitions

 

[Only available after applying hotfix 7.0.18 or newer]

Indicates if the system logs all step transitions in Marketing automation processes into the event log.

 

You can disable logging of these events if you encounter performance issues or a cluttered event log when running automation processes for a very large number of contacts.

 

The default value is true.

<add key="CMSLogMATransitions" value="false" />

CMSDataExportTemplateFolder

Indicates the starting path for template lookup.

 

The default value is ~/App_Data/CMSModules/DataExport.

<add key="CMSDataExportTemplateFolder" value="~/App_Data/CMSModules/DataExport"/>

 
Special settings for export/import

 

You can use the following keys when you want to configure file exporting:

 

Key

Description

Sample Value

CMSExportExcludedFolders

Specifies which folders will be filtered from being included in Files folder of the export package.

 

.svn folders are excluded by default, even without this key added. More info here.

<add key="CMSExportExcludedFolders" value="test*;cms*" />

CMSExportExcludedFiles

Specifies which files will be filtered from being included in the Files folder of the export package.

 

.scc files are excluded by default, even without this key added. More info here.

<add key="CMSExportExcludedFiles" value="test*;cms*" />

CMSSiteUtilsFolderPath

Enables to override the default ~/CMSSiteUtils/ location where export and import packages are stored. As a value, you can use:

 

physical disk path - e.g. c:\myfiles\mysite

virtual path - e.g. ~/UploadedFiles

UNC path - e.g. \\server\folder

<add key="CMSSiteUtilsFolderPath" value="\\server\MyCustomFolder" />

 
Special settings for item listing

 

You can use the following keys when you want to configure item listing:

 

Key

Description

Sample Value

CMSDefaultListingFilterLimit

Determines the minimum number of items that must be included in a listing in order for a filter to be shown. If the number of listed items is lower than this value, the filter is not displayed. If it is larger, the filter is displayed. This applies to all listings (UniGrid controls) across the entire UI

 

The default value is 25.

 

The value of this key can be overridden for individual UniGrid controls.

<add key="CMSDefaultListingFilterLimit" value="40" />

CMSDefaultListingPageSize

Initial page size (the Items per page setting) of listings across the whole UI.

 

The default value is 25.

<add key="CMSDefaultListingPageSize" value="50" />

CMSListingShowFirstLastButtons

If enabled, the first and last page link buttons will be included in the pagers of listings in the UI with a large enough number of items. If disabled, the buttons will always be hidden.

 

If both this and the ShowDirectPageControl keys are disabled, only TopN items are loaded, while TopN = PageSize * (currentPageIndex + CurrentPagesGroupSize).

 

The default value is true.

<add key="CMSListingShowFirstLastButtons" value="false" />

CMSListingShowDirectPageControl

If enabled, a textbox that allows the current page to be changed by directly entering a number will be included in pagers of listings in the UI with a large enough number of items. If disabled, the control will always be hidden.

 

If both this and the ShowFirstLastButtons keys are disabled, only TopN items are loaded, while TopN = PageSize * (currentPageIndex + CurrentPagesGroupSize).

 

The default value is true.

<add key="CMSListingShowDirectPageControl" value="false" />

 

Special settings for culture URLs

 

You can use the following keys to set up URL behavior for the culture (language) versions of documents:

 

Key

Description

Sample Value

CMSUseCultureForBestPageInfoResult

Indicates whether the currently selected culture should have the highest priority when deciding which language version of a document should be displayed.

 

The default value is false, which means that accessing a document through the custom URL set for one of its specific culture versions will override and change the preferred culture accordingly.

 

If set to true, the currently selected culture will be reflected even when a culture‑specific document URL path is used.

<add key="CMSUseCultureForBestPageInfoResult" value="true" />

CMSRedirectLangToPrefix

This key indicates whether URLs with a language defined through a query string parameter should automatically be redirected to a corresponding URL with a language prefix.
 
Supported values are true and false. The default value is true.

<add key="CMSRedirectLangToPrefix" value="false" />

 
Special settings for query string parameter names

 

You can use the following keys to change certain query string parameter names:

 

Key

Description

Sample Value

CMSLanguageParameterName

Changes the name of the query string parameter used to set the culture. For example, this allows you to get Home?sprache=de-de instead of the default Home?lang=de-de.

 

The default value is lang.

<add key="CMSLanguageParameterName" value="sprache" />

CMSAliasPathParameterName

Changes the name of the aliaspath query string parameter so that you get products.aspx?ap=/products/myproduct instead of the default products.aspx?aliaspath=/products/myproduct.

 

The default value is aliaspath.

<add key="CMSAliasPathParameterName" value="ap" />

 
Special settings for transaction isolation

 

You will use the following settings only in special cases when you encounter problems with deadlocks when updating a document:

 

Key

Description

Sample Value

CMSTransactionIsolationLevel

Isolation level for explicit transactions.
 

The default value is ReadUncommitted.

<add key="CMSTransactionIsolationLevel" value="ReadCommitted" />

 

CMSDefaultIsolationLevel

Isolation level for all queries, even without transactions.

 

The default value is ReadUncommitted.

<add key="CMSDefaultIsolationLevel" value="ReadUncommitted" />

CMSUseDefaultIsolationLevelOnlyWithOpenTransactions

If true, the default isolation level is used only when some transaction is already running.

 

The default value is true.

<add key="CMSUseDefaultIsolationLevelOnlyWithOpenTransactions" value="true" />

CMSAllowSimultaneousTransactions

If false, there can be only one transaction running at the same time.

 

The default value is true.

<add key="CMSAllowSimultaneousTransactions" value="true" />

CMSMaxTransactionWaitTimeout

Indicates how many seconds a transaction should wait for completion of another running transaction if simultaneous transactions are not allowed.

 

The default value is 1.

<add key="CMSMaxTransactionWaitTimeout" value="1" />

 
Special settings for the scheduler

 

By adding the following keys to your web.config, you can configure the Scheduler:
 

Key

Description

Sample Value

CMSUseAutomaticScheduler

Indicates if automatic scheduling should be used. When enabled, the scheduler periodically requests the cmspages/scheduler.aspx page which ensures that scheduled tasks are processed regularly, even if there is no website activity.

 

If turned off (false - by default), tasks are processed at the end of standard page requests.

<add key="CMSUseAutomaticScheduler" value="true" />

CMSRunSchedulerWithinRequest

If true (the default value), the scheduler is executed within the standard EndRequest event of a page. If false, the scheduler is executed via the ~/cmspages/scheduler.aspx page.

<add key="CMSRunSchedulerWithinRequest" value="false" />

CMSSchedulerURL

URL of the physical location of the scheduler.aspx page.

 

The default value is ~/cmspages/scheduler.aspx

<add key="CMSSchedulerURL" value="https://domain/cmspages/scheduler.aspx" />

CMSSchedulerAcceptAllCertificates

If true, all security certificates (including not valid ones) will be accepted when accessing the scheduler.aspx page via a secured protocol.

 

The default value is false.

<add key="CMSSchedulerAcceptAllCertificates" value="true" />

CMSSchedulerUserName

Sets the user name under which the scheduler.aspx page should be accessed (e.g. when using windows authentication).

 

The default value is "" (blank username).

<add key="CMSSchedulerUserName" value="office\myname" />

CMSSchedulerPassword

Sets the password for the user name under which the scheduler.aspx page should be accessed.

 

The default value is "" (blank password).

<add key="CMSSchedulerPassword" value="mypassword123" />

 
Special Contact management settings

 

By adding the following keys to your web.config, you can configure the behavior of the Contact management module.
 

Key

Description

Sample Value

CMSLogActivityImmediatelyToDB

If false, activities are logged to temporary files on the server disk, which are then regularly processed by a scheduled task. Otherwise, activities are logged immediately to the database.

 

The default value is false.

 

Please note that logging activities directly to the database may cause performance issues on high‑traffic websites.

<add key="CMSLogActivityImmediatelyToDB" value="true"/>

CMSEnableContactBots

Determines whether web bots (e.g. search engine crawlers) should be logged and tracked as contacts when they access the website.

 

The default value is false.

<add key="CMSEnableContactBots" value="true" />

 
Special settings for security

 
By adding the following keys to your web.config, you can configure certain Security options:
 

Key

Description

Sample Value

CMSCheckParameters

Indicates if parameter checking is allowed. Read this topic for more details.

 

The default value is false.

<add key="CMSCheckParameters" value="true"/>

CMSReportCheckParameters

If true, an exception reporting the parameters is thrown when the parameters do not match. Read this topic for more details.

 

The default value is false.

<add key="CMSReportCheckParameters" value="true"/>

CMSAcceptAllCertificates

Indicates whether application requests should accept all certificates (including invalid certificates). This key ensures the same as when both CMSSchedulerAcceptAllCertificates and CMSStagingAcceptAllCertificates were enabled at the same time.

 

The default value is false.

<add key="CMSAcceptAllCertificates" value="true"/>

CMSPasswordSalt

The password salt is a string that is appended to user passwords before they are hashed (to improve security). By default, it always contains the randomly generated GUID of the given user. The content of this key is added after the GUID, so it can be used to further increase the length of the salt.

 

This is only applied if you store passwords using the SHA2 with salt format, which can be configured in Site Manager -> Settings -> Membership & Security -> Passwords -> Password format.

<add key="CMSPasswordSalt" value="SaltText" />

CMSAllowOnlySimpleMacros

If true, only simple macros (i.e. those which do not need a security check) are allowed. All others will not be resolved. If true, CMSTextBox does not add security.

 

The default value is false.

<add key="CMSAllowOnlySimpleMacros" value="true"/>

 

Special settings for the Smart search module

 

The following keys can be used to configure the Smart search module:

 

Key

Description

Sample Value

CMSSearchIndexPath

Sets the path of a custom directory where smart search index files should be physically stored.

<add key="CMSSearchIndexPath" value="App_Data\MyCustomIndexes" />

CMSSearchOnlyWhenContentPresent

Determines if smart searches should be performed only when there is at least one standard content keyword specified in the search expression. The default value is true.

 

Setting this key to false allows search expressions containing only special Lucene query syntax, i.e. direct field searches such as:

 

DocumentNodeID:(int)17

 

This key is now obsolete. The same result can be ensured by leaving the Block field-only search property disabled for individual Smart search results or Smart search dialog with results web parts.

<add key="CMSSearchOnlyWhenContentPresent" value="false" />

CMSCreateTemplateSearchTasks

If enabled, any changes made to a page template will automatically trigger an update of all documents that are based on the given template in the appropriate smart search indexes.

 

The default value is true.

 

You can set this key to false if you wish to improve performance or save resources in scenarios where you have a very large number of documents on your website that share the same page template. This way, the system will no longer perform bulk updates of documents in the search index whenever their template is modified.

 

Disabling this key will mean that your document index will not reflect changes to the template (e.g. if you add static text to the template through a web part) until the given documents are updated for some other reason, or the entire index is rebuilt.

 

The key only affects changes to page templates. Editing the content of editable regions on a specific document will always cause it to be updated in the index.

<add key="CMSCreateTemplateSearchTasks" value="false" />

CMSProcessSearchTasksByScheduler

By default, the smart search creates and runs indexing tasks immediately whenever content covered by a search index is created or modified.

 

If you set this key to true, the system does NOT run indexing tasks upon creation — they need to be processed periodically, for example using the Execute search tasks scheduled task.

 

The default value is false.

<add key="CMSProcessSearchTasksByScheduler" value="true" />

CMSSmartSearchLockPollInterval

Specifies how often (time in milliseconds) the smart search indexer tries to acquire a lock on an index file.

 

The default value of this key is 500 milliseconds.

 

You should lower the value if the following exception gets logged into your Event log.

 

Lock obtain timed out: CMS.SiteProvider.SearchLock

<add key="CMSSmartSearchLockPollInterval" value="500" />

CMSSmartSearchLockTimeout

Defines the timeout period (in milliseconds) during which the smart search indexer should try to acquire a lock on the index file.

 

The default value of this key is 1000 milliseconds.

 

You should increase the value if the following exception gets logged into your Event log.

 

Lock obtain timed out: CMS.SiteProvider.SearchLock

<add key="CMSSmartSearchLockTimeout" value="1000" />

 

You can also use the keys below to configure how Documents crawler search indexes access sites:

 

Key

Description

Sample Value

CMSCrawlerSearchDomain

Specifies the name of the domain that the crawler should use when indexing sites. This is most useful for web farm servers that do not have access to the main domain.

<add key="CMSCrawlerSearchDomain" value="domain_name" />

CMSCrawlerFormsUserName

Sets the user name under which the crawler indexes site documents. Documents for which the specified user does not have Read permissions will not be indexed.

 

If not defined, the default administrator user account is used.

<add key="CMSCrawlerFormsUserName" value="user_name" />

CMSCrawlerDomainUserName

Used instead of the CMSCrawlerFormsUserName key if Windows authentication is enabled.

<add key="CMSCrawlerDomainUserName" value="windows_user_name" />

CMSCrawlerDomainPassword

Contains the password for the account used by the crawler if Windows authentication is enabled.

<add key="CMSCrawlerDomainPassword" value="password" />

 

Special settings for the Translation services module

 

You can use the following key to configure the Translation services module:

 

Key

Description

Sample Value

CMSTranslationServicesUseCDATAForTransUnit

Use if you want to export XLIFF files without the CDATA notation.

<add key="CMSTranslationServicesUseCDATAForTransUnit" value="false" />

 
Special settings for user interface cultures

 
By adding the following keys to your web.config, you can configure UI cultures:
 

Key

Description

Sample Value

CMSDefaultSpellCheckerCulture

Specifies the default culture of the built-in spell-checker. This culture is used when the dictionary for the currently selected content culture is not found.

 

The default value is en-us.

<add key="CMSDefaultSpellCheckerCulture" value="en-US" />

CMSShowLogonCultureSelector

Indicates if the user interface logon page should display a drop-down list with available user interface languages.

 

The default value is true.

<add key="CMSShowLogonCultureSelector" value="false" />

CMSDefaultUICulture

Specifies the default UI culture. If you use this key, you also need to rename the ~\CMSResources\CMS.resx file to CMS.en-us.resx and the CMS.en-nz.resx file to CMS.resx. This is needed because the CMS.resx file is used when the (default) option is selected in users' Preferred user interface culture.

 

The default value is en-us.

<add key="CMSDefaultUICulture" value="en-nz"/>

CMSUseSQLResourceManagerAsPrimary

Changes the priority of used localization resource strings to:

1.custom.resx

2.cms.resx

3.database (Site Manager -> Development -> UI Cultures)

 

The default value is true.

<add key="CMSUseSQLResourceManagerAsPrimary" value="false" />

UICulture

Specifies the default user interface culture.

 

The default value is en-us.

<add key="UICulture" value="en-us"/>

 

Special settings for synchronization on web farms

 

By adding the following keys to your web.config, you can enable or disable web farm synchronization of certain kind of files stored in the file system:

 

Key

Description

Sample Value

CMSWebFarmEnabled

Indicates if Web farms are enabled (true) or not (false).

 

The default value is false.

<add key="CMSWebFarmEnabled" value="true"/>

CMSWebFarmServerName

Code name of the web farm server. This value is used for native web farm synchronization support.

 

The default value is "" (empty string).

<add key="CMSWebFarmServerName" value="server1" />

CMSWebFarmSynchronizeFiles

General key determining if files should be synchronized (true) or not (false). This key enables synchronization of:

 

Attachments

Meta files

Media files

Form files

Avatars

Forum attachments

 

The default value is true.

<add key="CMSWebFarmSynchronizeFiles" value="true" />

CMSWebFarmSynchronizeAttachments

Enables/disables synchronization of attachments.

 

The default value is true.

<add key="CMSWebFarmSynchronizeAttachments" value="true" />

CMSWebFarmSynchronizeMetaFiles

Enables/disables synchronization of meta files.

 

The default value is true.

<add key="CMSWebFarmSynchronizeMetaFiles" value="true" />

CMSWebFarmSynchronizeMediaFiles

Enables/disables synchronization of media files.

 

The default value is true.

<add key="CMSWebFarmSynchronizeMediaFiles" value="true" />

CMSWebFarmSynchronizeBizFormFiles

Enables/disables synchronization of form files.

 

The default value is true.

<add key="CMSWebFarmSynchronizeBizFormFiles" value="true" />

CMSWebFarmSynchronizeAvatars

Enables/disables synchronization of Avatars.

 

The default value is true.

<add key="CMSWebFarmSynchronizeAvatars" value="true" />

CMSWebFarmSynchronizeForumAttachments

Enables/disables synchronization of forum attachments.

 

The default value is true.

<add key="CMSWebFarmSynchronizeForumAttachments" value="true" />

CMSWebFarmSynchronizeDeleteFiles

Enables/disables synchronization of deleted files.

 

The default value is true.

<add key="CMSWebFarmSynchronizeDeleteFiles" value="true" />

CMSWebFarmMaxFileSize

If the CMSWebFarmSynchronizeFiles key is enabled, you can limit the maximal size of synchronized files using this key. The value is entered in kiloBytes and files larger than this value will not be synchronized.

 

The default value is 2147483647 (int.MaxValue).

<add key="CMSWebFarmMaxFileSize" value="1024" />

CMSWebFarmUpdateWithinRequest

If true, web farm servers are updated with changes made on the other servers once per request. If false, web farm servers can be updated based on the interval settings of the Synchronize web farm changes scheduled task - recommended for high-traffic sites.

 

The default value is true.

<add key="CMSWebFarmUpdateWithinRequest" value="false" />

CMSWebFarmUseDBUpdater

Indicates whether the database updater should be used.

<add key="CMSWebFarmUseDBUpdater" value="true" />

CMSWebFarmGenerateServers

If true, web farm servers will be generated automatically. You don't need to create them manually in the user interface.

<add key="CMSWebFarmGenerateServers" value="true" />

CMSWebFarmApplicationPhysicalPath

Path to the application on the disk used for synchronizing physical files.

<add key="CMSWebFarmApplicationPhysicalPath" value="C:\inetpub\wwwroot\KenticoCMS" />

CMSTeamDevelopmentEnabled

If true, turns on CMSWebFarmGenerateServers and CMSWebFarmUseDBUpdater settings

<add key="CMSTeamDevelopmentEnabled" value="true" />

 

Special settings for deployment to Windows Azure

 

By adding the following keys to your web.config, you can set up the deployment of your website to Windows Azure and configure its behaviour. For more information, please refer to the Windows Azure Deployment Guide.

 

Key

Description

Sample Value

CMSAzureProject

Must be set to true if you wish to run the application on Windows Azure.

 

True by default if the application is installed as a Windows Azure project, false in standard installations.

<add key="CMSAzureProject" value="true"/>

CMSAzureAccountName

Specifies the name of the storage account that the application will use for its file system. The account must belong to a valid Windows Azure subscription.

 

If you wish to run the application on the local emulator, enter devstoreaccount1 as the value.

<add key="CMSAzureAccountName" value="devstoreaccount1"/>

CMSAzureSharedKey

Must contain the primary access key of the storage account specified in the CMSAzureAccountName setting.

 

You can find the appropriate value for your storage account on the Windows Azure Management Portal.

<add key="CMSAzureSharedKey" value="Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw=="/>

CMSAzureBlobEndPoint

Sets the endpoint used for the connection to the blob service of the specified storage account. If you wish to use the default endpoint, remove the setting completely from the appropriate files.

<add key="CMSAzureBlobEndPoint" value="http://127.0.0.1:10000/devstoreaccount1"/>

CMSAzureQueueEndPoint

Sets the endpoint used for the connection to the queue service of the specified storage account. If you wish to use the default endpoint, remove the setting completely from the appropriate files.

<add key="CMSAzureQueueEndPoint" value="http://127.0.0.1:10001/devstoreaccount1"/>

CMSAzureTableEndPoint

Sets the endpoint used for the connection to the table service of the specified storage account. If you wish to use the default endpoint, remove the setting completely from the appropriate files.

<add key="CMSAzureTableEndPoint" value="http://127.0.0.1:10002/devstoreaccount1"/>

CMSAzureRootContainer

Specifies the name of the blob container that will serve as the root of the application's file system on the Windows Azure storage account.

 

This can be useful in scenarios where multiple applications use the same storage account.

 

The default value is cmsroot.

<add key="CMSAzureRootContainer" value="CustomRoot"/>

CMSAzurePublicContainer

Indicates if the blob container used to store the applications file system should be public. If set to true, it will be possible to access files directly through the URL of the appropriate blob service, for example:

 

<StorageAccountName>.blob.core.windows.net/cmsroot/corporatesite/media/imagelibrary/logo.png

<add key="CMSAzurePublicContainer" value="true"/>

 

If you wish to host the website itself on‑premise, but use a file system based on the Blob service of a Windows Azure storage account, you can specify the following settings:

 

Key

Description

Sample Value

CMSExternalStorageName

You can add this key to specify that the application should use a Windows Azure storage account for its file system. This can be done by setting the value to Azure.

 

It is not necessary to add this key if CMSAzureProject is set to true. Only use this option if you are setting up a hybrid scenario with the application itself hosted on‑premise outside of the Windows Azure cloud.

<add key="CMSExternalStorageName" value="Azure" />

CMSAzureTempPath

The folder specified by this key will be used to store temporary files on a local disk, e.g. when transferring large files to or from the storage account.

 

Do not use this key if the entire application is deployed as a Windows Azure hosted service.

<add key="CMSAzureTempPath" value="C:\AzureTemp" />

CMSAzureCachePath

Specifies a folder on a local disk where files requested from the storage account will be cached. This helps minimize the amount of blob storage operations, which saves time and resources.

 

Do not use this key if the entire application is deployed as a Windows Azure hosted service.

<add key="CMSAzureCachePath" value="C:\AzureCache" />

CMSDownloadBlobTimeout

Specifies the timeout interval in minutes for importing files from Windows Azure Blob storage into Kentico.

 

The default value is 1.5 minutes. Increase the interval if you encounter problems when importing large (about 2GB) files.

<add key="CMSDownloadBlobTimeout" value="50" />

 

Special settings for debugging

 

While debugging can be turned and configured on by means of settings in Site Manager -> Settings -> System -> Debug, it is also possible to perform this configuration by adding certain keys into your project's web.config file. These keys are listed and described together with the respective settings in the Development -> Debugging and system information chapter of this guide.

 

CMSDebugScheduler

If false, all the scheduler operations are excluded from debugs.

 

The default value is true.

<add key="CMSDebugScheduler" value="false"/>

CMSDebugFiles

Enables IO operation debugging and the IO tab in Site Manager -> Administration -> System -> Debug.

 

The default value is false.

<add key="CMSDebugFiles" value="true"/>

CMSDebugFilesLive

If enabled, IO operation debug information is also displayed at the bottom of each live site page. This option requires IO operation debugging to be enabled.

 

The default value is false.

<add key="CMSDebugFilesLive" value="true"/>

CMSDebugAllFiles

If enabled, IO operations called by pages of the administration interface (CMS Desk and Site Manager) will also be included in the IO operation debug. This option requires IO operation debugging to be enabled.

 

The default value is false.

<add key="CMSDebugAllFiles" value="true"/>

CMSDebugFilesLogLength

Sets the maximum length of the IO operation debug log on the Debug -> IO tab, i.e. the number of requests for which debug information is preserved and displayed on the tab. If empty, value of the Default log length setting (or the CMSDebugEverythingLogLength key) is used.

 

The default value is 10.

<add key="CMSDebugAllFiles" value="15"/>

CMSLogFiles

If enabled, the IO operation debug log is saved into the logfiles.log file in the ~\App_Data folder. This option does not require IO operation debugging to be enabled.

 

The default value is false.

<add key="CMSLogFiles" value="true"/>

 

Connection string

 

The database used by Kentico CMS engine is specified by the connection string CMSConnectionString in the /configuration/connectionStrings section. Here's an example of such connection string:

 

<add name="CMSConnectionString" connectionString="Persist Security Info=False;database=CMS;server=myserver;user id=sa;password=mypassword123;Current Language=English;Connection Timeout=120;" />