Как очистить кеш на сервере доставки Sitecore 7.5?

У меня есть 2 CD-сервера, использующих Sitecore 7.5, у которых фактически отключены интерфейсы Sitecore. Можно ли как-нибудь очистить кеши на двух CD-серверах? Я знаю, что, возможно, есть способ написать код для этого, но я был бы удивлен, что нет способа сделать это из коробки.

Спасибо Кори

2 ответа

Это не может быть аккуратным решением, но может вписаться в ваши конкретные требования.

  • Возьмите страницу Sitecore для обновления кэша вручную. Сайт \ Sitecore \ админ \ cache.aspx
  • Скопируйте в определенный каталог, откуда вы хотите, чтобы эта страница была доступной.
  • Разкомментируйте dll Sitecore 'Sitecore.sitecore.admin.CacheAdmin', удалите из него требование аутентификации Sitecore и создайте свой собственный класс.
  • Используйте тот пользовательский класс в cache.aspx, который вы поместили на CD-сервер.

Как упомянул @Marek, вы должны указать очистку html-кэша для своего сайта в файле web.config. Поскольку вы пытаетесь очистить кэш на CD-серверах, вы должны определить это в publish:end:remote событие против publish:end событие.:

      <event name="publish:end:remote">
        <handler type="Sitecore.Publishing.HtmlCacheClearer, Sitecore.Kernel" method="ClearCache">
          <sites hint="list">
            <site>website</site>
            <site>YOUR SITE DEFINITION SITE NAME HERE</site>
          </sites>
        </handler>
        <handler type="Sitecore.Publishing.RenderingParametersCacheClearer, Sitecore.Kernel" method="ClearCache" />
      </event>

Предполагая, что у вас определен новый сайт, который не определен сайтом сайта OOTB, вам просто нужно указать свое имя там, где я YOUR SITE DEFINITION SITE NAME HERE выше и ваш кеш должен очиститься при публикации.

Другие вопросы по тегам