--- /dev/null
+[[!meta title="Server side includes"]]
+
+When I can't use a templating system (e.g. [IkiWiki][] or [CherryPy][]
++ [Jinja2][]), I tend to use [server side includes][SSI] to handle all
+the boilerplate header and footer information that is constant across
+a website.
+
+Content-carrying `.shtml` files look something like
+
+ <!--#include virtual="/~wking/shared/header.shtml"-->
+
+ <h1>Some title</h1>
+ <p>Bla bla bla.</p>
+
+ <!--#include virtual="/~wking/shared/footer.shtml"-->
+
+The boilerplate files (e.g. [[header.shtml]] and [[footer.shtml]]) are
+included by the server whenever it serves a page. This is probably
+wildly inefficient from the server's point of view, but it's very
+convenient for me :p. It is more efficient if your publishing tool
+(e.g. [IkiWiki][]) can include this boilerplate once at
+*publish-time*, rather than having Apache include it again for every
+page request.
+
+[IkiWiki]: http://ikiwiki.info/
+[CherryPy]: http://www.cherrypy.org/
+[Jinja2]: http://jinja.pocoo.org/2/
+[SSI]: http://httpd.apache.org/docs/2.2/howto/ssi.html
+
+[[!tag tags/tools]]
+[[!tag tags/web]]
--- /dev/null
+</div> <!--ending the #content div-->
+
+<div id="footer">
+<!-- Footer -->
+ <hr />
+ <p>
+ <!--#config timefmt="%A, %B %d, %Y" -->
+ <!-- need to make the shtml file executable ($ chmod 744 filename) -->
+ <!-- if XBitHack On, or give footer a .shtml extension. -->
+ </p>
+ <p>
+ Copyright © W. Trevor King. <br />
+ Validate <a href="http://validator.w3.org/check?uri=referer">xhtml</a>
+ | <a href="http://jigsaw.w3.org/css-validator/check?uri=referer">css</a>
+ </p>
+</div>
+
+</body>
+
+</html>
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+
+<!-- XHTML 1.1 removes the 'name' attribute from 'a' tags,
+ ( http://www.w3.org/TR/xhtml1/#guidelines
+ C.8. Fragment Identifiers )
+ which I imagine makes many browsers confused, so stick with 1.0 for now.
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -->
+
+<head>
+
+<meta http-equiv="content-type"
+ content="text/html; charset=utf-8" />
+<meta name="description" content="Homepage of Trevor King" />
+<meta name="keywords" content="william,trevor,king,drexel,physics" />
+<meta name="robots" content="all" />
+<link rel="stylesheet" href="/~wking/shared/style.css" type="text/css" />
+<link rel="icon" href="/~wking/img/favicon.ico" type="image/x-icon" />
+<link rel="meta" type="application/rdf+xml" title="FOAF"
+ href="/~wking/foaf.rdf"/>
+<title>Trevor</title>
+</head>
+
+<body>
+<div id="header">
+ <h3 id="top">Trevor King</h3>
+ <a href="/~wking/">Homepage</a>
+ |
+ <a href="/~wking/contact.shtml">Contact</a>
+ |
+ <a href="/~wking/courses/phys405_f10/">PHYS405</a>
+ |
+ <a href="/~wking/rsrch/">Research</a>
+ |
+ <a href="/~wking/code/">Code</a>
+ |
+ <a href="/~wking/tools/">Tools</a>
+ |
+ <a href="/~wking/unfolding-disasters/">Blog</a>
+ |
+ <a href="/">Department</a>
+ |
+ <a href="/liki/">Liki</a>
+ <hr />
+</div>
+
+<div id="content">