Added SSI post.
authorW. Trevor King <wking@drexel.edu>
Tue, 5 Oct 2010 18:24:03 +0000 (14:24 -0400)
committerW. Trevor King <wking@drexel.edu>
Tue, 5 Oct 2010 18:24:03 +0000 (14:24 -0400)
posts/SSI.mdwn [new file with mode: 0644]
posts/SSI/footer.shtml [new file with mode: 0644]
posts/SSI/header.shtml [new file with mode: 0644]

diff --git a/posts/SSI.mdwn b/posts/SSI.mdwn
new file mode 100644 (file)
index 0000000..ccb30de
--- /dev/null
@@ -0,0 +1,31 @@
+[[!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]]
diff --git a/posts/SSI/footer.shtml b/posts/SSI/footer.shtml
new file mode 100644 (file)
index 0000000..7cac68a
--- /dev/null
@@ -0,0 +1,20 @@
+</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 &copy; 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>
diff --git a/posts/SSI/header.shtml b/posts/SSI/header.shtml
new file mode 100644 (file)
index 0000000..5c915d1
--- /dev/null
@@ -0,0 +1,49 @@
+<!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">