- トピックス式掲示板 -
特長
- ちょっとおしゃれなトピックス式の掲示板です。ログはスレッド毎に独立して保存されるため、サーバ負荷の少ない掲示板です。
- サンプルは以下にあります。
- WEB PATIOの機能的な特長は以下のとおりです。
- スマホ画面に対応したレスポンシブデザインです。
- ログファイルはスレッド毎に独立して生成され、初期画面ではそのインデックスファイルを読むだけですので、サーバ負荷の軽い掲示板です。
- 各スレッドには返信記事を投稿することができます。
- 各スレッドには画像ファイルを1度に3枚までアップロードすることができます。
- 投稿記事中にユニークな顔アイコンを挿入することができます。
- スレッドを作成した方は、話題が完了した時点で、当該スレッドをロックして終了することができます。
- 過去ログ機能が標準で付加されます。
- 会員アクセス制限が可能です。セッションログ+セッションクッキーを利用し、IDごとに「閲覧のみ」「書込み可能」という2つの権限を設定することができます。
- 名前欄のなりすましを防ぐトリップ機能を装備しています。
- 全画面がテンプレート式のため、自由にレイアウトやデザインを変更することができます。
- スパム対策用に画像認証機能を使用することができます。
- このプログラムを利用する上での利用規定です。必ず目を通しておいて下さい。プログラムをダウンロードする場合、「利用規定」に同意したものとみなします。
プログラムの入手
- 以下の書庫ファイルをダウンロードします。文字コードはUTF-8です。
- ダウンロード後、解凍 します。解凍すると以下のファイルが展開されます。
patio.cgi ------------------- 掲示板プログラム regist.cgi ------------------ 投稿用プログラム init.cgi -------------------- 設定ファイル admin.cgi ------------------- 管理用プログラム captcha.cgi ----------------- 画像認証用プログラム check.cgi ------------------- 動作チェック用プログラム lib/jacode.pl --------------- 文字コード変換モジュール [入手元] lib/pngren.pl --------------- PNG連結ライブラリ [配布元サイト閉鎖中 : 桜月氏作成] lib/Crypt/RC4.pm ------------ 暗号化モジュール [配布元] lib/GD/SecurityImage.pm ----- 画像認証作成モジュール [配布元] lib/CGI/Session/ExpireSessions.pm ----- セッションファイル消去モジュール [配布元] lib/*.pl -------------------- 補助プログラム lib/bin/*.ttf --------------- フォントファイル(画像認証用) lib/bin/*.png --------------- 画像ファイル(画像認証用) data/index1.log ------------- 現行INDEXファイル data/index2.log ------------- 過去INDEXファイル data/memdata.cgi ------------ 会員データファイル data/ses -------------------- セッションディレクトリ data/log -------------------- ログ格納ディレクトリ tmpl/*.html ----------------- テンプレートファイル cmn/*.gif ------------------- アイコン [配布元] cmn/sml_*.gif --------------- スマイルアイコン [配布元]
プログラムの設定及び設置
- 全体のディレクトリ構成とファイル位置の設置例は以下のとおりです(かっこ内はパーミッションの設定値)。
ディレクトリ構成例
public_html (ホームディレクトリ) | +-- patio / patio.cgi [705] ... 掲示板本体 | admin.cgi [705] ... 管理画面 | regist.cgi [705] | captcha.cgi [705] | check.cgi [705] ... チェック後はファイル削除 | init.cgi [604] | +-- lib / *.* | +-- data / index1.log [606] | | index2.log [606] | | memdata.cgi [606] | | pass.dat [606] | | | +-- log [707] / | +-- ses [707] / | +-- pwd [707] / | +-- upl [707] / | +-- cmn / *.*
- init.cgi を エディタ で開いて以下の箇所を修正します。
- $cf{authkey} = 0;
- (会員アクセス制限を行う場合には 1 とします)
- $cf{authtime} = 60;
- (会員アクセス制限を行う場合のログイン後の有効時間を分単位で指定します)
- $cf{image_upl} = 1;
- (親記事の画像アップを許可する場合は「1」を、許可しない場合は「0」とします)
- $cf{title} = "掲示板";
- (掲示板のタイトルを記述します)
- $cf{i_max} = 100;
- (現行ログとして保持するスレッド数の最大値です。これを超えると、古いスレッドから過去ログへ移行します)
- $cf{p_max} = 300;
- (過去ログとして保持するスレッド数の最大値です。これを超えると、古い順に自動削除します)
- $cf{pg_max} = 10;
- (スレッド内の返信記事で、1ページ当りに表示される記事数です)
- $cf{m_max} = 100;
- (1スレッド当りの最大返信数です。これを超えるとスレッドは終了し、過去ログへ移行します)
- $cf{pgmax_now} = 10;
- (初期メニューでのスレッド最大表示数です)
- $cf{pgmax_past} = 20;
- (過去ログメニューでのスレッド最大表示数です)
- $cf{upldir} = './upl';
$cf{uplurl} = './upl'; - (画像ディレクトリのパスを、上から順にサーバパス、URLパスの順で指定します。URLパスは http://から記述してもかまいません)
- $cf{max_failpass} = 5;
- (管理パスワードの最大間違い制限を指定します。この回数以上になるとログインがロックされます。
※運用の注意点は右のリンクをご覧ください: 管理パスワードについて)
- patio.cgi, regist.cgi, check.cgi, captcha.cgi を エディタ で開いて以下の箇所を修正します。
- #!/usr/local/bin/perl
- (プロバイダで定められたPerlへのパスを指定します)
- 以上、修正が完了したら各ファイルを所定のディレクトリへFTP転送し、以下のとおり アクセス権 (パーミッション) を設定します。
ファイル名 パーミッション 転送モード 一般サーバ suEXECサーバ
CGIWrapサーバpatio.cgi
regist.cgi
check.cgi
admin.cgi
captcha.cgi755 or 705 701 or 700 アスキー index1.log
index2.log
memdata.cgi666 or 606 600 アスキー init.cgi 644 or 604 600 アスキー uplディレクトリ 777 or 707 755 or 705 - data/logディレクトリ
data/sesディレクトリ777 or 707 701 or 700 - lib/*.*
style.css
tmpl/*.html- - アスキー icon/*.gif
lib/bin/*.png
lib/bin/*.ttf- - バイナリー Tips:ファイル転送の仕方は以下のページを参考にしてください。
FTP : Windows編 FTP : Macintosh編 - 以上、作業が完了したら「チェックモード」で動作チェックを行ないましょう。「check.cgi」に直接アクセスすることで、簡易的なチェックを行うことができます。なお、動作チェック後はcheck.cgiはファイル削除しておきます。
補足事項
- アクセス制限モードにする場合( $cf{authkey} = 1; )、最初に管理画面( admin.cgi ) へ直接アクセスして、会員ID&パスワードを発行してください。
- 名前欄にはトリップ機能が装備されています。トリップ機能とはなりすましを防ぐ機能で、名前欄に「名前#任意の文字列」と入力すると、掲示板の名前は「名前◆暗号化された文字列」と表示されます。
【例】 「やまだたろう#hogehoge」 → 「やまだたろう◆Whe5Fvoki8o」
もし、偽者が名前欄に「やまだたろう◆Whe5Fvoki8o」と入力しても、「やまだたろう◇Whe5Fvoki8o」と表示されて偽者であることがわかる仕組みになっています。
おすすめページ
- きりしま式 Web Patio
(レスの本文も含めた検索、NEWマーク機能等) - Patio-FU
(ファイルのアップロード機能) - Forum Patio
(Web PatioとWeb Forumの両閲覧形式をサポートしたマルチスレッド型掲示板)