A file extension that is also sometimes known as SSI, SHTML is an HTML file that includes server instructions or server side includes, and is similar to an ASP file. This file is commonly used as a method of identifying files that include server instructions and what ones do not, to help load each page as fast as possible.

A server administrator may set the name of the file extensions to anything; however, the files are commonly either .SHTML or .SSI. In addition, an administrator may enable for all files to include executable code; however, enabling this will often cause the server to be much slower.

A web page visitor counter or dynamic content such as a web page calendar are good examples of why a user may use embedded instructions on his or her web page. Below are some examples of how a user may implement a Perl script into their web page and other Server Side Includes.

<!--#exec cmd="cgi-bin/mycounter.cgi" -->

<!--#include virtual="/cgi-bin/mycounter.cgi" -->

<insert file="cgi-bin/mycounter.cgi">

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

The first line is the most common method for executing code from a server. However, because of security risks, an administrator may disable this feature on the server. The second line is another common example of what is supported on a server and is the replacement for servers not supporting the exec cmd. The third example is just another example of how a server may be setup to execute a file. Finally, the last line is a method of echoing the local date and time to a web page.

Additional questions regarding the setup or configuration of SHTML or SSI should be directed to your administrator or ISP. If you are the administrator or are attempting to enable SSI on your server, we recommend you refer to the documentation of your web server.

Also see: ASP, HTML, SSI