SSI – Server Side Includes – what it is and how to activate SSI

SSI (Server Side Includes) are directives that are placed in HTML pages, and evaluated on the server while the pages are being served. They let you add dynamically generated content to an existing HTML page, without having to serve the entire page via a CGI program, or other dynamic technology (for example, PHP).
The decision of when to use SSI, and when to have your page entirely generated by some program, is usually a matter of how much of the page is static, and how much needs to be recalculated every time the page is served. SSI is a great way to add small pieces of information, such as the current time. But if most of your page is being generated at the time that it is served, you need to look for some other solution.

You can enable SSI for any of your websites. To do so, go to the File Manager section of your Hosting Control Panel and create an empty file called .htaccess in the home directory of your domain (for my-best-domain.com, the directory would be usually /www/my-best-domain.com/)

Next, edit the .htaccess file with a plain text editor and add the following code:

1
2
3
AddType text/html .shtml
AddHandler server-parsed .shtml
DirectoryIndex index.shtml index.html index.htm index.php

 

You are allowed to include static files using SSI, for example, you can add the following includes in your index.shtml:

<!--#include virtual="included.html" -->

 

-OR-

<!--#include virtual="included.txt" -->

 

However, the use of the Exec command will fail, for example:

<!--#exec cgi="../hitcounter.php" -->
will display error [an error occurred while processing this directive].

To show the local date and time, you can add the following line:

<!--#echo var="DATE_LOCAL"-->

 

IMPORTANT:  Files that use SSI must have the .shtml extension. SSI would not work with files that have a .html extension!