Loading...
Area: Optimizely CMS
Applies to versions: 10-11
Other versions:
ARCHIVED This content is retired and no longer maintained. See the version selector for other versions of this topic.

Configuring episerver

Recommended reading 

The following XML pseudocode describes the <episerver> section of the configuration file. The Configuration topic describes the syntax used in the description of the configuration elements.

In this topic

<imageEditor>

<imageEditor enabled="bool"
             windowHeight="int"
             windowWidth="int">
   <sizePresets>
      <preset height="int"
              name="string"
              languageKey="string"              
              width="int" />
      ...
   </sizePresets>
</imageEditor>

<imageEditor> element attributes

Note: The imageEditor element is optional. Default configuration values shown in the following table are set in code. These values are overridden if other values are specified in the episerver section of web.config.

Name Default value Description
enabled  true Indicates if the image editor is used in edit view.
windowHeight  600 The preferred height and width of the image editor.
This is the final fallback; settings on the property level have precedence.
windowWidth  900

The values for the imageEditor section have defaults defined in code equivalent to the following:

<imageEditor windowWidth="900" windowHeight="600" enabled="true">
  <sizePresets>
    <preset width="320" height="240" />
    <preset width="640" height="480" />
  </sizePresets>
</imageEditor>

 <preset> element attributes

Name style Default value Description
height    The image preset height in pixels. 
name    Name shown in the preset selection list. If not specified, the name shown is width x height.
languageKey    A language key to where localized name strings is found.
width    The image preset width in pixels.

<linkValidator>

<linkValidator externalLinkErrorThreshold="int"
               internalLinkValidation="EPiServer.Configuration.LinkValidator.ValidationType"
               maximumRunTime="TimeSpan"
               proxyAddress="string"
               proxyDomain="string"
               proxyPassword="string"
               proxyUser="string"
               recheckInterval="TimeSpan"
               userAgent="string" />
   <excludePatterns>      
        <add regex="string" />
      ...
   </excludePatterns>
</linkValidator>

<linkValidator> element attributes

Name style Default value Description
externalLinkErrorThreshold  100 The threshold for the number of consecutive errors that need to occur before the job stops.
internalLinkValidation  ValidationType.Api How the link validator validates internal links. ValidationType enum has the following values:
  • Off. Do not validate internal links.
  • Api. Validate by API by calling GetPage for the referenced page and verify that the page exists. Does not detect errors that occur in page template code.
  • Request. Validate by HTTP request. This method simulates clicking the link. Detects errors that occur in page template code.
maximumRunTime    The maximum time the job runs at one time.
proxyAddress    Optional web proxy address for the link checker to use when validating links.
proxyDomain    Optional web proxy domain to authenticate the proxy connection.
proxyPassword    Optional web proxy password to authenticate the proxy connection.
proxyUser    Optional web proxy user to authenticate proxy connection.
recheckInterval  7.00:00 The time that must elapse before a link is rechecked.
userAgent  EPiServer Link Checker The user agent string to use when checking validity of links.

<add> element attributes

Name style Default value Description
regex    Required. A regular expression matching a link that should be ignored by the link validation.

<contentProvider>

<contentProvider>
   <providers>
      <add capabilities="EPiServer.Core.ContentProviderCapabilities"
           entryPoint="int"
           iconPath="string"
           name="string"
           type="string"
           wastebasketName=string />
      ...
   </providers>
</contentProvider>

<add> element attributes

Name style Default value Description
capabilities  ContentProviderCapabilities.None The capabilites that are supported by this content provider. ContentProviderCapabilities is a Flags enum, meaning that you can combine any number of values.
entryPoint    Required. The ID of the page that acts as a container for the contents delivered from this content provider.
iconPath    The path to an icon image file, which is shown in the page tree to distinguish pages served by this content provider instance. Make the path a relative to the theme folder App_Themes/Default/Images/ExplorerTree/PageTree/
name    Identify the content provider. If you set name to default, that content provider replaces the DefaulteProvider as the default content provider.
type    The full classname of the page provider class.
wastebasketName    The name of the wastebasket for this provider instance. If this attribute is not present the name is equal to the value of the name attribute.

<applicationSettings>

