Server Side Includes
Server Side Includes (SSI), or Server-parsed HTML (SHTML), is a simple scripting language used to create dynamic web pages. Like PHP, SSI directives are typically embedded in a file that is otherwise in HTML format. The web server parses the file, executes the SSI code, and replaces it with its output.
Today's templating engines have more or less rendered SSI obsolete.
Definitive information about the origin of SSI is hard to come by, but we believe it was created by Rob McCool in 1993–1994, as part of the NCSA HTTPd web server software. A primitive version of it appeared in NCSA HTTPd 1.1 (1994-01). In that version, directives begin with the string:
NCSA HTTPd 1.2 (1994-04) introduced the modern syntax, in which directives masquerade as HTML comments, and begin with:
NCSA HTTPd 1.2+ included a tool, inc2shtml.c, to convert from the old to the new syntax.
[TODO: There are a number of variants of SSI, including something called XSSI (eXtended Server Side Includes).]
You might recognize SSI's universal error message:
[an error occurred while processing this directive]
- NCSA HTTPd (historical)
- A handful of modern web servers support SSI as an option. For example: