では前回の続き、test.plをブラウザから確認するための設定を行います。
apacheの設定ファイルは/etc/httpd/httpd.confと/etc/httpd/users/USERNAME.confにあります。
USERNAMEの部分に自分のアカウントが入ります。以降読み替えてください。
まずは、apache起動時にperlを使えるようにします。
$ sudo emacs /etc/httpd/httpd.conf
でhttpd.confを開きます。
L:239辺りに
#LoadModule perl_module libexec/httpd/libperl.so
がありますので、頭の#を外します。
LoadModule perl_module libexec/httpd/libperl.so
次に、L:283辺りに
#AddModule mod_perl.c
があります。こちらも#を外します。
AddModule mod_perl.c
最後にL:882辺りに
#AddHandler cgi-script .cgi
があります。こちらも#を外して
AddHandler cgi-script .cgi
とします。
ctrl+X,ctrl+Cと連続して入力し、Yを押します。そうすると保存して閉じられます。
次に、自分のディレクトリ内(~/Sites/)で.cgiを実行できるように「一応」しておきます。
$ sudo emacs /etc/httpd/users/USERNAME.conf
L:2のOptionsにExecCGIを追記します。
Options Indexes MultiViews ExecCGI
こちらも保存して閉じます。
ここで、設定ファイルを確認して、エラーがないことを確認しましょう。
$ sudo apachectl configtest
Syntax OKと出たらOKです。
test.plとtest.htmlを~/Sites/に移動します。
普通に移動してもいいですし、mvコマンドで移動してもいいです。
その辺はお任せで。。。
~/Sites/に移動したtest.plをリネームしてtest.cgiにします。
test.cgiのパーミッションを変えます。
$ cd ~/Sites/
$ chmod 755 test.cgi
ここまでが終わったらapacheを再起動(or 起動)させます。
今までapacheを起動していない人は、
$ sudo apachectl start
起動していた人は
$ sudo apachectl restart
をしてください。
では、確認してみます。
ブラウザを起動して、URL入力欄に
http://localhost/~USERNAME/test.cgi
と入力してください。
うまく表示されたらOKです。
さてさて、Template-Toolkitがきちんとブラウザからも表示されることを確認しました。
ところで、いちいちこんな感じでcgi作るのは面倒ですよね?
Apache::Templateというモジュールを使うことにより、cgiを作る必要がなくなりますのでらくちんです。
それはまた次回へ〜。