=====================================================================
【タイトル】 Mini Thread - Version 3.31β →バージョンアップ履歴
【カテゴリ】 CGI Script
【 制  作 】 Flash CGI
【配布形態】 フリーウェア
【動作環境】 Perl5(Perl4は不可)
【 E-Mail 】 webmaster@flashcgi.net
【HomePage】 http://www.flashcgi.net/
         
【配布場所】 http://www.flashcgi.net/cgi/minithread/
【再 配 布】 改造後のみ可能です。(要報告)
             なんの変更も加えず再配布するのは禁止です。
【著 作 権】 Copyright (C) 2001 Flash CGI
             Banner Designed By eri
=====================================================================
【内容紹介】
スレッド式の掲示板。
管理画面から簡単に設定が可能。
ログ検索。
クッキー機能。
投稿者記事削除・修正。
権利者記事削除・修正・スレッドストップ・ごみ箱。
管理者のみスレッド完全削除・復活・過去ログ移行。
管理者のみIP閲覧。
≪[on/off]が切り替えられる機能≫
タグの許可。
(さらに<img><font>タグは個別に切り替えが可能)
IP・ホストの取得。
オートリンク。
管理者のみにスレッド。
『>>番号』でレス記事参照。
リプライ機能。
キャップ。
トリップ。
stay。
Location or Refresh。
URL転送。etc...
=====================================================================
【設置方法】
パーミッションはあくまで一例です。
この設定で動くサーバもあれば動かないサーバもあります。
また、セキュリティを高めたい人は任意で変更。
スクリプトは必ず同じディレクトリにしてください。

[test]        (701)(705)(707)
 ├bbs.cgi     (705)(700)
 ├read.cgi    (705)(700)
 ├page.cgi    (705)(700)
 ├cell.cgi    (705)(700)
 ├search.cgi  (705)(700)
 ├admin.cgi   (705)(700)
 ├headline.cgi(705)(700)
 ├config.cgi  (705)(700)
 ├jcode.pl    (604)(600)
 └XXX.pl      (604)(600)
[common]        (705)(701)
 ├[lockdir]   (707)(705)(701)
 │  ├caplock
 │  ├imglock
 │  └lockfile
 ├[trash]     (707)(705)(701)
 ├board.txt   (606)
 ├host.txt    (606)(600)
 ├set.cgi     (606)(600)(707) URLで指定して
 ├id.cgi      (606)(600)(707) ファイル内容が
 └cap.cgi     (606)(600)(707) 表示されないように
[file]
以下は自動作成
[bbs]           (705)(701)
 ├[dat]       (707)(705)(701)
 ├[i]         (705)(701)
 │ └index.html    (606)
 ├[past]      (707)(705)(701)
 ├set.cgi     (606)(600)(707)
 ├id.cgi      (606)(600)(707)
 ├cap.cgi     (606)(600)(707)
 ├index.html  (606)
 ├subback.html(606)
 └subject.txt (606)

refresh.cgi     (705)(700)

=====================================================================
【サポート】
サポート掲示板を見てください。
過去に同じような質問がある場合も多いので、
投稿する前に一度、検索してみてください。

=====================================================================
【 設  定 】バージョンアップ方法

まず最初にconfig.cgiを開きます。(16行目くらい)

;# 設定ファイル名
;; $setfile = '../common/set.cgi';

もしset.cgiの名前やcommonディレクトリを変更していれば、これを変更します。

これが終わったら、admin.cgiにアクセスします。
admin.cgiをずっとサーバ上に置くなら名前を変えておくことをお勧めします。

パスワード設定画面になるので、パスワードを設定します。

初期設定のラジオボタンをチェックし、
下のほうにある、パスワード欄に上で書いたパスワードを入力し、
「作業開始」ボタンを押します。

あとは上からすべて設定します。
いま設定しているのはデフォルトの設定になります。

次に管理画面のトップの下のほうにある
「板の操作」ラジオボタンをチェックし同じようにパスワードを入力し、
「作業開始」します。

画面の指示に従って板を作ってください。
ここではbbsという板名にしたと仮定して説明します。

特定の板だけ設定を変えたい場合は、板を選んだ上で初期設定をします。
また、admin.cgi?bbsなどと?のあとに板名を指定すると
その板に特化した設定画面になります。

