Spice up for error page

Posted by jan Sun, 28 Aug 2005 23:59:00 GMT

lighttpd isn’t beautiful when it shows the user that a file is not available.

When I wrote it I want to make sure to don’t show any information that might be used for XSS attacks like displaying the URL unencoded, show local paths, ... something like that. I used the simplest approach: Just show the status.

This is not pretty, but works. But I assume you want something more sexy.

There are two ways to handle the output of a error page.

  • server.errorfile-prefix
  • server.error-handler-404

The first is used to use a local, static file as the payload for the status pages.

  • create a directory
  • put into that directory a file name 404.html
  • set server.errorfile-prefix do the directory name including the trailing slash

The file has to be a static HTML file (no PHP, ...). thinking If you already have a set of nice looking error-pages perhaps you can provide them for other users. The lighty-errorpage-theme-packages.

The other way is to use the error-handler which only works for the file-not-found case. The job of the error-handler is to do something intelligent with the request. Possible use-cases are:

  • Use http://www.example.org/search%20term as the direct entry to the search-page like in http://php.net/upload or http://dev.mysql.com/slow query log
  • Use http://www.example.org/cached-page to do simple caching. If the requested file doesn’t exist, let the handler generate it. The next request will get the static version.

This makes it pretty flexible.

Trackbacks

Use the following link to trackback from your own site:
http://blog.lighttpd.net/articles/trackback/17

Comments

Leave a response

Comments