シングスCGI トップ > フリーウェア >

掲示板「BBS」

設定・設置マニュアル

設定・設置手順

  1. サーバー環境などスクリプト動作条件を確認・ダウンロード
  2. ダウンロードしたファイルを解凍して内容を確認
  3. CGIスクリプトの設定
  4. bbs.cgi (プログラム本体) の設定
  5. bbs.temp (テンプレートファイル) の作成・設定
  6. convert.cgi (データファイル変換プログラム) の設定 (前バージョンからのアップグレードの場合)
  7. スクリプトの設置
  8. パーミッションの設定
  9. データファイルのデータ変換 (前バージョンからのアップグレードの場合)
  10. サーバー設定ファイル (.htaccess) の設定
  11. 動作確認
  12. アンインストール方法

1. サーバー環境などスクリプト動作条件を確認・ダウンロード

ご利用するCGIスクリプトの動作条件とお使いのサーバーの環境でご利用になれるか事前にスクリプト動作条件をご確認の上、ダウンロードしてください。

  • サーバーは、UNIX、Free BSD、LinuxなどUNIX系OS を使用しているサーバーに限ります。
  • CGIスクリプトをサーバーに設置することが可能なこと。
  • バージョン5.0 以降の Perl の利用が可能なこと。
  • owner権限でCGIスクリプトが実行できること。
  • ファイルロック「flock関数」が利用可能なこと。
  • Perlモジュール「Jcode」「MIME::Base64」が利用可能なこと。
  • メールサーバ「Sendmail」が利用可能なこと。

ご利用のサーバーによっては、CGIスクリプトの利用に関して利用制約や負荷軽減を行っている場合もございます。その場合、CGIスクリプトが動作しない、機能の一部が働かない場合があります。ご利用のサーバー上でのCGIスクリプトの動作保証はしておりませんので、あらかじめご了承ください。

2. ダウンロードしたファイルを解凍して内容を確認

ダウンロードしたZIPファイル「bbs.zip」を解凍して、フォルダ「bbs」のファイルを確認します。

  • readme_free.html (はじめにお読みください。)
  • bbs.cgi (BBSプログラム)
  • bbs.dat (データファイル)
  • bbs.temp (テンプレートファイル)
  • bbs.rdf (RSS1.0ファイル)
  • bbs.xml (RSS2.0ファイル)
  • atom.xml (Atomファイル)
  • ip.dat (IP・ドメインフィルターファイル)
  • word.dat (ワードフィルターファイル)
  • 0.htaccess (サーバー設定ファイル)
  • convert.cgi (データファイル変換プログラム)

ファイル名の変更は可能です。その場合、該当ファイル名を読み替えて、設定をしてください。

3. CGIスクリプトの設定

CGIスクリプトの初期設定は、各CGIスクリプト等をテキストエディタ等で開いて設定します。

4. bbs.cgi (BBSプログラム) の設定

(必須)がある項目、または背景色が■■■の場合は、必須設定項目です。

Perlのパス設定

ファイルを開いて、先頭一行目にPerlのパスがあります。サーバーにあるPerlのパスを確認し、変更が必要な場合、変更してください。

#!/usr/bin/perl (CGIスクリプトの先頭部分)

初期設定

# 管理用パスワード(半角英数字8文字程度)(必須)
my $admin_password = 'admin';

管理用パスワードは、セキュリティ保護のため、必ず変えてください。

