Как определить сайт MVC в Sitecore (мультисайт)

В настоящее время я использую 7.1 обновление 2, запустив несколько сайтов с помощью веб-форм. Я начинаю новый сайт и хочу использовать MVC, но не могу заставить его работать; тем не менее, я могу заставить "сайт" по умолчанию использовать MVC, но не собственный сайт.

Например, скажем, у меня есть два сайта, site1 и site2, site1 - это веб-формы и работает нормально, как мне определить "site2", который является MVC? Не уверен, какое значение должно быть в свойстве "omicFolder". Или сайт должен быть определен где-то еще.

Спасибо

<site name="site1"
  targetHostName="site1.com"
  hostName="site1.com"
  virtualFolder="/"
  physicalFolder="/site1"
  rootPath="/sitecore/content/site1"
  startItem="/Home"
  language="en"
  database="master"
  domain="extranet"
  allowDebug="true"
  enablePreview="true"
  enableWebEdit="true"
  enableDebugger="true"
  enableWorkflow="true"
  patch:before="site[@name='website']" />

1 ответ

Решение

Параметр PhysicalFolder позволит вам указать физический путь, по которому Sitecore будет искать любые физические файлы, необходимые для указанного сайта. Это один из вариантов, который можно использовать для организации физических файлов для многоузловых экземпляров.

В комментариях к web.config вы увидите следующее определение:

    physicalFolder: The physical location of files for the site.
                    If the site is based on physical files, this is the path to the folder holding the files.
                    For non-physical sites, this is the place where Sitecore looks for a default.aspx file (to start the pipelines).

Вы можете найти больше информации о параметре PhysicalFolder здесь -> http://sdn.sitecore.net/Articles/Administration/Configuring%20Multiple%20Sites/Adding%20New%20Site/site%20Attribute%20Properties/physicalFolder.aspx

Что касается настройки вашего сайта MVC, на самом деле нет ничего особенного, что вам нужно сделать с точки зрения определения вашего сайта. Вы должны просто иметь возможность скопировать свое определение Site1 и сделать соответствующие обновления. Sitecore будет использовать правильный метод рендеринга на основе макета и подслоев, определенных на ваших страницах.

<site name="site2"
 targetHostName="site2.com"
 hostName="site2.com"
 virtualFolder="/"
 physicalFolder="/site2"
 rootPath="/sitecore/content/site2"
 startItem="/Home"
 language="en"
 database="master"
 domain="extranet"
 allowDebug="true"
 enablePreview="true"
 enableWebEdit="true"
 enableDebugger="true"
 enableWorkflow="true"
 patch:before="site[@name='website']" />
Другие вопросы по тегам