すべて終わった後、bbs.cgi?bbsにアクセスします。
掲示板が表示されれば成功です。

1.21以前のバージョンを使っていた場合は一度、
2.00ぐらいのバージョンを使ってから3.00β以降に
バージョンアップした方がいいかもしれません。

掲示板へのリンクを貼るときは、bbs.cgiではなくindex.htmlに貼ってください。

《refresh.cgiの設定》

refresh.cgiは設置に必ずしも必要なものではありません。
以下のような理由がある場合のみ、設置してください。

・リンクした先のページに掲示板のURLを知られたくない(リファラをとられたくない)
・リンク先が別サイトであることを銘記する。

他の場合、refresh.cgiを使用しても、
余計な時間がかかってしまうだけなので気をつけてください。


# 掲示板設置場所__________________________________
$board = "http://www.flashcgi.net/";

ここはスレッド式掲示板を置いたサーバのアドレスを記述してください。
詳しいほどいいです。
リファラにこれが含まれない場合は処理しません。

# モード__________________________________________
$mode = 1;

これを1にするとリファラ対策をします。
掲示板の設置場所を知られたくない場合に有効です。
別サーバにこのスクリプトを置いたり掲示板設置ディレクトリより
階層が高いディレクトリに置いたりすると良いです。
ただし、イメタグなどを有効にしてると元も子もないので注意してください。
これを0にするとイタズラ対策です。
リンクとソースを表示したりします。

# ページ更新時間__________________________________
$refreshtime = 3;

これはmodeで1を設置したときにrefreshするまでの時間(秒)です。

# URL上部文字_____________________________________
$comment = "$refreshtime秒後に下のURLにジャンプします。";

表示するメッセージなどです。
たとえば、モードを0にして、勝手に飛ばないようにし、
リンク先が他のサイトであることと、
その先のページに対して責任を負わないことを銘記するといいかもしれません。

過去のバージョンからのバージョンアップ方法

☆1.21以降2.00までからのバージョンアップ

必ずログをバックアップしてください。

[引き継げるもの]
・ログファイル
・設定ファイル
・IDファイル

[方法]
ログなどサーバ上のものは一回消してください。
その後、ファイルをアップロードします。

設定ファイル(set.cgi)、IDファイル(id.cgi)は互換性があるので、上書きします。

管理画面から初期設定を行います。
初期設定が終わったら、板を作ります。

できた板のディレクトリ(たとえばbbs)以下にディレクトリdatがあるはずなので、
そこにログファイルをすべてアップロードします。

ロックファイル作成→ログ変換→
→FTPでロックディレクトリ(common/lockdir/)にある数字のついたファイルを削除→
→ロックファイル作成
と実行します。

このあとbbs.cgi?bbsなどとアクセスして、表示されれば成功です。

あとは適宜修正します。
以上のファイルのアップロードが終われば、あとは普通と同じです。
次の設定

☆3.xxからのバージョンアップ

基本的にtestディレクトリの中身をすべてアップロードするだけでOKです。
新しく設定項目が増えている場合もありますので、
admin.cgiから再設定してください。
3.30以前→3.31以降の場合は、refresh.cgi
3.23以前→3.24以降の場合は、lockdir内のimglock
がそれぞれ更新されていますので、アップロードしてください。


=====================================================================
【更新履歴】

2003/07/21,25,11/21 - 3.31β
 xrea用の設定不備修正。
 黒塗り途中で省略すると真っ黒になる不具合修正。
 アップロード設定関連のバグ修正。
 303 See Other非対応のサーバ対策。
 refresh.cgi修正。

2003/06/07,07/05 - 3.30α
 広告バナー用設定追加。
 ファイルサイズが設定値を越えても投稿できるバグを修正。
 禁止ホストの設定が適用されないバグ修正。
 sendmailのWin鯖チェックを排除。
 携帯用ページのタイトル省略機能。
 管理画面からのスレッド変更後にリフレッシュリンクを追加。
 IDとキャップの板固有ファイルのデフォルト値が間違っていたのを修正。
 (IDがcap.cgiに、キャップがid.cgiに記録されている可能性があります。
  ずっとこのままでいくなら、ほっといても支障はありません。)
 キャップの機能に、ID:???・ファイルアップ制限・スレッド作成権限をつけました。
 index.html生成時のエラー処理を最適化。
 投稿時の行数制限。

