London Dev Meetup Rescheduled! Due to unavoidable reasons, the event has been moved to 21st May. Speakers remain the same—any changes will be communicated. Seats are limited—register here to secure your spot!
London Dev Meetup Rescheduled! Due to unavoidable reasons, the event has been moved to 21st May. Speakers remain the same—any changes will be communicated. Seats are limited—register here to secure your spot!
Product version: |
EPiServer CMS 5 SP1 |
---|---|
Document version: |
1.2 |
Document creation date: |
27-06-2007 |
Document last saved: |
11-03-2008 |
EPiServer CMS 5 Enterprise is a solution that shares the same file structure and can store different types of information on the website in the same database. The tech notes, Configuring EPiServer CMS 5 Enterprise describes the configuration and the technology behind EPiServer CMS 5 Enterprise.
EPiServer CMS 5 Enterprise is intended for environments that have several similar Web sites set up that want to share information. It is possible to link information from one Web site to another and edit every Web site in Edit mode.
To enable Enterprise functions, an EPiServer CMS 5 Enterprise license is required. There are two different types of licenses:
The Enterprise license can be used to run a number of different Web sites on the same server without sharing information between the sites, for example, the Enterprise license is used to purchase multiple EPiServer CMS 5 licenses. This does not require extra administration and will not be mentioned in this document.
This is the actual Enterprise configuration. Its purpose is to allow files and information to be shared between Web sites. This means that the Web sites will share the same database and set of files. In the Internet Information Server each site's home directory will be mapped to the same directory on the local hard drive.
This configuration has the following restrictions:
To install EPiServer CMS 5 Enterprise a few extra steps need to be performed when compared to the EPiServer Professional installation.
This is a regular EPiServer CMS 5 installation using an Enterprise license file. For installation instructions, see the technical note, "EPiServer CMS 5 Installation Instructions."
To set up multiple Web sites follow the instructions below:
<site applicationId="/LM/W3SVC/123/ROOT" description="Example Site 1">
<siteSettings
siteShortName="ExampleSite1"
enableScheduler="true"
enableEvents="true"
enableRemoteEvents="true"
eventSubscriberUrl="net.pipe://PublicContentMaster1/
EventSubscriber"
pageStartId="0"
siteUrl=http://enterprise1/
uiUrl=http://enterprise1/yourUI/
utilUrl=http://enterprise1/Util/
pageWastebasketId="3"
pageRootId="2"
pagecategoryId="5"
siteDisplayName="Example Site 1" />
</site>
<site applicationId="" description="Example Site 2">
<siteSettings
siteShortName="ExampleSite2"
enableScheduler="true"
enableEvents="true"
enableRemoteEvents="true"
eventSubscriberUrl="net.pipe://PublicContentMaster2/
EventSubscriber"
pageStartId="0"
siteUrl=http://enterprise2/
uiUrl=http://enterprise2/yourUI/
utilUrl=http://enterprise2/Util/
pageWastebasketId="3"
pageRootId="2"
pagecategoryId="5"
siteDisplayName="Example Site 2" />
</site>
<site applicationId="/LM/W3SVC/123/ROOT" description="Example Site 1">
</site>
<site applicationId="" description="Example Site 2">
</site>
If you want to use a different page template for the start page of a new Enterprise Web site, this is not supported through configuration. It can be addressed by overriding the method GetDefaultDocuments in your global.asax.cs file. You need to return a different set of default documents based on the current settings section.
The unique site configuration information for each site will be stored in a section in the web.config file under <Sites>. For example, the site running under IIS instance 1 could have a section similar to the one below:
<episerver>
<sites>
<site
applicationId="/LM/W3SVC/1097029768/Root"
description="Example Site">
<siteSettings
siteShortName="ExampleSite"
siteUrl="http://enterprise2/"
uiUrl="http://enterprise2/yourui/"
utilUrl="http://enterprise2/Util/"
siteDisplayName="Enterprise2"
uploadDir="~/upload/"
pageFolderVirtualPathProvider="EPiServerPageVPP"
uiTheme=""
pageWastebasketId="2"
pageOfficeStartId="0"
uiMaxVersions="0"
uiVersionMerging="true"
pageValidateTemplate="false"
uiKeepUserLoggedOn="true"
...=""
/>
</site>
</sites>
</episerver>
NOTE: Each Web site specifies all of it’s parameters independently of others.
If you are running in a load-balanced scenario, you need to make sure that the load-balanced sites receive the same application ID and site short name (applicationID and siteShortName attributes are shown above) as the master Web site. If you are running Windows Server 2003, the easiest way to accomplish this is to use the Save Configuration to a File menu option in IIS Manager from the master site, and then create the slave site with the function New > Web Site (from file).
If you are running Windows 2000, you may need to use MetaEdit or a similar tool. MetaEdit can be downloaded from www.microsoft.com.
A feature that the Enterprise edition has introduced is intelligent local cache updates. From a .NET viewpoint, all your enterprise Web sites are completely separate applications, running in their own appDomains. Since all sites share the same database and may be affected by page updates on other sites, the system needs to be able to update page information between all the enterprise Web sites.
Prior to EPiServer 4.40, you needed to configure remote web sites in EPiServer to let these Web sites update cache information between sites. This process is still needed if you need to communicate with Web sites running on another server, but for local updates, the new local cache update feature takes care of this without requiring further configuration.
This update process is handled by the EPiServer Scheduler Service. The main purpose of this service is to handle jobs that are scheduled to run at a specific time without manual intervention. Now it is also used to notify sites of cache updates.
When a site starts, it registers its site short name in the database (if it's not already there). It then reads all site short names back from the database and registers an interest with the Scheduler Service in receiving cache notifications for each one.
If the cache update mechanism does not appear to work, the cause is most likely that the EPiServer Scheduler Service has not started or that the enableEvents or enableRemoteEvents attributes are set to false in the web.config file on one or more of the Web sites.
A possible misconception regarding authentication in Enterprise solutions is that logging out on one site while being logged in on other sites would log you out from these Web sites as well. This is not the case. When logging out from an Enterprise site, for example, to leave the computer, make sure to log out from other Web sites.