Configuration file changes in Sitecore CMS 6.5.0 and DMS 2.0.0 rev. 111123 compared to Sitecore CMS 6.5.0 and DMS 2.0.0 rev. 110818
This update requires you to make changes to the following files:
- /Web.config
- /App_Config/Include/Sitecore.Analytics.config
The clean config files for Sitecore CMS 6.5.0 rev. 111123 and DMS 2.0.0 rev.111123 can be downloaded using the following links:
- Sitecore CMS 6.5.0 rev. 111123 Web.config file
- Sitecore DMS 2.0.0 rev. 111123 Sitecore.Analytics.config file
Changes to the Web.config file
The following changes have been made to the Web.config file of Sitecore CMS 6.5.0 rev. 111123 (Update-2) as compared to the Web.config file of Sitecore CMS 6.5.0 rev. 110818 (Update-1):
- In the <renderLayout> pipeline, a new processor named ExpandMasterPages has been added after the PageExtenders processor, so that the entire pipeline now looks like this:<renderLayout>The pipeline processor only expands master pages when necessary. Master pages are only expanded using the Page Editor (or Preview or the Debugger), and only when the LayoutPageEvent web.config setting is set to "preInit".
<processor type="Sitecore.Pipelines.PreprocessRequest.CheckIgnoreFlag, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.PageHandlers, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.SecurityCheck, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.InsertRenderings, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.PageExtenders, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.ExpandMasterPages, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.BuildTree, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.InsertSystemControls, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.InsertUnusedControls, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderLayout.BrowserCaching, Sitecore.Kernel"/>
</renderLayout> - Check if the <expandInitialFieldValue> pipeline contains a processor named CheckSharedField. If not, add the processor after the SkipStandardValueItems processor, so that the entire pipeline looks like this (assuming that you have not added or removed other processors):<expandInitialFieldValue help="Processors should derive from Sitecore.Pipelines.ExpandInitialFieldValue.ExpandInitialFieldValueProcessor">
<processor type="Sitecore.Pipelines.ExpandInitialFieldValue.SkipStandardValueItems, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.ExpandInitialFieldValue.CheckSharedField, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.ExpandInitialFieldValue.ReplaceVariables, Sitecore.Kernel"/>
</expandInitialFieldValue> - In the <getRenderingDatasource> pipeline, a new processor named SetFallbackDatasourceLocations has been added after the GetDatasourceLocation processor, so that the entire pipeline now looks like this:<getRenderingDatasource>
<processor type="Sitecore.Pipelines.GetRenderingDatasource.GetDatasourceLocation, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.GetRenderingDatasource.SetFallbackDatasourceLocations, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.GetRenderingDatasource.GetDatasourceTemplate, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.GetRenderingDatasource.GetTemplatesForSelection, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.GetRenderingDatasource.CheckDialogState, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.GetRenderingDatasource.GetDialogUrl, Sitecore.Kernel"/>
</getRenderingDatasource> - In the <renderField> pipeline, a new processor named GetTextFieldValue has been added after the GetFieldValue processor, so that the entire pipeline now looks like this:<renderField>
<processor type="Sitecore.Pipelines.RenderField.SetParameters, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetTextFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.ExpandLinks, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetImageFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetLinkFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetInternalLinkFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetMemoFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetDateFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.GetDocxFieldValue, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.AddBeforeAndAfterValues, Sitecore.Kernel"/>
<processor type="Sitecore.Pipelines.RenderField.RenderWebEditing, Sitecore.Kernel"/>
</renderField> - The description (desc) attribute for the mode parameter of the PublishAgent from scheduling section has been corrected and now looks like this:<!-- Agent to publish database periodically -->
<agent type="Sitecore.Tasks.PublishAgent" method="Run" interval="00:00:00">
<param desc="source database">master</param>
<param desc="target database">web</param>
<param desc="mode (full or smart or incremental)">incremental</param>
<param desc="languages">en, da</param>
</agent> - The following setting is obsolete and should be deleted from section <settings> if it is present:<!-- AUTHENTICATION TICKET TIMEOUT
Specifies the number of minutes before an authentication ticket
becomes invalid. The default is 480 minutes (8 hours).
-->
<setting name="Authentication.TicketTimeout" value="480"/> - Check if the <settings> section contains the following setting. If not, add it to the section:<!-- AUTHENTICATION CLIENT SESSION TIMEOUT
Specifies the number of minutes before Sitecore considers user authentication session tickets as expired.
This setting is only relevant for users logging in to Sitecore Client and when the Sitecore license has a limited number
of concurrent editors.
All expired sessions will automatically be removed when a new user tries to log in and the maximum
number of concurrent editors has been reached.
The default is 60 minutes (1 hour).
-->
<setting name="Authentication.ClientSessionTimeout" value="60"/> - Check if the <settings> section contains the following setting. If not, add it to the section:<!-- CACHING - DISABLE CACHE SIZE LIMITS
If true, Sitecore does not limit cache size growth and ignores any maximum cache sizes
specified in the web.config file.
Enabling this setting can improve the application's performance in 64-bit environments
by allowing Sitecore to take full advantage of the available memory.
After setting this value to true, monitor the system at regular intervals, as this
configuration can cause Sitecore to consume too much memory and cause Out Of Memory errors.
It is only recommended to set the setting to true in 64-bit environments.
Default value: false
-->
<setting name="Caching.DisableCacheSizeLimits" value="false"/> - Check if the <settings> section contains the following setting. If not, add it to the section:<!-- ENABLE SITE.CONFIG FILES
If true, the SiteResolver pipeline processor checks for the existence of a "site.config"
file in the physical subdirectory corresponding to the requested URL. If a "site.config"
file exists, Sitecore uses that file to determine the context site (Sitecore.Context.Site)
for the current request.
For example, when processing a request for the URL http://site.com/parent/child.html,
Sitecore first checks for the existence of <webroot>/parent/site.config.
Syntax: The site.config files should contain the following XML markup:
<site reference="[name of the site definition from the web.config]"/>
Default value: false
-->
<setting name="EnableSiteConfigFiles" value="false"/> - Check if the <settings> section contains the following setting. If not, add it to the section:<!-- MEDIA - CACHE FILE MEDIA BY MODIFIED DATE
If true, in addition to varying by the standard media request parameters such as height and width,
Sitecore varies media cache entries for file-based media by both file path and the last modification
date of the media file.
If false, Sitecore varies file media cache entries only by file path and standard media request
parameters and does not account for the last modification date of the file. A false value decreases
the number of file system I/O operations performed for each media request, but could cause Sitecore
to serve stale data for file media items if a process other than the Sitecore CMS user interfaces
initiated that change.
Default value: true
-->
<setting name="Media.CacheFileMediaByModifiedDate" value="true"/> - Check if the <settings> section contains the following two settings. If not, add them to the section:<!-- MEDIA - RESIZING MAX HEIGHT
Maximum height for dynamically resized images.
If the requested height exceeds this value, Sitecore resizes the image to this height.
A value of 0 disables this height limit.
Default value: 1024
-->
<setting name="Media.Resizing.MaxHeight" value="1024"/>
<!-- MEDIA - RESIZING MAX WIDTH
Maximum width for dynamically resized images.
If the requested width exceeds this value, Sitecore resizes the image to this width.
A value of 0 disables this width limit.
Default value: 1280
-->
<setting name="Media.Resizing.MaxWidth" value="1280"/> - Check if the <settings> section contains the following setting. If not, add it to the section:<!-- SERIALIZATION - INVALID FILE NAME CHARS
When generating file names that correspond to item names, the serialization API encodes the "$" and "%" characters, as well
as any characters that are invalid in path names as returned by the System.IO.Path.GetInvalidFileNameChars() method.
You can use this setting to specify additional characters that must be encoded, such as to meet the requirements of a source
control system that does not allow specific characters in file names.
Default value: ""
-->
<setting name="Serialization.InvalidFileNameChars" value=""/> - Check if the <system.webServer><modules> section contains the following node. If not, add it to the section, just before the Sitecore.Nexus.Web.HttpModule:<add type="Sitecore.Web.RewriteModule, Sitecore.Kernel" name="SitecoreRewriteModule"/>
- Check if the <system.web><httpModules> section contains the following node. If not, add it to the section, just before the Sitecore.Nexus.Web.HttpModule:<add type="Sitecore.Web.RewriteModule, Sitecore.Kernel" name="SitecoreRewriteModule"/>
- In the previous CMS 6.5 releases, .NET tracing was enabled by default, which is not recommended unless you are troubleshooting problems. It is recommended to check that value of the setting and set enabled="false" if it is currently set to true:<trace enabled="false" requestLimit="50" pageOutput="false" traceMode="SortByTime" localOnly="true"/>
Changes to the Analytics.config file
Below is the list of changes made to the Sitecore.Analytics.config file of DMS 2.0.0 rev. 111123 as compared to the Sitecore.Analytics.config file of DMS 2.0.0 rev. 110818:
- Check if the following setting is present in the file. If not, add it to the <settings> section:<!-- ANALYTICS FORWARDED REQUEST HTTP HEADER
Specifies the name of an HTTP header variable containing the IP address of the webclient.
For use only behind load-balancers that mask web client IP addresses from webservers.
IMPORTANT: If used improperly, this setting allows IP address spoofing.
Typical values are "X-Forwarded-For" and "X-Real-IP".
Default value: "" (disabled)
-->
<setting name="Analytics.ForwardedRequestHttpHeader" value=""/> - In the <createVisit> pipeline, a new processor named XForwardedFor has been added before the UpdateGeoIpData processor, so that the entire pipeline now looks like this:<createVisit>
<processor type="Sitecore.Analytics.Pipelines.CreateVisits.XForwardedFor,Sitecore.Analytics"/>
<processor type="Sitecore.Analytics.Pipelines.CreateVisits.UpdateGeoIpData,Sitecore.Analytics"/>
<processor type="Sitecore.Analytics.Pipelines.CreateVisits.ParseReferrer,Sitecore.Analytics"/>
<processor type="Sitecore.Analytics.Pipelines.CreateVisits.SetTrafficType,Sitecore.Analytics"/>
</createVisit>