# データファイルのローカルパス(「/」から始まる絶対パス、あるいは、本プログラム設置場所からの相対パス)(必須)
my $dataFile = 'bbs.dat';
# テンプレートファイルのローカルパス(「/」から始まる絶対パス、あるいは、本プログラム設置場所からの相対パス)(必須)
my $htmlTempFile = 'bbs.temp';
# HTML入出力文字コード (「sjis」Shift_JIS「euc」euc-jp「utf8」utf-8「jis」iso-2022-jp)(必須)
my $charset = 'sjis';
# 最大投稿数(非公開も含む。無制限の場合は「0」)(必須)
my $maxData = 1000;
# 一覧掲載最大件数(必須)
my $result = 10;
# 投稿機能 (「1」機能オン「0」機能オフ)(必須)
my $writeFunc = 1;
# 修正削除機能 (「1」機能オン「0」機能オフ)(必須)
my $editFunc = 1;
# 返信機能 (「1」機能オン「0」機能オフ)(必須)
my $replyFunc = 1;
# 投稿チェック機能(「1」機能オン「0」機能オフ)(必須)
my $postCheckFunc = 1;
# 投稿キーワード機能 (「1」機能オン「0」機能オフ)(必須)
my $postKeywordFunc = 1;
# IP・ドメインフィルターファイルのローカルパス(「/」から始まる絶対パス、あるいは、本プログラム設置場所からの相対パス、空白の場合は、機能オフ)(必須)
my $ipFile = 'ip.dat';
# ワードフィルターファイルのローカルパス(「/」から始まる絶対パス、あるいは、本プログラム設置場所からの相対パス、空白の場合は、機能オフ)(必須)
my $wordFile = 'word.dat';
# ログイン用クッキー名(必須)
my $cookieKey = 'bbs';
# 投稿フォームの位置 (「up」ページ上部「down」ページ下部「both」ページ上部・下部、一部表示なし)(必須)
my $postForm = 'up';
# 投稿用クッキー名(必須)
my $repeatKey = 'repeat';
# 再投稿時間(単位:分、無制限の場合は「0」)(必須)
my $repeatTime = 3;
# リンク自動機能(「1」機能オン「0」機能オフ)(必須)
my $autoLink = 1;
# リンクタグにnofollow属性付加(「1」付加する「0」付加しない)(必須)
my $nofollow = 1;
# RSS配信機能(「1」配信する「0」配信しない)(必須)
my $publishRSS = 1;

### RSS配信する場合、以下を設定。(必須*) は、必須設定項目 ###

# RSS/Atomファイル(仕様別)のローカルパス(「/」から始まる絶対パス、あるいは、本プログラム設置場所からの相対パス、空白の場合は、配信なし)(必須*)
my $rssFile10 = 'bbs.rdf';
my $rssFile20 = 'bbs.xml';
my $atomFile = 'atom.xml';
# RSS/AtomファイルのURL(「http://」から始まる絶対パス、空白の場合は、配信なし)(必須*)
my $rss10Url = 'http://●●●/bbs.rdf';
my $rss20Url = 'http://●●●/bbs.xml';
my $atomUrl = 'http://●●●/atom.xml';
# RSS配信するベースとなる掲示板のURL(「http://」から始まる絶対パス)(必須*)
my $siteUrl = 'http://●●●/bbs/bbs.cgi';
# ホームページのタイトル (必須*)
my $siteTitle = '●●●';
# ホームページの概要
my $siteDescription = '●●●';
# ホームページの所有者
my $copyright = '●●●';
# ホームページの管理者
my $author = '●●●';
# 管理者のメールアドレス
my $rssEmail = '●●●';
# RSSの概要の表示文字数 (バイト単位、すべて表示する場合は「0」)(必須*)
my $rssLength = 300;
# タイムゾーン(標準時刻からの時差12:00時間以内、書式 : +-00:00)(必須*)
my $timeZoon = '+09:00';

### RSS配信する場合、設定以上 ###

# メール報告機能(「1」報告する「0」報告しない)(必須)
my $report = 0;

### メール報告する場合、以下を設定。 (必須*) は、必須設定項目 ###

# 送信先・エラー時のメールアドレス(必須*)
my $mailTo = '●●●';
# Sendmailのパス(変更が必要な場合、変更すること)(必須*)
my $sendmail = '●●●';
# タイトル (必須*)
my $subject = "●●●";
# 報告するベースとなる掲示板のURL(「http://」から始まる絶対パス)(必須*)
my $reportUrl = 'http://●●●/bbs/bbs.cgi';

### メール報告する場合、設定以上 ###

CGIスクリプトを保存してください。
※注意:ファイルを保存する場合は、文字コードを「Shift-JIS」、改行コードを「LF」で保存してください。

5. bbs.temp (テンプレートファイル) の作成・設定

テンプレートファイルを用意します。
あなたのホームページと同じ体裁・デザインをテンプレートに組み込むなど自由にレイアウトします。
出力内容を表示するため、テンプレートに置換タグの設定します。また、出力内容にも定義済みのスタイルシートを設定することでデザインできます。
既存のスタイルシートとの調整や出力内容からスタイルシートの設定を工夫して、ホームページの調整をしてください。

