Server Side Include
Example Use Case for SSI
Suppose a news details page is configured to be cached (accessing a page with the .HTM extension). On the details page, in addition to the details interface, there is also the Quick List interface, with the three latest published news articles.
Without SSI technology, if every time a news article is published or edited, all the HTML of the details page needs to be regenerated, the process can become inefficient, given the number of published news articles.
To make this process efficient, it is necessary to place that Quick List interface as a server-side include. In this way, the news list will be saved in a different HTML file from each details page. The HTML detail files will simply have an #include for the HTML generated for the Quick List interface.
All details will share the same <locale>.HTM, and by updating just that file, all the detail HTMs will have the new news list without needing to regenerate them.
Another Example
Suppose that all cached pages of the portal need to contain information that is constantly updated. For this, the HTML Display interface of the HTML service should be used on each of the portal pages, with an #include for a file.html that contains all such information that is constantly updated.
Therefore, by changing only the file.html, all cached pages will present the updated information, without needing to regenerate them.
Settings in LumisXP
In LumisXP, any interface can be configured with SSI. This configuration should be done in the properties of an interface instance, specifically in the section regarding the Performance tab of the properties. It should also be checked in the advanced properties of the page, configured to be cached, that server-side include is enabled. This means that an HTML file (default extension for files that have SSI) will be generated containing the content of the interface instance configured with SSI, in the directory data/pages/interfaces/<guid of the interface instance>/<locale>.htm). Each cached page will present an #include for the HTM file of the interface.
In the portal's configuration file, in the cache configuration section, the extensions to be used must be specified, as explained in the cache settings below: