- アップロード式掲示板 -
特長
- 画像などのバイナリファイルをアップロードすることのできる掲示板です。
- サンプルは以下にあります。
- Clip Boardの機能的な特長は以下のとおりです。
- 画像などのバイナリファイルをブラウザからアップロードすることができます。
- スマホ画面に対応したレスポンシブデザインです。
- 画像を自動縮小し(サムネイル化)、閲覧を軽くすることができます(要:Image::Magick)。
- 投稿記事を管理人に自動でメール通知させることできます。(sendmailの使えるプロバイダ)
- クッキー対応や管理人による記事削除が可能です。
- キーワードから過去の投稿記事のワード検索を行うことができます。
- 全画面がテンプレート式のため、自由にデザインやレイアウト改造が可能です。
- スパム対策用に画像認証機能を使用することができます。
- アップロード可能なファイルは、設定で制限することができます。
- このプログラムを利用する上での利用規定です。必ず目を通しておいて下さい。プログラムをダウンロードする場合、「利用規定」に同意したものとみなします。
プログラムの入手
- 以下の書庫ファイルをダウンロードします。文字コードはUTF-8です。
- ダウンロード後、解凍 します。解凍すると以下のファイルが展開されます。
clipbbs.cgi --------------- 掲示板プログラム regist.cgi ---------------- 書込プログラム captcha.cgi --------------- 画像認証プログラム check.cgi ----------------- 設定チェックプログラム init.cgi ------------------ 設定ファイル admin.cgi ----------------- 管理用プログラム data/*.* ------------------ データファイル等 lib/*.* ------------------- CGI部品・モジュール等 icon/*.gif ---------------- アイコン画像 [配布元] img/ ---------------------- アップロードディレクトリ tmpl/*.html --------------- テンプレートファイル cmn/view/*.* -------------- 画像ビューアー [入手元] cmn/*.png ----------------- アイコン画像 [入手元] cmn/bbs.css --------------- スタイルシート cmn/bbs.js ---------------- javascriptスタイルシート
プログラムの設定及び設置
- 全体のディレクトリ構成とファイル位置の設置例は以下のとおりです(かっこ内はパーミッションの設定値)。
ディレクトリ構成例
public_html / index.html (トップページ) | +-- clipbbs / clipbbs.cgi [705] ... 掲示板本体 | regist.cgi [705] | admin.cgi [705] ... 管理画面 | captcha.cgi [705] | check.cgi [705] | init.cgi [604] | +-- lib / *.pm | | *.pl | | | +-- Crypt / *.* | +-- GD / *.* | +-- CGI / *.* | +-- bin / *.* | +-- Digest / *.* | +-- data / log.cgi [606] | | pass.dat [606] | | | +-- pwd [707] / | +-- ses [707] / | +-- img [707] / | +-- cmn / *.* | | | +-- view / *.* | +-- tmpl / *.html
- init.cgi を エディタ で開いて以下の箇所を修正します。
- $cf{thumbnail} = 0;
- (画像を自動縮小する場合は「1」とします。これにより大きな画像でも縮小されるため、閲覧速度が軽減されます。ただし、サーバ側でImage::Magickが利用できることが条件です。Image::Magickの可否は「check.cgi」でチェックすることができます。)
- $cf{maxlog} = 100;
- (最大記事数の設定です。これを超える記事とその添付ファイルは古い順に削除されます)
- $cf{imgdir} = "./img";
- (アップロードされるファイルの格納ディレクトリをサーバパスで指定します。フルパスで記述する場合は、/ から記述します)
- $cf{imgurl} = "./img";
- (上記のディレクトリのURLパスを指定します。フルパスの場合 http:// から記述します)
- $cf{imgcheck} = 1;
- (アップされた添付ファイルを管理者がチェック後に表示する場合は「1」とします)
- $cf{w_regist} = 0;
- (ここに秒数を記述すると、同一ホストはからその秒数間は連続投稿ができなくなります)
- $cf{maxdata} = 512000;
- (1度に投稿できるデータ容量の制限値をバイト数で指定します。例えば、102400バイト=100KBとなります)
- $cf{ok_text} = 0; # TEXT
$cf{ok_gif} = 1; # GIF
$cf{ok_png} = 1; # PNG
$cf{ok_jpeg} = 1; # JPEG - (アップロードを許可するファイル形式を指定します。許可するファイルを「1」とします)
- $cf{use_captcha} = 1;
- スパム対策に画像認証を使用する場合の設定です。使用しない場合は「0」、使用する場合でライブラリー版を使用する場合は「1」、モジュール版を使用する場合は「2」とします
※画像認証(投稿キー機能)についての詳細は右記ページをご覧ください。: 画像認証について
- $cf{max_failpass} = 5;
- (管理パスワードの最大間違い制限を指定します。この回数以上になるとログインがロックされます。
※運用の注意点は右のリンクをご覧ください: 管理パスワードについて) - clipbbs.cgi, regist.cgi, admin.cgi, captcha.cgi, check.cgi を エディタ で開いて以下の箇所を修正します。
- #!/usr/local/bin/perl
- (プロバイダで定められたPerlへのパスを指定します)
- 以上、修正が完了したら各ファイルを所定のディレクトリへFTP転送し、以下のとおり アクセス権 (パーミッション) を設定します。
ファイル名 パーミッション 転送モード 一般サーバ suEXECサーバ
CGIWrapサーバclipbbs.cgi
captcha.cgi
regist.cgi
admin.cgi
check.cgi755 or 705 701 or 700 アスキー data/log.cgi 666 or 606 600 アスキー cmn/*.png
lib/bin/*.png
lib/bin/*.ttf- - バイナリ lib/*.*
tmpl/*.html
cmn/*.css- - アスキー imgディレクトリ 777 or 707 755 or 705 - Tips:ファイル転送の仕方は以下のページを参考にしてください。
FTP : Windows編 FTP : Macintosh編 - 以上、作業が完了したら「チェックモード」で動作チェックを行ないましょう。「check.cgi」に直接アクセスすることで、簡易的なチェックを行うことができます。なお、動作チェック後はcheck.cgiはファイル削除しておきます。
おすすめページ
- HI-HO向けバージョン : MissKitaさん
HI-HO用改造版および設置解説ページ