18
<site name="xxx" inherits="website" hostName="xxx.local" 
    virtualFolder="/" 
    physicalFolder="/" 
    targetHostName="xxx.local" 
    scheme="https" 
    rootPath="/sitecore/content/xxx" 
    startItem="/Home" 
    database="master" 
    domain="xxx" 
    enableContextualLinks="true" 
    enableItemLanguageFallback="true" />

The site section of the Sitecore configuration file, what is the usage of the following settings -

  1. inherits
  2. virtualFolder
  3. physicalFolder

3 Answers 3

4

In addition to the description provided in Szymon's answer, you can use physicalFolder and virtualFolder to define part of your website url.
i.e. hostname/virtualFolder/item_path

We have used this senario in complex multi-site implementation, instead of language property. We used virtualFolder & physicalFolder to define our language portion of the url.

1
  • It's worth noting that it does not appear that you can just use virtualFolder, you have to use physicalFolder as well or you get a NRE. No time to investigate why this is the case.
    – jrap
    Sep 25, 2017 at 19:00
9

physical folder

The physical location of files for the site. The path should be specified as a path relative to Sitecore root.

virtual folder

This prefix is added after the host name definition and is used to resolve sites according to incoming URLs. This is the second attribute, along with the hostName, which is used to define a unique site.

Complete reference available here

inherits

Allows to inherit attributes from other site definition. Source with example

5

Sitecore's Site Definition configuraiton creates multisite capabilities that mimic what you can do in IIS.

virtualFolder allows you to create a Site Defintion for a URL that doesn't exist on the filesystem and instead, only exists virtually, but allows you to point it to a different Root and Start item.

physicalFolder allows you to create a Site Definition bound by the file system. A common example is the /sitecore/shell/ or shell site. When you log into Sitecore, this is the site that you log into.

inherits is a fancy way of inheriting properties from one site definition to another. This way, if you have complex settings and need to replicate you can. One great feature of inherit is that you can override specific attributes and still carry over the others not specified.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.