GaucheでCGIをする為の設定

Gauche本24章に入ったので今後使う為にApache2の設定をしたのでメモ。
環境はUbuntu8.10。


まずはApache2をインストールする

# aptitude install apache2


mod_cgi.soモジュールの設定。
検索してみると、デフォルト設定してあるのでOK。

# grep -r mod_cgi /etc/apache2/
/etc/apache2/mods-enabled/cgid.load:LoadModule cgid_module /usr/lib/apache2/modules/mod_cgid.so
/etc/apache2/mods-available/cgi.load:LoadModule cgi_module /usr/lib/apache2/modules/mod_cgi.so
/etc/apache2/mods-available/cgid.load:LoadModule cgid_module /usr/lib/apache2/modules/mod_cgid.so


.cgiのファイルをCGIとして実行可能にする為の設定。

# grep -r cgi-script /etc/apache2/
/etc/apache2/mods-enabled/mime.conf:#AddHandler cgi-script .cgi
/etc/apache2/mods-available/mime.conf:AddHandler cgi-script .cgi
/etc/apache2/mods-available/actions.conf:# Format: Action media/type /cgi-script/location
/etc/apache2/mods-available/actions.conf:# Format: Action handler-name /cgi-script/location


/etc/apache2/mods-enabled/mime.conf で無効にされているのでコメントを外す

#AddHandler cgi-script .cgi #=>コメントを外す。

/etc/apache2/mods-available/mime.confは放っておいていいみたい。


cgiの置き場所は/usr/lib/cgi-bin/。


あとはapache2を再起動する。

# /etc/init.d/apache2 restart


テスト用に /usr/lib/cgi-bin/test.cgi を作る。
実行権限も忘れずに。

$ cat /usr/lib/cgi-bin/test.cgi
#!/usr/bin/env gosh

(print "Content-Type: text/plain\n")
(print "Hello Gauche")

これで http://localhost/cgi-bin/test.cgi にアクセスして表示が出ればOK。


あとセキュリティの面から、ローカル用途なので外部から接続されないようにiptablesの設定も忘れないように。
http://www.cman.jp/network/support/port.html 辺りでポートのチェックもしておくこと。