A Smartsite site is combination of a database, site files and registry settings. Database and site files play a part in the publication. Alltogether they are used for the CMS environment. The installation of all of them is possible through a single script. However, when migrating a site from one machine to another, there is no script environment. In that case you should re-install a site by your self. It's good practice to give the database, the root of the site files and the rootkey of registry settings the same name.
The database consists of tables, views, stored procedures and functions. The most important Table in the database is the Contents table, containing the hierarchic content of the site. Both the CMS Server and Publication Server connect to the database to add, edit and retrieve information.
The installation of the site's database can be done using sql scripts which generate the necessary database structure and which add some initial content. An other way to create a site's database is by restoring a back-up into the database.
The site files can be divided in three parts:
- Files used for the publication like images, scripts, css and other assets;
- Files used for the configuration of the publication like .NET config files
- Files used for the configuration of the webbased Smartsite Manager environment.
Site Files can be stored in any location which can act as a webroot. The site files are divided into two main foldes
The system folder contains a list of subfolders. Each of them contains configuration files for the CMS environment. The WWW folder is the actual webroot of the site. It contains, for example, the web.config which is used for the publication. In a developing stage, mulitple sites should be stored somewhere. Best practice is to store these sites in a folder like C:\Sites or D:\Sites.
The CMS Server uses settings in the registry. The site-specific setings are stored in the key:
Under this rootkey, a lot of subkeys and settings are created. However, for the installation of the site, the next settings are important.
The rootkey contains global settings of the CMS Server.
|Enabled||Enables the CMS Server instance of the site. Should be set to 1.|
|Connectionstring||Connectionstring to the site database. Security on connection should enable read and write access to the database.|
|RootPath||Path to the siteroot. For example: D:\Sites\<SiteName>\|
|ServerAddress||Address of the CMS Server: http:\<serveraddress>\cms\|
|InstanceID||Unique ID for this CMS Server Instance. A commonly used syntax is SERVERNAME.SITENAME.CMS|
|IISMetaPath||Identifier of the CMS instance under IIS. This value can be read from IIS Console. When the web-based Manager environment is started and this value is not properly configured, an error gives feedback which value to add to this registry setting. For example: /LM/W3SVC/2|
All events raises within the CMS Server are catched by the Outscaling Eventsubscriber. Events are queued and processed by the Outscaling Bacground Component to the StateSyncService, thus updating the Publication Server.
|Object||Registration of the Eventsubscriber catching all events: SixOutscalingII.EventListener.|
|Enabled||Enables the Event Subscriber. Value should be set to 1.|
|EventClasses||EventClasses that should be queued and synchronized with the Publication Server. Defaults to: ContentChange.Activation;ContentTypes;Outscaling;DataEditor;Security. As of iXperion 1.2 should be set to "*", since Outscaling implements its own event filtering.|
The Eventsubscriber catches all configured events and stores them in the eventqueue. The background-component sends the events to all subscribers of the CMS Server.
|Object||Registration of the Backgroundcomponent which processes all queued events: SixOutscalingII.Background.|
|Enabled||Enables the Background Component. Value should be set to 1.|
|Interval||Interval between background loops. For optimal synchronization of the Publication Server the interval should be set to one or a few seconds.|
|onEvent||The event on which the background component starts. Should be set to StartUp.|
|UseSeparateThread||Should be set to 1 to process queued events in a separate thread.|
|Object||Registration of the cmsWebserice object (service used when adding/changing items within the TestSuite): SixWebservices.cmsWebservice.|
|Enabled||Enables this webservice. Should be set to 1.|