置換タグの設定

テンプレートをレイアウトして確保したスペース (<body>タグ内) に <!--BBSBODY--> を挿入します。(出力内容が表示されます。)
また、RSS登録をするためにヘッダー部分 (<head>タグ内) に <!--RSS_auto_discovery--> を挿入します。(RSSリーダやRSS対応ブラウザにRSS一覧が表示されます。)

スタイルシートの設定

テンプレートファイルに直接、スタイルシートを組み込んだり、または、外部ファイルを作成して設定をします。下記は定義済みのスタイルシートの一覧です。

div.base{} [レイアウト全体 出力部分]
div.base h1{} [見出しの設定]
div.base p{} [段落の設定]
div.base span.jp{} [文字の設定]
div.base span.red{} [色文字の設定]
div.base p.return{} [もどる]

div.list{} [投稿本体 全体]
div.list div.title{} [投稿本体 タイトル]
div.list div.title h2{} [投稿本体 タイトル]
div.list div.name{} [投稿本体 ハンドル名]
div.list div.date{} [投稿本体 日時]
div.list div.homepage{} [投稿本体 ホームページ]
div.list div.edit{} [投稿本体 修正/削除]
div.list div.reply{} [投稿本体 返信]
div.list div.comment{} [投稿本体 内容]
div.list div.comment p{} [投稿本体 内容 段落の設定]
div.list div.admin{} [管理者用メニュー]
div.list div.admin a{} [管理者用メニュー リンク]
div.list div.admin a.admin_display{} [管理者用メニュー リンク 公開]
div.list div.admin a.admin_edit{} [管理者用メニュー リンク 修正]
div.list div.admin a.admin_delete{} [管理者用メニュー リンク 削除]
div.list div.admin a.admin_filter{} [管理者用メニュー リンク フィルター]
div.invisible{} [投稿本体 非公開]
div.pagenavi{} [ページナビゲーション]

div.form{} [投稿フォーム]
div.form table{} [投稿フォーム テーブル]
div.form table th{} [投稿フォーム テーブル]
div.form table td{} [投稿フォーム テーブル]
div.form table td.submit{} [投稿フォーム テーブル ボタン部分]

div.search{} {投稿検索フォーム]
div.search form{} {投稿検索フォーム]
div.searchMsg{} {投稿検索 結果メッセージ]

div.rss{} [RSSリンク]
div.rss a.rss10{} [RSSリンク RSS1.0]
div.rss a.rss20{} [RSSリンク RSS2.0]
div.rss a.atom{} [RSSリンク Atom]

div.admin_header h2{} [管理画面 タイトル]
div.admin_navi{} [管理者用ナビゲーション]
div.admin_navi h2{} [管理者用ナビゲーション タイトル]
div.admin_navi a{} [管理者用ナビゲーション リンク]
div.admin_navi a.admin{} [管理者用ナビゲーション リンク ログイン]
div.admin_navi a.ipfilter{} [管理者用ナビゲーション リンク IP・ドメインフィルターファイル]
div.admin_navi a.wordfilter{} [管理者用ナビゲーション リンク ワードフィルターファイル]
div.admin_navi a.logout{} [管理者用ナビゲーション リンク ログアウト]

テンプレートファイルを保存してください。
※注意:ファイルを保存する場合は、文字コードを「Shift-JIS」、改行コードを「LF」で保存してください。

6. convert.cgi (データファイル変換プログラム) の設定 (前バージョンからのアップグレードの場合)

(必須)がある項目、または背景色が■■■の場合は、必須設定項目です。

Perlのパス設定

ファイルを開いて、先頭一行目にPerlのパスがあります。サーバーにあるPerlのパスを確認し、変更が必要な場合、変更してください。

#!/usr/bin/perl (CGIスクリプトの先頭部分)

初期設定

# データファイルのローカルパス(「/」から始まる絶対パス、あるいは、本プログラム設置場所からの相対パス)(必須)
my $dataFile = 'bbs.dat';
# HTML入出力文字コード (「sjis」Shift_JIS「euc」euc-jp「utf8」utf-8「jis」iso-2022-jp)(必須)
my $charset = "sjis";

