November 25, 2010

How to use the multisite manager

After some experimentation with the multi sites in sitecore and the Multi Sites Manager package, here are some tips.

Using the multi site (in the web.config)

You need to add your sites in the node in the web.config. But you need to add your websites just after the shell and login nodes . If you put your website in first position, you will experience errors with the login of the sitecore admin.

Example:
<sites>
 <site name="shell" virtualFolder="/sitecore/shell" physicalFolder="/sitecore/shell" rootPath="/sitecore/content" startItem="/home" language="en" database="core" domain="sitecore" loginPage="/sitecore/login" content="master" contentStartItem="/Home" enableWorkflow="true" xmlControlPage="/sitecore/shell/default.aspx" browserTitle="Sitecore" htmlCacheSize="2MB" registryCacheSize="3MB" viewStateCacheSize="200KB" xslCacheSize="5MB"/>
 <site name="login" virtualFolder="/sitecore/login" physicalFolder="/sitecore/login" database="core" domain="sitecore"/>
 <site name="myWebsite" hostName="myWebsite.be" virtualFolder="/" physicalFolder="/" startItem="/" contentStartItem="/default" rootPath="/sitecore/content/myWebSite" database="web" domain="sitecore" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />
 <site name="testing" virtualFolder="/sitecore/testing" physicalFolder="/sitecore/testing" rootPath="/sitecore/content" database="master" domain="sitecore" enableWorkflow="true"/>

Using the Multi Site Manager


To create a new website, follow these steps:
Add a new website and complete these fields: rootPath, startItem and the hostname
Publish the full website
Flush the sites!! (this button will create the new sites. Flush the sites after every modification)



Important

With the multi-sites manager, if you use different domains for different websites, you will probably have a "access is denied" error. Normally you have a security feature to access the sites. To show this column in the security editor, click on "Columns" and check "Site Enter".
But this functionality doesn't work ;-D



How to resolve the "access is denied" error?

You can just replace:
<!- SITES ->
<siteManager defaultProvider="config">
 <providers>
  <clear/>
  <add name="config" type="Sitecore.Sites.ConfigSiteProvider, Sitecore.Kernel" siteList="sites" checkSecurity="false"/>
 </providers>
</siteManager>

by

<!- SITES ->
<siteManager defaultProvider="config">
 <providers>
  <clear/>
  <add name="config" type="Sitecore.Sites.ConfigSiteProviderHack, MultiSitesManager" siteList="sites" checkSecurity="false"/>
 </providers>
</siteManager>

No comments:

Post a Comment