<applicationSettings
              activityArchiveRetentionPeriod="int"
              backgroundCopyThreshold="int"
              disableVersionDeletion="bool"
              enableScheduler="bool"
              globalErrorHandling="RemoteOnly|On|Off"
              googleMapsApiV3Url="string"
              httpCacheability="System.Web.HttpCacheability"
              httpCacheExpiration="TimeSpan"
              httpCacheVaryByCustom="string"
              httpCacheVaryByParams="string"
              IISHiddenSegments="string"
              mirroringMonitoringMaxDataPerJob="int"
              mirroringSource="string"
              operationCompatibility="EPiServer.Configuration.EPiServerCompatibility"
              pageCacheSlidingExpiration="TimeSpan"
              pageUseBrowserLanguagePreferences="bool"
              pageValidatePageTemplate="bool"
              permanentEditRetainPeriod="TimeSpan"
              remotePageCacheSlidingExpiration="TimeSpan"
              remoteWebServiceCulture="int"
              sgmlParserDecodeCharEntities="bool"
              stringCompressionThreshold="int"
              stringDelayedLoadThreshold="int"
              subscriptionHandler="string"
              uiEditorCssPaths="~/Static/css/Editor.css"
              uiKeepUserLoggedOn="bool"
              uiMaxVersions="int"
              uiOptimizeTreeForSpeed="bool"
              uiSafeHtmlTags="string"
              uiShowGlobalizationUserInterface="bool"
              uiTheme="string"
              uiUrl="Uri"
              UrlPreventRewriteAttribute="string"
              urlRebaseKind="string"
              urlRewriteExtension="string"
              utilUrl="Uri"
               />

<applicationSettings> element attributes

Name style Default value Description
activityArchiveRetentionPeriod 12 The attribute value represents the number of months for which to retain activities in the archive. See Activity logging for more information.
  • To disable archiving completely, set the value to 0.
  • To disable the cleanup of the archive and let activities remain indefinitely, set the value to -1. This setting is not recommended unless external safeguards are put in place.
backgroundCopyThreshold  50 The maximum number of pages that you can copy in the current thread. If you request a copy operation with a larger number of pages than the threshold,  the copy operation performs in a background thread.
disableVersionDeletion  false Set to true to disable tools that allow page and file versions to be deleted.
enableModelSyncCommit  true Set to false to disable the commit phase when synchronizing typed models. Block types and page types will not be updated automatically in the database. This can be useful when a team of developers shares a database.
enableScheduler  true Set to false to disable this application's connection to the scheduler service.
Use this setting typically in a load-balanced scenario when you want to ensure that scheduled jobs are run only on a specific machine.
globalErrorHandling  RemoteOnly Set one of the following values for Episerver CMS error handling:
  • On. Episerver CMS hides the original error and a generic error message is displayed instead.
  • Off. Errors are not handled by Episerver CMS. Errors are handled by ASP.NET.
  • RemoteOnly. Error handling is On for all visitors except for those accessing the site from the web server itself.
googleMapsApiV3Url  http://maps.google.com/maps/api/js?v=3.1&sensor=false The URL for Google Maps API v3, possibly site-specific.
httpCacheability  HttpCacheability.Server The HttpCacheability enum for the Cache-Control HTTP header.
httpCacheExpiration  0:0:0 The amount of time that a page is cached in the outputcache. This value is set in the http request policy. It activates both client-side caching and server caching outputcache. Policy only applies to anonymous users and when http request method is GET. The cache automatically updates when you make changes to a page in Episerver CMS.
httpCacheVaryByCustom  browser A custom text string to vary cached output responses by. Passed to Response.Cache.SetVaryByCustom.
httpCacheVaryByParams  id The parameters to the page (in other words query string) that the cache should vary by. HttpVaryByParams should read httpCacheVaryByParams. Forwarded to Response.Cache.SetVaryByParams. Only used in WebForms templates, not MVC.
IISHiddenSegments  bin, app_code, app_globalresources, app_localresources, app_webreferences, app_data, app_browsers Defines IIS’ hidden segments in comma-separated format.
mirroringMonitoringMaxDataPerJob  1000 The maximum number of monitoring data messages that are kept during a mirroring session. For example, if mirroringMonitoringMaxDataPerJob is set to 100 and the 101st monitoring data messsage is received, the oldest/first message will be pushed out of the log.
mirroringSource  mirroringSourceEndpoint The name endpoint to use when communicating with the mirroring service. A client endpoint with the specified name must be registered in the <system.serviceModel> element in web.config.
operationCompatibility  EPiServerCompatibility.None A set of EPiServerCompatibilty flags that enables compatibility features.
  • None. There are no compatibility features enabled.
  • DynamicProperties . Enables dynamic properties, both in the user interface and in the API. Dynamic properties only support the pre CMS 7 user interface.
  • LongStringLegacyControl. Forces long string to create text area in legacy WebForms user interfaces.
  • Full. Enable all compatibility flags. Not recommended.
