问题
we have CA and CD on different servers hosted in Azure Web Apps written using ASP.NET MVC.
I've added below so that output cache gets cleared upon publish end.
<event name="indexing:end:remote">
<handler type="Sitecore.ContentSearch.Maintenance.IndexDependentHtmlCacheManager, Sitecore.ContentSearch" method="Clear"/>
</event>
However, the output cache doesn't get cleared and website content doesn't get updated.
Any configuration that I need to do on top of above?
Thanks.
回答1:
You probably are missing your scalability settings. Because these are different servers, your CD needs to know which server will be publishing (Publishing.PublishingInstance). This way it can read the remote publishing events and fire appropriately.
See the "ScalabilitySettings.config.example" in your App_Config\Include folder.
<!-- INSTANCE NAME
Unique name for Sitecore instance.
Default value: (machine name and IIS site name)
-->
<setting name="InstanceName">
<patch:attribute name="value"></patch:attribute>
</setting>
<!-- PUBLISHING INSTANCE
Assigns the instance name of dedicated Sitecore installation for publishing operations.
When empty, all publishing operations are performed on the local installation of Sitecore.
Default vaue: (empty)
-->
<setting name="Publishing.PublishingInstance">
<patch:attribute name="value"></patch:attribute>
</setting>
As @Wesley Lomax points out, you also need HTML Cache Clearer running for your site on remote publishes: Content does not reflect on CD server after publishing from CM server
来源:https://stackoverflow.com/questions/33803183/sitecore-8-1-output-cache-not-clearing