sbcl, apache, cgi, エラー
sbclでCGIスクリプト(#!/usr/local/bin/sbcl --script)を作成して、Apacheのもとで動かしてみようとしたら、失敗した。
OSはCentOS 5。
rubyやperlで作成したCGIは普通に動く。
Apacheのエラーログには次のような出力がはかれていた。
[Wed Jan 20 03:30:01 2010] [error] [client 192.168.3.4] mmap: Permission denied [Wed Jan 20 03:30:01 2010] [error] [client 192.168.3.4] ensure_space: failed to validate 1044480 bytes at 0x01000000 [Wed Jan 20 03:30:01 2010] [error] [client 192.168.3.4] (hint: Try "ulimit -a"; maybe you should increase memory limits.) [Wed Jan 20 03:30:01 2010] [error] [client 192.168.3.4] Premature end of script headers: cgi.lisp
最終的には、SELinuxを無効にしたら、問題なく動いた。
Apache経由でsbclが呼び出されると、SELinuxに引っかかってなぜかmmapが使えないらしい。