How to Update Multiple Web Pages Using Server Side Includes

SSI (Server Side Include) is a simple and robust way to include common content in multiple pages. In a similar way to the client-side JavaScript method, SSI involves having a separate file which contains the content you wish to appear on multiple pages. To update the content, you only need to edit a single file.


  1. Server-side is safer than client-side (it doesn't rely on any browser settings).
  2. Updates are very fast and easy.


  1. Slight performance overhead at the server end (every SSI page needs to be processed by the server before it is served to the user).
  2. You usually need to use a special extension for web pages, e.g. .shtml.
  3. The server must support Server Side Includes (most Apache servers do).

Step 1: Create the SSI File

Create a plain text document and name it with a .txt extension, for example navigation.txt. Save this file in a folder which is accessible from your whole website. You may want to make a special folder for this type of file, e.g. /includes/.

Into this file, enter the content you want to be displayed on every page, for example:

<div style='color:blue; font-size:12pt;'>
<a href="page1.shtml">Page 1</a> | <a href="page2.shtml">Page 2</a> | <a href="page3.shtml">Page 3</a>

Step 2: Insert the SSI Code into Your Pages

On each page, at the point where you want to the content to appear, place the following code:

<!--#include virtual="/includes/navigation.txt" -->

To update the content, simply edit the main SSI file and all pages will automatically update.