2003/06/05 - 3.29α
 日付検索ができなかったのを修正。
 メールの自動リンクがうまくいかないバグ修正。

2003/06/04 - 3.28α
 バグ修正。

2003/05/02,06/02 - 3.27α
 sage、ごみ箱時、スレッド一覧に反映されないバグ修正。
 fusianasan機能追加。
 ファイルアップロード時にレス数がおかしくなるバグ修正。
 携帯でスレッド作成時にエラーが出るのを修正。
 初期状態で板作成が行えないバグ修正。
 携帯で記事が4件のとき、最新5が表示されないバグ修正。

2003/04/13,05/02 - 3.26α
 スレッド最大数の設定が消えてたのを修正。
 HTML表記ミス修正。

2003/02/26,03/10 - 3.25α
 スレッドごみ箱時のバグ修正。
 アップロードする板を制限する場合、アップロードできないバグを修正。

2003/01/24-25 - 3.24α
 ファイルアップロード機能α追加。
 どうしても、ディレクトリが作成できない場合に対応。
 一部タグの最短マッチができてなかったのを修正。

2003/01/23 - 3.23β
 携帯でレス投稿できないバグを修正。

2003/01/14-18 - 3.22β
 キャップ・トリップ時のバグを修正。
 検索時IDが二重に表示されるバグ修正。
 過去ログからのリンク修正。
 板一覧非表示の設定不備修正。
 スレッド作成時のsendmailの情報がおかしかったのを修正。

2003/01/05-14 - 3.21β
 引用着色のバグを修正。
 携帯で書き込みチェック時のバグ修正。
 メール自動リンクを少し正確に。
 過去ログのタイトルに色が適用されないのを修正。
 sage用IDのチェック時に間違ってスレッドストップの権限をチェックしていたのを修正。
 スレッドがないときに存在しないサブルーチンを呼び出していたのを修正。
 色塗り機能追加。

2003/01/04 - 3.21α
 バグを修正。

2002/11/29-2003/01/03 - 3.20β
 クッキー取得時のバグを修正。
 軽量化。最適化。パフォーマンスの向上。(おそらく)
 スレッドタイトルに空白不可。
 過去ログページ移動時のバグ修正。
 その他、細かいバグを修正。
 板設定詳細化。

2002/11/28 - 3.19β
 文字コード判定を独自のものに変更。

2002/11/25 - 3.18β
 ID生成のミス修正。
 タグ・強調表示・>>番号の正規表現を変更。
 記事折りたたみ機能追加。

2002/11/17 - 3.17β
 検索画面で本文off時にリンクが正しくないのを修正。
 本文自動リンク部を修正。(Perl4は完全に捨てた)
 refresh.cgiに#が通るようにした。

2002/11/16 - 3.16β
 書き込み確認でスレッドをたてられないバグを修正。

2002/11/15 - 3.15β
 sendmailを追加(仮)。
 ヘッドライン機能追加。
 携帯用ページのTOPの設定、ずっと忘れてたのを修正。
 書き込み確認画面。

2002/11/14 - 3.14β
 板指定時にindex.htmlまで指定。
 検索時の強調表示法を変更。

2002/11/13 - 3.13β
 キャップ失敗時も#以降を表示しないようにした。
 記事部分に限り&を許可。

2002/11/08 - 3.12β
 クッキーを改良。

2002/11/01 - 3.11β
 検索結果のレス番号からのリンクがずれていたバグ修正。
 get方式の場合、スレッド一覧のリンクが間違っていたのを修正。
 二重投稿制限がレス数6以下の場合に効かなかったのを修正。

2002/10/21 - 3.10β
 強制sage時にスレッド数を超える数を入力するとスレッドが消えるバグを修正。
 10文字のトリップに対応。
 投稿者が削除/修正できないようにする機能を追加。
 (ただし、投稿時、パスワードの入力欄は残したまま)

2002/08/31 - 3.09β
 ホスト禁止がふたつ以上登録できなかったのを修正。

2002/08/29 - 3.08β
 検索に日付/ID検索を追加。

2002/08/28 - 3.07β
 携帯用のRefreshでヘッダをちゃんと出力してなかったのを修正。
 PCで携帯ページから投稿できないのを修正。(実はバグだった)

