Как очистить кеш на сервере доставки 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
выше и ваш кеш должен очиститься при публикации.