>>693
HTTPステータスコードによって出力するページを変えることはできるのですが、
例外出力を捕らえることができるのか、まだわかりません。

lighttpd はデーモン化するので端末から起動してもエラーメッセージを吐いて
くれない、error.log にも痕跡はなく access.log もHTTPステータスコードが 200 で
情報が得られない、ので Ruby の WEBrick ライブラリを使った即席の
HTTPサーバーを端末から起動したところ

* sbcl の場合
unhandled SB-INT:STREAM-DECODING-ERROR in thread #<SB-THREAD:THREAD
"initial thread" RUNNING
{AA93BD9}>:
decoding error on stream
#<SB-SYS:FD-STREAM
for "file /media/datum-ext3/local/lib/lisp/tests/lisp-cgi-hello.lisp"
{AA95C19}>
(:EXTERNAL-FORMAT :ASCII):
the octet sequence (227) cannot be decoded.
(以下省略)

* clisp の場合
*** - invalid byte #xE3 in CHARSET:ASCII conversion

のように、端末から CGI スクリプトを起動したときには出なかったエラーメッセージが
得られました。エラーメッセージの意味を充分理解できてないと思いますが
>>694 のご指摘の通りのようです。http://www.clisp.org/impnotes/encoding.html
内容はさっぱりわからんのですが、よく読んで解決したいと思います。

ご助言くださった皆様、ありがとうございました。