- 新着情報ボード -
特長
- 画像をアップロードしたり、YouTube等の動画の貼り付けが可能な新着情報掲示板です。
- サンプルは以下にあります。
- Topics Boardの機能的な特長は以下のとおりです。
- 管理者のみが書き込みできる新着情報ボードです。日記などにも使用できます。
- WYSIWYG(ウィジウィグ)エディター「NicEdit日本語版」を基本装備しており、ウェブ上で自由な記事編集が可能です。
- スマホ画面に対応したレスポンシブデザインです。
- 全画面テンプレート式のため、レイアウトやデザインを自由に修正することができます。
- 記事と一緒に添付ファイル(画像やPDFファイル等)を3つまで同時にアップロードすることができます。
- 画像を自動縮小し、閲覧を軽くすることができます(要:Image::Magick)。
- キーワード検索が可能です。
- YouTube等の埋め込みタグに対応しました。
- アップロードする添付ファイルは、画像の他にも、PDFやWORD/EXCELファイル等も添付することができ、各ファイルに適合したアイコンを表示します。
- RSS 2.0 フィードを自動生成します。
- このプログラムを利用する上での利用規定です。必ず目を通しておいて下さい。プログラムをダウンロードする場合、「利用規定」に同意したものとみなします。
プログラムの入手
- 以下の書庫ファイルをダウンロードします。文字コードはUTF-8です(Ver.4以前をお使いの方はログファイルをUTF-8に変換する必要があります)。
- ダウンロード後、解凍 します。解凍すると以下のファイルが展開されます。
topics.cgi --------------- 掲示板プログラム init.cgi ----------------- 設定ファイル admin.cgi ---------------- 管理用プログラム check.cgi ---------------- 動作チェック用プログラム index.xml ---------------- RSS2.0フィードファイル lib/CGI/Minimal.pm ------- データ受理モジュール [配布元] lib/CGI/Session.pm ------- セッション管理モジュール [配布元] lib/Digest/SHA/PurePerl.pm -- 暗号化モジュール [配布元] lib/thumb.pl ------------- 画像縮小モジュール(Image::Magick用) data/topics.dat ---------- データファイル tmpl/*.html -------------- テンプレートファイル upl/ --------------------- 画像ディレクトリ(アップロード用) cmn/*.png ---------------- アイコン画像 [入手元] cmn/nicEdit.js ----------- WYSIWYGエディタ NicEdit日本語版 [入手元] cmn/style.css ------------ スタイルシートファイル
プログラムの設定及び設置
- 全体のディレクトリ構成とファイル位置の設置例は以下のとおりです(かっこ内はパーミッションの設定値)。
ディレクトリ構成例
public_html / index.html (トップページ) | +-- topics / topics.cgi [705] ... 掲示板本体 | admin.cgi [705] ... 管理画面 | check.cgi [705] | init.cgi [604] | index.xml [606] | +-- lib / *.* | +-- data / topics.dat [606] | | pass.dat [606] | | | +-- pwd [707] / | +-- ses [707] / | +-- upl / [707] | +-- cmn / *.png | *.js | *.css | +-- tmpl / *.html
- init.cgi を エディタ で開いて以下の箇所を修正します。
- $cf{thumbnail} = 0;
- (画像を自動縮小する場合は「1」とします。これにより大きな画像でも縮小されるため、閲覧速度が軽減されます。ただし、サーバ側でImage::Magickが利用できることが条件です。Image::Magickの可否は「check.cgi」でチェックすることができます。)
- $cf{imgdir} = './upl';
$cf{imgurl} = './upl'; - (アップロードする画像を置くディレクトリのパスと、そのURLを記述します)
- $cf{homepage} = '../index.html';
- (掲示板からの戻り先のURLを記述します。http://から記述しても構いません)
- $cf{rss_make} = 1;
- (RSSフィードを自動生成させる場合は「1」とします)
- $cf{topiurl} = 'http://www.eaxample.com/topics/topics.cgi';
- (topics.cgiのURLパスをhttp(s)から始まるURLフルパスで定義します)
- $cf{rssurl} = 'http://www.eaxample.com/topics/index.xml';
- (RSSフィードであるindex.xmlのURLパスをhttp(s)から始まるURLフルパスで定義します)
- $cf{max_failpass} = 5;
- (管理パスワードの最大間違い制限を指定します。この回数以上になるとログインがロックされます。
※運用の注意点は右のリンクをご覧ください: 管理パスワードについて)
- topics.cgi, admin.cgi, check.cgi を エディタ で開いて以下の箇所を修正します。
- #!/usr/local/bin/perl
- (プロバイダで定められたPerlへのパスを指定します)
- 以上、修正が完了したら各ファイルを所定のディレクトリへFTP転送し、以下のとおり アクセス権 (パーミッション) を設定します。
ファイル名 パーミッション 転送モード 一般サーバ suEXECサーバ
CGIWrapサーバtopics.cgi
check.cgi
admin.cgi755 or 705 701 or 700 アスキー init.cgi 644 or 604 601 or 600 アスキー topics.dat
index.xml666 or 606 600 アスキー lib/*.*
tmpl/*.html
cmn/*.css- - アスキー cmn/*.png - - バイナリ uplディレクトリ 777 or 707 755 or 705 - Tips:ファイル転送の仕方は以下のページを参考にしてください。
FTP : Windows編 FTP : Macintosh編 - 以上、作業が完了したら「チェックモード」で動作チェックを行ないましょう。「check.cgi」に直接アクセスすることで、簡易的なチェックを行うことができます。なお、動作チェック後はcheck.cgiはファイル削除しておきます。
おすすめページ
- @niftyでの設置事例
TopicsBoardの設置事例