【10】MacOSサーバでCGI 1
まず、必要なソフトから

「MacJPerl」CGIでよく使われるPerlをMacOSで動かせるソフト
フリーウェアです
http://world.std.com/~habilis/macjperl/
↑からダウンロード出来ます。

「Jedit4」CGIを編集するときに使用します。シェアウェア。
Vectorや
アートマン21からダウンロードしましょう。

編集するCGI
「SABBATH−BBSv1.5(簡易レスタイプ)」
このサイトで使用させて頂いている掲示板CGIのオリジナル
http://sabbath-jam.com/top/index.html
↑からダウンロードします。フリー。(現在クローズ)
以上をダウンロードしたら任意の場所に解凍します。
次にCGIをMacOSで使えるように編集します
通常のCGIファイルはそのままではMacOSでは動かないので幾つか変更を加えなければ
なりません。
以下はUNIXとMacでのPerl記述の違い。
|
|
|
|
|
UNIX
|
Mac
|
|
改行コード
|
LF
|
CR
|
|
パス
|
/
|
:
但し、HTMLで書きだす場合は/
|
|
カレントディレクトリ
|
.
|
:
|
|
Perlへのパス
|
!/usr/local/bin/perl 等
|
必要無し
|
|
flock
|
使えない場合も有る
|
使用不可
CGIにある場合は削除するか#で
コメントにする。
|
この他まだ幾つか記述の違いはありますが
今回説明するCGIでは以上のみを変更すれば改造できます
ではまず、ダウンロードした「SABBATH-BBS」(解凍後のフォルダ名はr_bbs2)
のフォルダ内にある「bbs.cgi」をJedit4で開く。
すると以下のアラートが出るので「変換」をクリックする。

ファイルを開いたら
36行目 require'./jcode.pl'; の記述を require'jcode.pl'; に変更する(./部分を削除)
以下39行目・42行目も同じく./を削除する
61行目 $background ="./img/bg.gif"; も./を削除するが、
img/の/はそのままで良い(:に変更しなくても良い)
同じく64行目・65行目・66行目・67行目・68行目も./のみを削除する。
Jedit4の「検索&置き換え」をうまく使って変更しましょう。
次にflock関数が使われている部分を#を記述してコメントにする(削除しても良い)
265行目 flock(DATA,2); を #flock(DATA,2); とする
同じく269行目・525行目・528行目・580行目・583行目・670行目・675行目
711行目・715行目を#を記述してコメントに変更する
ここまでの変更が済んだらメニューから「別名で保存」を選択して
漢字コード:「シフトJIS」 改行コード:「CR (Mac)」 にして保存する

次は「SABBATH-BBS」(解凍後のフォルダ名はr_bbs2)フォルダ内にある「jcode.pl」
を編集する。
CGIファイルと同じくJedit4でファイルを開く。
1行目にある package jcode; を noI18N::Japanese;packagejcode;
に変更すれば良い。
あとはCGIファイルと同じく、メニューから「別名で保存」を選択して
漢字コード:「シフトJIS」 改行コード:「CR (Mac)」 にして保存する
次は変更したファイルをCGIスクリプトにコンパイルします。