pageCacheSlidingExpiration  12:0:0 The page cache for the local database.
pageUseBrowserLanguagePreferences  false Determines if the browser language should define which language is used.
pageValidateTemplate  true Defines if the current template has to match the page type template.
permanentEditRetainPeriod  30.0:0:0 The amount of time that a page's permanent edit status should be retained. The permanent edit status will be cleared by the Remove Permanent Editing scheduled job if the status has been active longer than the time span specified in permanentEditRetainPeriod.
remotePageCacheSlidingExpiration  2:0:0 The page cache for remote sites.
remoteWebServiceCulture  0 The culture to be used when communicating with a remote web service.
sgmlParserDecodeCharEntities  false Defines whether SgmlParser should decode character entitities (like "&#32;") or not.
stringCompressionThreshold  0 The threshold value for the number of characters required in properties deriving from PropertyLongString to enable compression. A value of 0 turns string compression off.
stringDelayedLoadThreshold  255 The threshold value for the number of characters required in properties deriving from PropertyLongString to enable delayed loading of the property value. A value of 0 turns delayed loading off.
subscriptionHandler  EPiServer.Personalization.SubscriptionMail, EPiServer Full class name to the class that should handle subscription mail. The class must implement ISubscriptionHandler.
uiEditorCssPaths  ~/Static/css/Editor.css Defines which css file to use when rendering the editor.
uiKeepUserLoggedOn  true Sets if the current Windows-authenticated user must reauthenticate after session timeout.
uiMaxVersions  20 The maximum number of page versions that Episerver will retain. Set to 0 for unlimited number of versions.
uiOptimizeTreeForSpeed  false Defines if page tree controls should evaluate if tree nodes have children. If set to false, tree controls will not evaluate if a node has children when it becomes visible. Only nodes that have children will display an expand icon ([+]), i.e. [+]NodeName.
If set to true, tree controls will not include language or access rights when evaluating if a node has children when it becomes visible. This behavior might increase performance when displaying large tree structures.
uiSafeHtmlTags  b,i,u,br Defines which tags should not be encoded.
uiShowGlobalizationUserInterface  false Defines if the globalization tools should be available in the user interface.
uiTheme  String.Empty Setting for what graphical theme should be used. The value must correspond to a name of a subfolder in the App_Themes folder. The Default theme is used if no other value is specified.
uiUrl  ~/UI/CMS/ Required. The URL to the relocateable UI  folder. It must be a web URL, and may include scheme and port. It must end with /CMS/.
UrlPreventRewriteAttribute  EPiNoRewrite This setting only applies to the Episerver CMS 5 editor. For internal use, do not use. Defines the HTML attribute name that is used by the CMS 5 legacy editor when writing / parsing content.
urlRebaseKind  Default Defines the type of rebasing to do for links when using Friendly URLs. Possible values are any combination of EPiServer.UrlBuilder.RebaseKind flags.
urlRewriteExtension  String.Empty Defines an extension that is mapped to ASP.NET for the URL. During the URL rewrite step, before a HTTP response is sent to the client, the urlRewriteExtension value will be added as a suffix to all links that points to pages on the site.
Likewise, during the URL rewrite step at the beginning of a request, the suffix is removed.
utilUrl  ~/Util/ Required. The URL to the relocateable Util folder. It must be a web URL, and may include scheme and port.

<visitorGroup>

<visitorGroup>
   <searchKeyWordCriteria pattern="string" />
</visitorGroup>

<searchKeyWordCriteria> element attributes

Name style Default value Description
pattern ([#?&](amp;)?(q|p)=(?<query>[^&]+)) Regular expression used by the Search keyword visitor group criterion to extract search keywords from the referrer adress. If you choose to write your own regex to replace the default one, make sure that each keyword is caught by the "?<query>" capture group.
Do you find this information helpful? Please log in to provide feedback.

Last updated: May 25, 2021

Recommended reading