1. はじめに
「じょじょ伝言板」はシンプルな1行書き込みタイプのメッセージボードです。訪問者に相手を指定してメッセージを残す場を提供します。常連さんが多いサイトなどでは、重宝されること間違いなし!簡易ゲストブックとしても利用できます。
2. 利用規定および免責
- このスクリプトの著作権は、じょじょ♪(以下、作者)にあります。
- いかなる理由があっても、作者の許可なく著作権表示を削除して公開することは禁止します。
- ただし、組み込まれている一部のライブラリの著作権に関しては、それぞれの作者にあります。
- このスクリプトは、作者の許可を得ることなく自由に改造し、自由に使用することができますが、改造の有無に関わらず他人に再配布することはできません。
- 商用利用にも制限はありませんが、それによっていかなる損害が発生しても、作者は一切責任を負いません。
- 利用の際は原則として、あなたのサイトにじょじょのWeb工房へのリンクを張ってください。
3. 特徴
じょじょ伝言板の主な機能は以下のとおりです。
- プログラム構成がシンプルなため、スクリプトの設置や各種機能のカスタマイズが非常に簡単です。
- 強力なHTMLテンプレート機能によって自分好みのデザインに簡単に移行できます。
- 見栄え(HTML)と機能(スクリプト)が完全に分離しているため、バージョンアップしてもCGIの差し替えだけで対応できます。
- Cookieに対応しているため、名前とメール・アドレス、リロード時間を次回の入室まで覚えていてくれます。
- CookieにはJavaScriptを使用しているため、訪問者側の環境がCookieをサポートしていればほぼ確実に動作します。
- 海外SPAM対策として、日本語文字が含まれていない投稿を禁止することができます。
- 自分や伝言相手のハンドルネームの色を自由に選択できます。
- 同じ内容の連続投稿を禁止できます。
- 使用可能にしたいHTMLタグだけを自由に指定することができます。
- 管理者パスワードによって、不本意なメッセージを簡単に消去することができます。
- 悪戯防止機能によって、サーバが取得できるIPアドレスを監視し、ログに表示/非表示させることができます。
- 本文中にURLやメールアドレスが記入されたときに、自動的にリンク形式で表示させることができます。
- GETメソッドを禁止することによって、imgタグなどによる外部からの攻撃を無効にします。
- Refererを監視することによって、外部からの書き込みを禁止することができます。
- ロックファイルを置くだけで、簡単に閲覧専用モードにすることができます。
- flockによる排他制御でログを強力に保護します(UNIX、WindowsNTのみ)。
- W3Cの推奨するXHTML1.1に準拠した正しい文法のHTMLソースを出力します。
4. 動作環境
(1) サーバ環境
- perl5が動作すること
- 排他制御にflockが使用できることを推奨(Windows95/98/Meの場合、ファイルロックが動作しません)
(2) クライアント環境
- Internet Explorer 5.x以上、Netscape 6.x以上を推奨
- CSS、JavaScriptの使用を推奨
5. 設置方法
(1) 本体の設置
- dengon???.lzh もしくは dengon???.zip を適当なツールで解凍します。
- dengon.cgi の1行目を、プロバイダから指示された perl のパスに変更します。
- 下記の設置例にしたがって、すべてのファイルをASCIIモードでサーバに転送します。
- dengon.cgi と同じ位置に log/ というディレクトリを作成します。
- 下記の設置例の[ ]内の指示にしたがって、各ファイル、ディレクトリのパーミッションを設定します。
- ブラウザのURL入力欄に http://〜/~user/dengon/dengon.cgi と入力し、アクセスします。
- メッセージ一覧画面(最初はメッセージはありません)が表示されたことを確認したら、http://〜/~user/dengon/index.html をアクセスします。
- 上記2つの結果が同じになれば設置完了です。訪問者には http://〜/~user/dengon/index.html を公開します。
設置例
public_html/
|
|---- dengon/ [777] ディレクトリ
| |
|---- log/ [777] ログ・ディレクトリ
|---- dengon.cgi [755] じょじょ伝言板本体
|---- dengon.css [644] じょじょ伝言板用スタイルシート
|---- dengon.js [644] じょじょ伝言板用JavaScriptファイル
|---- index.html [666] 画面用HTMLファイル パーミッションに注意
|---- tmp.html [644] テンプレートファイル
|---- jscm.pl [644] じょじょのWeb工房共通ライブラリ
|---- jcode.pl [644] 日本語ライブラリ
|
注意事項
- public_html/ は、プロバイダによっては html/ や WWW/ 、htdocs/ などの場合があります。
- CGIの設置できるディレクトリが cgi-bin/ などに限定されている場合は、dengon/ をその配下に作成してください。
- CGIのパーミッションの設定は、プロバイダによって異なる場合があります。必ず確認して、プロバイダの指示を優先してください。
- jcode.pl は、歌代和正氏によるフリーウェアです。ftp://ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/
(2) スクリプトのバージョンアップ
原則として dengon.cgi と jscm.pl の置き換えだけで正常に動作します。
6. カスタマイズ
(1) スクリプトのカスタマイズ
必ず perl のパスだけを書き換えた状態で動作テストを行ってからカスタマイズを開始してください。最低限必要な項目以上に手を入れた状態では、設定ミスによる誤動作が起こった場合に原因を突き止めることが困難になります。
- 各種機能のカスタマイズ可能な項目は、dengon.cgi 中の管理者設定項目の部分にあるコメントを参考にしてください。
- 海外サーバなど、時差のある環境の場合、jscm.pl の先頭に時差補正の設定個所があるので、そこを参照してください。
(2) テンプレートのカスタマイズ
テンプレートHTMLは、以下の要素を除き、自由に変更することが可能です。ただし、テンプレートの改造による表示のカスタマイズはHTMLやCGIについてある程度の知識を要求しますので、初心者の方は極端な変更を行うことは避けてください。
- フォーム部分 <form> 〜 </form> に含まれる各項目。
- %body% の部分(テンプレートによって置き換わる部分)。
7. 操作方法
(1) メッセージの削除
訪問者は自分の発言したメッセージであっても、削除することはできません。
- 削除対象メッセージの「発言No」を確認します。「発言No」は各メッセージの最後(日時の後)に表示されています。
- メッセージ一覧画面にある削除フォームに削除対象メッセージの「発言No」と「管理者用パスワード」を入力し、[削除]ボタンをクリックします。
- 以降、該当するメッセージが表示されなくなります。
※ 削除されたメッセージの復活はできません。削除は慎重に行ってください。
また、メールアドレスを「管理者用削除コマンド」にしておくことによって、IPアドレスの表示を「あり」にしておいても、管理者のIPアドレスを Admin と表示させることができます。
(2) 閲覧専用モードにする
dengon.cgi と同じ位置に lock というファイル(またはディレクトリ)を置くと、書き込みをできなくすることができます。旅行などで管理ができなくなる場合に使用すると便利です。
(5) バージョンを表示する
dengon.cgi?version でアクセスすることにより、スクリプトのバージョンを表示することができます。
8. サポート
(1) うまく動かない場合
カスタマイズを行う前に、以下の項目を確認してください。
- すべてのファイルを「ASCIIモード」で転送しましたか?
- dengon.cgi の1行目にある perl のパスは正しく記述されていますか?
- それぞれのファイル、ディレクトリのパーミッションは正しく設定されていますか?
(2) それでも動かないときは
設置やカスタマイズに関する質問、不具合の報告などはじょじょのWeb工房にあるWeb相談室で行っています。特別な理由がある場合を除き、メールでの質問などはご遠慮ください。
なお、原則として大幅な改造を必要とする相談には応じられませんので、予めご了承ください。
同サイトのゲストブックでは、このスクリプトの感想や次回バージョンへのご要望なども受け付けております。
9. 謝辞
じょじょシリーズ作成にあたり、各方面の会議室などで有益な助言、提案、バグ報告を下さった方々に心から感謝いたします。
10. 更新履歴
2006/09/18 | ver.7.04 |
- 海外SPAM対策として、日本語文字が含まれていない投稿を禁止する機能を追加。
|
2004/08/09 | ver.7.03 |
- セキュリティホールが発見されたため、対処した(重要度:中)。
- バージョン表示機能を追加。dengon.cgi?version で表示されます。これに伴って付属テンプレートからバージョン表示を削除しました。
|
2003/11/08 | ver.7.02 |
- jscm.pl ver.1.03に対応。機能的には何の変更も無し。
|
2001/07/24 | ver.7.01 |
- メッセージサイズの許容最大値を設定可能にした。
- jscm.pl のバージョンチェックを追加。
|
2001/05/09 | ver.7.00 |
|
- バージョンアップは順次行われています。最新情報はじょじょのWeb工房にてご確認ください。
- 未公開のβ版をサンプルとして公開することがあります。
Presented by じょじょ♪ <webmaster@starwars.jp>
(http://www.starwars.jp/web/)