◆ Perlのシンタックスチェックのワーニングを除去(Ver2.61)
◆ HTMLタグの使用を禁止(Ver2.60)
◆ 誤ってロックファイルを消してしまうことがあるバグを修正(Ver2.55)
◆ ロックファイルのパーミッションを755から0755に修正(Ver2.54)
◆ クライアントがJISコードの文字列を送信すると、文字化けが発生するというバグを修正。(Ver2.53)
◆ 2000年対応(Ver2.52)
(1) あなたが使用しているプロバイダやWWWサーバーがCGIをサポートしていることを確認してください。CGIをサポートしていない場合は設置できません。また、プロバイダによっては、CGIを別のサーバーに設置しなくてはならない、.htaccess というファイルを用意しなくてはならない、パーミッションの変更はプロバイダに依頼しなくてはならないなど、いろいろな規則がある場合がありますので、プロバイダのCGI設置手順をよく理解しておいてください。(2) まず、「CGIの設置方法」を参考に、簡単なCGIの設置を体験しておいてください。すでにCGIの設置経験がある方は不要です。
(3) WWWサーバー上に次のようなアドレスで参照できるようなファイルとディレクトリ(フォルダ)を作成してください。「〜」の部分にはプロバイダやユーザー名に応じたサーバー名やディレクトリ名がはいります。それぞれのファイルやディレクトリの作成手順は下記で説明します。
- http://〜/〜/wwwboard.cgi
- http://〜/〜/wwwboard.dat
- http://〜/〜/wwwboard.tmp
- http://〜/〜/jcode.pl
- http://〜/〜/lock/
(4) wwwboard.cgiは、wwwboard.cgiを表示し、これを保存したものを使用してください。
(5) wwwboard.datと、wwwboard.tmpは、空ファイル(中身無し)にしてください。
(6) jcode.pl(Utashiro氏作成の漢字コード変換ライブラリ)は、jcode.plを表示し、これを保存したものを使用してください。
(7) lockはディレクトリ(フォルダ)です。FTPツールにディレクトリ作成の機能があると思いますので、それを用いて作成してください。
(8) WWWサーバーがUNIXの場合は、wwwboard.cgiのパーミッションを755、wwwboard.datとwwwboard.tmpのパーミッションを666、lockディレクトリのパーミッションを777にしてください。(→ パーミッションを変更するには)
(9) FTPを用いてファイルをWWWサーバーに転送する場合は、改行コードに注意しましょう。(→ 改行コードについて)
(10) <A HREF="...">で、wwwboard.cgi ファイルへのリンクを張り、これを開くと、掲示板の出来上がり・・・・のはずです。
(11) wwwboard.cgi の中の「$return_url = "";」の箇所に、「$return_url = "../index.html";」などのように戻り先のパス名を記述すれば、[戻る]リンクが表示されます。
(12) wwwboard.cgiの中の「$allow_html = 0;」の行を「$allow_html = 1;」に修正すると、メッセージの書き込み時にHTMLタグを使用することができるようになります。ただし、HTMLタグの使用はセキュリティ的に問題があるケースが多いので、あまりオススメできません。
(13) メッセージは最新の100件のみを保存し、それよりも古いものは削除するようにしています。保存件数を変更したい場合は、wwwboard.cgi の最初の方にある、「$max_msgs = 100;」の値を変更してください。「$max_msgs = 0;」とした場合は、削除されないようになります。
(14) 掲示板を複数設置するには、別々のフォルダにwwwboard.cgi、wwwboard.dat、wwwboard.tmp、jcode.pl、lockを配置するようにしてください。
CGIの設置に不慣れな人は、「とほほのCGI入門」を参考に、簡単なCGIスクリプト(test.cgi)の設置を練習してみてください。CGIの設置方法は、プロバイダによりいろいろ異なりますので、プロバイダの説明書を必ず熟読してください。例えば、BIGLOBEのwww5で始まるサーバなどはCGI設置に特別なアップロード方法が必要です。
次に、http://〜/〜/wwwboard.cgi?test という形式で掲示板CGIを呼び出してみてください。不具合がある場合は NG (no good)メッセージが表示されます。
「只今、掲示板が混雑・・・」のメッセージが表示されてしまう場合は、何らかの原因でlockフォルダの下にwwwboard.locフォルダが残ってしまっている可能性があります。一度、wwwboard.locフォルダを削除してみてください。
Windows NTでIISを利用している場合は、CGI実行時の作業フォルダが別のフォルダに設定されている場合があります。wwwboard.cgi の 2行目あたりに、下記の1行を追加してください。C:/xxx/yyy/ の部分には、wwwboard.cgiを設置したフォルダ名を、バックスラッシュ(\)をスラッシュ(/)に変更して指定してください。
chdir('C:/xxx/yyy/');それでもうまく動かない時には質問を受け付けています。「とほほへメールを送る」を参照してください。