I’ve made a few small improvements to the way this site functions.

First, I’ve fixed a long-standing bug, where a missing final slash on the path name would result in a “page not found” error. This was due to some weak use of Apache’s ModRewrite. The parsing is now all done in the page generation script in Perl, which enabled me to make the handling a bit more intelligent.

Second, page numbers can now be accessed with a trailing slash.

Third, all addresses are now converted to canonical format. In other words, if you access the site via www.po-ru.com, you will be redirected to po-ru.com. I you don’t use a trailing slash after a path, it will be added, except after a page number, when it will be removed.

Converting to canonical format is done by parsing the supplied address to find the information, reconstructing it from the data according to the canonical format, and issuing an HTTP redirect if the two addresses differ.

The improvements I’ve made should have no effect on internal links, but do mean that handling of typed addresses is a bit less strict. It should also improve the way that search engines deal with the site by removing duplicate paths to the same content.