CGIスクリプトを保存してください。
※注意:ファイルを保存する場合は、文字コードを「Shift-JIS」、改行コードを「LF」で保存してください。

以上、設定完了。

7. スクリプトの設置

FTPソフトなどでサーバーに接続して、CGIスクリプト等を設置してください。
設置例は、一般的な例です。ご利用者のサーバー環境条件、ホームページの構成にあわせて設置してください。

public_html
|- cgi-bin
|    ▼cgi-binなどCGIが動作するところに設置
|    |- bbs
|        |- bbs.cgi (BBSプログラム)
|        |- bbs.dat (データファイル)
|        |- bbs.temp (テンプレートファイル)
|        |- ip.dat (IP・ドメインフィルターファイル)
|        |- word.dat (ワードフィルターファイル)
|        |- .htaccess (サーバー設定ファイル)
|        |- convert.cgi (データファイル変換プログラム)
| ▼設定、設置場所はアクセスできるところならどこでも可能
|- bbs.rdf (RSS1.0ファイル)
|- bbs.xml (RSS2.0ファイル)
|- atom.xml (Atomファイル)

8. パーミッションの設定

パーミッションの設定は、一般的な例です。ご利用者のサーバー環境条件にあわせてFTPソフトなどで設定してください。
分からない場合は、レンタルサーバー (共有サーバー) を契約しているホスティング会社やWebスペースを提供しているプロバイダーにお問い合わせし、ご確認ください。

ファイル・フォルダ名 パーミッション
(other権限)
パーミッション
(owner権限)
FTP転送モード
bbs × 705 (rwx---r-x) -
bbs.cgi × 700 (rwx------)
/ 704 (rwx---r--)
アスキー
(テキスト)
bbs.dat × 600 (rw-------) アスキー
(テキスト)
bbs.temp × 600 (rw-------) アスキー
(テキスト)
bbs.rdf × 604 (rw----r--)
/ 644 (rw-r--r--)
アスキー
(テキスト)
bbs.xml × 604 (rw----r--)
/ 644 (rw-r--r--)
アスキー
(テキスト)
atom.xml × 604 (rw----r--)
/ 644 (rw-r--r--)
アスキー
(テキスト)
ip.dat × 600 (rw-------) アスキー
(テキスト)
word.dat × 600 (rw-------) アスキー
(テキスト)
.htaccess × 600 (rw-------) アスキー
(テキスト)
convert.cgi × 700 (rwx------)
/ 704 (rwx---r--)
アスキー
(テキスト)

以上、設置完了。

9. データファイルのデータ変換 (前バージョンからのアップグレードの場合)

前バージョンからのアップグレードの場合は、データファイルのデータ形式を変換します。
事前にデータファイルをバックアップしておくことをオススメします。

設置したデータの変換プログラムのURLアドレスにブラウザでアクセスして、画面の表示に従ってデータファイルのデータ形式を変換します。

データの変換完了後、convert.cgi (データファイル変換プログラム) をサーバーから削除してください。

以上、データの変換完了。

10. サーバー設定ファイル (.htaccess) の設定

サーバー設定ファイルの設定でテンプレートファイルとデータファイルのアクセス制限をします。

FTPソフトでサーバー設定ファイルのファイル名を「0.htaccess」から「.htaccess」に変更します。

以上、サーバー設定ファイル設定完了。

11. 動作確認

設置した掲示板のURLアドレスにブラウザでアクセスして、動作を確認してください。

以上、動作確認完了。

12. アンインストール方法

設置したファイルをすべて削除してください。

以上、アンインストール完了。

サンプルデモを見てみる

概要 | 設定・設置マニュアル | 操作マニュアル | サンプル・ダウンロード | 著作権表示削除

著作権表示削除・シェアウェア申し込み - シングスCGIが提供するCGIスクリプトには、html等のブラウザ表示部分に著作権表示があります。著作権表示の削除申請をすることで著作権表示を削除 (非表示) にすることができます。

設定・設置サービス - CGIスクリプトの設置方法がわからない、手間をかけずにCGIスクリプトを活用したいという方に最適。

CGIスクリプトカスタマイズ - シングスCGIが提供するCGIスクリプトを元にご要望の機能を追加開発できます。

ページの先頭へ