Here's the complete text for the download you were just reading about. For those that hate to read documentation, here's a link to DOWNLOAD nixie 0.4.

To return to the Downloads page, click the Downloads button at left.

nixie 0.4

nixie, noun, pl. nixies.
(U.S. Slang.) a letter or other mail that is not
delivered due to an illegible or incorrect address.

When blosxom processes no stories — due to a bad link, bad typing, bad karma, etc. — nixie steps in and adds a user-specified "file not found" message to the empty page. Messages are saved in flavour files, on a per-flavour, per-category basis; a generic flavour can also be used. Works with any blosxom URL: path-based, date-based, or mixed (e.g. /pets/dogs/2005).

Optionally, nixie can generate a "real 404" which will show up in server logs; the 404 page is saved in flavour files, as above. In the absence of any flavour files, nixie provides a default 404 page.


Configuring & Installing nixie

Enter a configuration value for the option described below; save your "file not found" message in a flavour file; drop this file into your blosxom plugins folder; blog on.

Blog page, or 404 page?: nixie can react to an "empty" blog page in one of two ways. When $throw_a_real_404 is set to 0 (termed "normal"), the normal blog page will display, with your "file not found" message appearing where stories would normally display. In all other regards the page will be a "normal" blog page, and your server log will record the url as Status 200 (no problems).

When $throw_a_real_404 is set to 1, the normal blog page is discarded and a new page is generated, complete with a "404" http header; your server log will record the url as Status 404.

No matter what $throw_a_real_404 is set to, if no flavour files are available the built-in 404 template will be used to generate a page, and a "404" header will be sent.


Flavours

You don't have to modify your existing flavour files at all to use nixie; your "file not found" message will be added automagically. You do, however, have to make up a message. Typically, this will include: a prominent notice that the requested page doesn't exist; a brief explanation of how this might have happened; and link back to a "good" page.

File-not-found messages for a "normal" blog page should be saved in flavour files named nixie.head.flavour_name, where flavour_name is one of your existing flavours. No other plugins will process this message, so make sure it's properly marked up. These nixie.head.flavour_name files work just like normal flavour files — they are used on a per-flavour, per-directory basis.

If one message will work for all your flavours, you can save your message in a file named nixie.head.all; the file must reside at the top of your datadir.

When opting to produce a "real" 404 page, your flavour file must contain a complete page — <html>...<head>...<title>...</title>...</head>...<body>...</body></html>. Save your 404 page in file named 404.head.flavour_name, where flavour_name is one of your existing flavours. No other plugins will process this page, so make sure it's properly marked up. These 404.head.flavour_name files work just like normal flavour files — they are used on a per-flavour, per-directory basis.

If one 404 page will work for all flavours, you can save your page in a file named 404.head.all; the file must reside at the top of your datadir.

If you are truly lazy, you'll just let the built-in generic 404 template produce your page (no flavour files required); if you're a little bit ambitious, you'll modify the default template to match your server's normal 404 page ;-)

Remember
No matter what $throw_a_real_404 is set to, if no flavour files are available the built-in 404 template will be used to generate a page, and a "404" header will be sent.


Environment variables

Since blosxom doesn't interpolate environment variables, nixie provides a few to help your file-not-found message look "official":

$nixie::server_protocol
$nixie::server_software
$nixie::server_name
$nixie::server_port
$nixie::url

Since nixie flavours are interpolated by blosxom, you can also use all the normal blosxom variables.

Using nixie

It's pretty much all been said; here's a quick review:

  1. Configure the type of file-not-found message you want to issue: one that appears in the normal blog page, or one that appears in a server-like 404 page ($throw_a_real_404);
  2. If your message is to appear in a normal blog page ($throw_a_real_404 = 0), you must provide a flavour file: nixie.head.flavour_name for flavour- or directory-specific use, or nixie.head.all for blog-wide use;
  3. If your message is to appear in a "real" 404 page ($throw_a_real_404 = 1), you can either provide a flavour file (404.head.flavour_name or 404.head.all), or let the built-in template handle things;
  4. Make sure all files are saved with unix line ends; upload the nixie plugin file to your plugins directory; upload nixie flavour files to your their normal spot; blog on.

 

DOWNLOAD nixie 0.4