2002/08/09 - 3.06β
 AN HTTPD対策にBBSの判定を修正。

2002/08/07 - 3.05β
 J-phoneで投稿ができなかったバグ修正。
 自動リンク内に閉じタグを書かれると、タグが閉じれないバグを修正。

2002/08/05 - 3.04β
 整形表示が不揃いだったのを修正。
 過去ログ作成時に投稿したスレッドがsubject.txtに保存されないバグを修正。
 過去ログのレス番号がおかしいバグ修正。
 ホスト規制・PROXY規制が板ごとに効かなかったバグ修正。

2002/08/02 - 3.03β
 板ごとの設定の変更時に変更が適用されないバグを修正。
 ディレクトリの指定方法を変えてみる。
 (スクリプトからのファイルの作成はデフォルトだとグループ権限がありませんが、
  これだと一部のサーバでFTPからファイルを消せないようになるっぽいので、
  グループ権限も与えるように変更。スクリプトの変更ではありません。)
 過去ログ機能を修正。

2002/08/02 - 3.02β
 強制sage時に同じスレッドが重複するバグを修正。
 imgタグのセキュリティを向上。画像ファイル以外を呼び出せないようにした。
 検索を強化。

2002/08/01 - 3.01β
 ひとつめの記事を修正時にサブジェクトが消失するバグを修正。
 キャップ登録時に色をテストできるようにした。

2002/07/19-31 - 3.00β
 投稿者がキャップを指定できるようにした。
 最初のコメントの色が変化するバグ修正。
 imodeで題名の前に無意味な改行が入るのを修正。
 一部の環境でadmin.cgiから正しくパスワードが登録できなかったのを修正。
 ログファイル名・フォーマットなどを変える。
 ホスト取得強化。
 PROXY規制強化。
 XSS対策。
 ID閲覧画面のIDの権限の表示が適切でなかったのを修正。
 ホットゾヌ・かちゅ〜しゃなど2ch完全互換のものはほぼ対応できるはず。
 subject.htmlを出力。
 i-mode用ページを/i/に変更。
 投稿部分・携帯ページをJ-PHONE,EZWEB系対応っぽくしてみた。
 少なくともJ-phoneには対応してるはず。ただし、/i/ではdirectkey無効。
 URLの代わりに文字を表示する機能→セキュリティアップ。
 管理者画面のバグ修正。
 汎用ファイルは別ディレクトリに移動。
 携帯でのスレたて時に無効なエラーがでるバグを修正。
 文字コードをshift_jisからx-sjisに変更してみた。
 read.cgiにクッキー削除機能を追加。
 管理画面のデザインを変更。
 二重投稿排除。
 管理者権限以外では題名一覧・ID・キャップファイルをメモリに読み込まないようにした。
 IDを板全体と板のみで設定できるようにした。
 トリップを2ch互換も可能に変更。
 板ごとの設定では一部の設定をできないように変更。
 admin.cgiの内部設定の変更完了。
 ホストでのアクセス拒否をできるようにした。
 キャップの登録を緩和。
 IDを???にすることを可能に。
 メールとURLも文字長制限。
 全般的に長すぎるクエリは排除。
 メタ文字を排除。
 各種バグを修正。
 パーミッション変更の挙動がおかしかったのを修正。
 板をトップに表示。表示しないことも可能に。

2002/07/17 - 2.03β
 キャップに色を指定できるようにした。
 好きな形式のキャップを指定可能にした。
 ある程度PROXYを規制するようにした。
 ロック名に起因するバグを修正。

2002/07/16 - 2.00
 キャップ付で特定の文字が含まれている名前の発言を修正するときに起こるバグを修正。
 デコード時に意図的に送られてくる制御文字を排除。
 IPに改行文字や区切り文字などが含まれているパケットが送られてきた場合、
 掲示板が壊れるバグを修正。(セキュリティホールです。危険度小。)
 キャップのパスと管理者のみスレッドを立てる場合のパスが設定ごとに消えていたのを修正。

2002/07/15 - 1.99β
 read.cgiの>>数字のリンクのバグ修正。
 修正時に等幅を引き継ぐ。
 タイトル変更時のバグ修正。
 ID機能追加。タイトル検索追加。

2002/06/30 - 1.98β
 過去ログのページ機能修正。

2002/06/21 - 1.97β
 過去ログからのリンクミス修正。
 携帯ページのタイトルが適用されてなかったのを修正。
 重複スレッドをたてれないように変更。
 エラー処理を大幅変更。
 スレッドストップ・再開時のバグ修正。

2002/06/19 - 1.94β
 削除・修正時とその表示時にログファイルをメモリに読み込まないようにした。

2002/06/16 - 1.93β
 メッセージ以外のデコードを修正。

2002/06/15 - 1.92β
 とてもたくさんの小さなバグをつぶした。。。
 XREAのPATH_INFOに対応。

2002/06/14 - 1.90β
 Apache2? or Win+Apache?でクッキーをエンコードせず出力すると
 致命的なエラーになるらしいのでクッキーを大幅に修正。
 OperaやMozillaなど主要ブラウザで正常なクッキーが可能に。
 その他バグをちみちみつぶす。下段にもページ移動。

2002/06/13 - 1.88β
 検索機能の着色機能のバグ修正。検索結果を配列に保有するのをやめ。

2002/06/11 - 1.87β
 ログ変換機能追加。これにより、過去のバージョンを考慮しなくて済む。

2002/06/10 - 1.86β
 i-mode用スクリプト完成。

2002/06/09 - 1.85β
 タグの有効化をかなり強固にした。
 i-modeの投稿時の処理を完成。

2002/06/08 - 1.84β
 強制sage機能。
 i-mode用スクリプト試作品作成。

2002/06/07 - 1.82β
 検索機能修正。
 記事省略機能はタグを許可している場合に問題が多いので保留。
 JavaScript部分を変更。
 等幅機能追加。
 クッキー取得を任意に。
 スレッド作成をTOPからのける。
 そのほかデザイン変更。
 admin.cgiの設定確認機能がちゃんと機能しなかったのを修正。
 Operaで表示が崩れないようにした。

2002/06/06 - 1.73β
 IDにキャップ・レスの修正機能を追加。
 IDの名前変更フォーム。
 削除・修正・ストップ・ごみ箱機能を大幅に書き換え。
 IDをクッキー。
 refresh.cgiにソース表示機能追加。
 掲示板設置URLにはrefresh.cgiを適用しないように修正。

2002/06/05 - 1.67β
 データを圧縮して出力する方式を導入。
 管理者画面でスレッド削除・ごみ箱・過去ログ移行。
 管理者画面でスレッドのタイトル変更。
 管理者画面で設定チェックやクリーンアップ機能。
 初期化機能。

2002/06/04 - 1.62β
 削除機能を変更。
 get方式でstayできなかったバグを修正。
 IP取得まわりを修正。
 未定義のサブルーチンが呼び出された場合に対処。
 パスワードを別ファイルに保存。パスワードを強化。

2002/06/03 - 1.57β
 URL転送スクリプト作成。
 記事省略機能。
 ほとんどのターゲットを指定可能にした。
 過去ログファイルを作成された順に上から表示するようにした。

2002/06/02 - 1.53β
 検索時に設定を引き継ぐようにした。
 新しいスレッドから検索するようにした。
 記事修正時のバグを修正。

2002/06/01 - 1.50β
 admin.cgiからほとんどの設定をできるようにしました。
 ログに書き込むとき、すでにオートリンクやタグを有効にしていたのを
 出力時にするように変更。
 (過去のバージョンとの互換性が少しなくなってるかも)
 >>番号の出力を少し変更。
 PATH_INFOにURLが含まれるサーバにも対応。
 locationヘッダの前に「303 see other」を出力してみた。
 →書き込み後URLに?がつかない。
 イメタグの処理を改善。

2002/04/05 - 1.21
 過去ログ作成時のバグを修正しました。

2002/04/02 - 1.20
 重大なセキュリティホールを修正しました。

2002/03/31 - 1.13
 read.cgiがget方式に対応。

2002/03/25 - 1.12
 search.cgiの詳細設定可。
 デザインを大幅変更。

2002/03/25 - 1.11
 admin.cgiでスレッド選択時、ページ移動ができないバグを修正。
 記事を修正したときにホストを取得してなったバグを修正。

2002/03/21 - 1.10
 検索機能で続きを検索した場合にorや名前検索が反映されないバグを修正。

2002/03/21 - 1.09
 検索機能に各種設定を追加。

2002/03/20 - 1.08
 検索機能にand/or検索を追加。

2002/03/18 - 1.07
 検索機能β版を導入。

2002/03/18 - 1.06
 削除時のロック中エラーの場合に、ロックを解除しなかったのを修正。

2002/03/15 - 1.05
 過去ログを消す可能性を考え、過去ログの一覧をread.cgiに移行。
 互換性が一部失われました。
 (具体的には昔の過去ログから一覧へのリンクが無効になりました)

2002/03/13 - 1.04
 page.cgiのアンカーを一部修正。

2002/03/06 - 1.03
 引用文を強調表示できるようにしました。
 DTDの宣言?をフレーム対応に変更。
 投稿サイズを正確に判定していなかったバグを修正。

2001/12/06 - 1.01
 思ったとおり残ってました、バグ。
 >>番号を使わない時のバグと名前色が適用されないバグを修正しました。

2001/12/05 - 1.00
 大幅に変更。
 変更点はとても書ききれない。
 最初に作ったものとは別物です。
 バグはだいぶ取ったけど、まだ残ってるかも。

2001/10/09 - 0.60
 ERROR CODEシステムを採用。
 これによりエラーの内容と場所がつかみやすくなりました。
 これは主に管理者がサポートをより円滑にするためのものです。
 admin.cgiの過去ログ作成にあったバグを修正。
 半角カナに対応しました。完全とまではいかないと思いますが。
 バージョンアップする方はgetcode.plを忘れずにアップしてください。

2001/10/06 - 0.55
 admin.cgiに機能を追加。
 スクリプトをお掃除。

2001/10/03 - 0.53β
 アンカーのアルゴリズムを修正。
 あってもたいしてセキュリティが向上しないメールチェックを排除。
 かわりにsageを含む文字列をメール欄に入力でsage可能。

2001/09/08 - 0.51
  ダブルクオートが抜けていたのを修正。

2001/09/07 - 0.50
  著作権・自動リンクのターゲットを_blankに。

2001/09/01 - 0.49β
  全体の構造化。
  スクリプト内をお掃除。
  ロック形式の変更。
  同一ページ内のスレッドはスレッド一覧からアンカーでリンク。

2001/06/22 - 0.42
  削除時のロック不備修正。

2001/06/22 - 0.41
  リロード追加。
  ▲・▼のバグを修正。

2001/06/21 - 0.40β
  管理者権限での過去ログ生成機能。
  管理者権限でのデータファイル復旧機能。
  \nをつけてHTMLソースを多少見やすく。

2001/06/20 - 0.30β
  デコード部修正。
  日付処理のケアレスミスを修正。(→表示に「日」が抜けていた)
  アスキークッキーを任意選択。
  その他、細かな点を修正。

2001/06/20 - 0.29β
  記事参照機能を強化。
  『>>番号-番号』という連番表現が可能に。

2001/06/19 - 0.28β
  ログの形式を変更。
  細かな点を結構修正。

2001/06/17 - 0.26β
  アスキーアート用に等幅を一時閉じる機能を追加(第一期)。
  タグの無条件許可機能を排除。

2001/06/17 - 0.25β
  二重投稿防止機能をつける。
  Locationヘッダも使用可能に。

2001/06/16 - 0.23β
  リプライ機能をつける。
  レス番号にリンクを貼る。
  『>>番号』で同じスレッドのその番号の記事にリンクする。

2001/06/16 - 0.20β
  タグ除去機能ほぼ完成。
  それに合わせてインラインリンクも修正。

2001/06/15 - 0.18β
  管理者のみスレッドを作れる機能を追加。
  インラインリンクを追加。
  タグ許可仕様を細分化。
  イメタグ許可をそれとは別に追加。

2001/06/14 - 0.15β
  クッキーが不完全だったのを修正。

2001/06/14 - 0.14β
  admin.cgiを追加。
  管理者権限でのスレッド削除・レス削除・IP閲覧機能追加。

2001/06/13 - 0.04β
  ページ移動用リンクを忘れていたので追加。
  それに伴い、POSTかGETかチェック。
  ホームページで使用開始

2001/06/13 - 0.03β
  削除フォーム追加。
  不完全なロックの修正。
  フォームチェック強化。

2001/06/12 - 0.00β
  初使用。
 主にプライベートで。