(SS)C-BOARD v3.8 README |
(SS)C-BOARDは、C-STATIONにおいてT.Kimata氏が開発された高機能Web掲示板 C-BOARD をスカリーソフトで改造したバージョンです。
ライセンスはオリジナルの C-BOARDとまったく同一のライセンスとなりますが、著作権は、オリジナルソース部分はT.Kimata氏、改造部分は改造者(複数)が保有しています。
付属のドキュメント類に関しても、オリジナルのものをベースに修正を施しています。
当バージョンに関するご意見・お問い合わせは、スカリーソフト(http://www.skullysoft.com/)までお願いします、改造を行っていますので、改造部分についてはC-SATIONならびにT.Kimata氏へのお問い合わせをご遠慮ください。
携帯電話用の絵文字の著作権は各キャリア会社にあります。
非営利目的の使用であればご自由にお使いいただけますが、商用利用の場合は各キャリアに絵文字使用の許可を取ってください。
尚、i-modeの絵文字はドコモのサイトを参考に手打ち(ドット打ち)しています。
オリジナルと若干異なる場合がありますので、ご注意ください。
v3.5.8 SP1 〜 v3.7 SP2a で、アットマンおよびあだこ氏によりライセンス規約を変更しておりましたが、これは、オリジナルのライセンス規約に明らかに違反する行為でした。
オリジナル作者のT.Kimata氏、ユーザー各位、改造にたずさわった各位、すべての皆様に深くお詫び申し上げますとともに違反行為の訂正と是正をさせていただきます。
また、ライセンス違反に関してのご指摘・ご助言をいただいた方々に深く感謝申し上げます。
v3.8より正規のライセンスに準拠しております。
ライセンス違反のあった v3.5.8 SP1 〜 v3.7 SP2a をお持ちの方、既にご使用になっている方は当バージョンに置き換えていただきたく存じます。
また、v3.5.8 SP1 〜 v3.7 SP2a の再配布を控えていただきたく存じます。
このドキュメント及び付属のドキュメントに記載されている内容はその正しさを保証 するものではありません。ご自身で責任を持って活用してください。
バージョン5.005_03以上のもの
Apache, IIS, Anhttpd
以上の環境はあくまで動作が確認された環境ですが、標準的なWebサーバであれば大抵動作します。
(SS)C-BOARDはその機能に見合わず簡単に設置できるように工夫されています。 ややこしいのはパーミッション設定だけなのであせらずゆっくりと手順どおりに進んでください。
圧縮ファイルに数字以外の画像は含まれていません。AQUAスキン用画像も含めてセットアップ作業過程で自動的に生成されます。上手くいかない場合はパーミッションをもう一度確認した上で、「FAQ.htm」参照。
セットアップ等の管理人用コマンドを実行するにはCookieに対応したブラウザが必要です。(対応していてもCookieの機能をオフにしていると実行できません) これは一時的にクッキーにパスワードを記録させる為ですが、ブラウザを終了させるとパスワードの記録されたクッキーは自動的に削除されるのでセキュリティー上問題はありません。
また、ネットスケープの一部バージョンは外部スタイルシートが読み込めないとページそのものも表示できない場合があるのでセットアップ作業にはインターネットエクスプローラ(IE)の使用を強く推奨します。(詳しくは「FAQ.htm」参照)
あと、最初のセットアップでは「HTTP_REFERER」を利用するので「HTTP_REFERER」を送信しないような特殊なブラウザは使用できません。
CGIをはじめて設置する場合はプロバイダのサポートページでCGI設置に関する注意事項をまず読んで下さい。また、CGI設置経験のない方はまず、小さいめの簡単なスクリプトを設置して練習して置いた方がいいかもしれません。
c-board.cgiの一行目のPerlのパスをサーバーにあわせて書き替えます。
「トクトク」等のヘッダーをフィルタリングするサーバーに設置する場合は説明にしたがって先頭の「# $::SYS{'liar'} = 1;」を「$::SYS{'liar'} = 1;」にして下さい。
設置したいディレクトリにc-boardディレクトリのファイル一式を転送し、下記のようにパーミッションを設定します。(明記してないものは設定不要です。)
プロバイダによって適切なパーミッションの値は違います。詳細はプロバイダのサポートページで確認してください。
上記の順番でたどっていき、セットアップを実行します。
特に何も設定する必要ありませんが、一番下のパスワードだけ変更します。 この時点では画像等が表示されませんが、正常です
ステップ4と同様に「セットアップ(スタイル)」を実行します。 とりあえず何も変更せずに「設定」をクリックします。 この後画像等が自動生成され、表示されるようになります
設置完了!
同封の「FAQ.htm」およびスカリーソフトのホームページを参照してください。
デフォルト以外の付属のスキンでは都合上「投稿画面の枠の色」等一部の色設定が反映されない場合があります。
免責: 繰り返しになりますが、(SS)C−BOARD及び付属のスキンはご自身で責任を持って 使用してください。作者は一切責任を持ちません。
v3.15以降からは比較的簡単にバージョンアップできます。以下に手順を示します。
上記のもの以外を全て新しいバージョンで上書きします。念のためこの作業はバックアップをとった上でアクセスの少ない時間帯に行ってください。
config.cgi が拡張されている場合がありますので必ず実行してください。
注意:なるべく設定ファイルに上位互換性を保とうとしていますが、都合により設定ファイルに一部互換性がなくなっている場合があります。上記の手順でうまくバージョンアップできない場合は設定ファイル(config.cgi)を上書きしてください。
C−BOARDv3.02以降のバージョンはそれ以前のバージョンとはデータ形式の互換性がありません。
(SS)C−BOARDは投稿の際、書き換え処理等により一瞬ですが最悪
の合計分だけ容量が増えます。よって、設置する場合は十分余裕を持って設置してください。(設定にもよりますが、普通は500KBぐらい余裕があれば大丈夫です)
一瞬とはいえもし、プロバイダから許可された容量を越えるとデータファイルが途中で 途切れたりして、壊れてしまいます。
管理人コマンドのログ(syslog.cgi)、閲覧ランキングデータ(read.cgi)、投稿ランキングデータ(frequency.cgi)、キーワードデータ(keyword.cgi)等はそれぞれセットアップでその機能を使用するように設定すると生成されるようになりますが、この3つはその性格上いずれも自動的に削除されることはなく増え続けます。
サイズ自体はそんなに大きくはないものでそんなに心配する必要はありませんが、一応気に留めておいてください。
注意:データファイルを削除すれば当然ランキング等はリセットされます
(SS)C−BOARDの設定画面には数百個の設定項目があります。正直言ってこれだけの量になると作成者の私でも一度に設定しようとすると挫折してしまいます。
一度に全部設定しようとせず、少しずつ自分の好みに合うように設定していくのがコツです。
また、見た目はセットアップ(スタイル)をいじるだけで大抵のことは変更できるのでがんばってオリジナルな見た目にチャレンジしてみてください。
セットアップでタグの使用を許可できますが、一部のタグを使うと携帯端末で記事が見れなくなります。携帯での閲覧を重視する場合はタグを使えないように設定することをお勧めします。
(SS)C−BOARDの全てのスタイルはstyleフォルダの中のテンプレートファイルによって定義されています。よってセットアップ(スタイル)では対応できないような細かい変更もプログラムの内部をいじることなく対応出来ます。しかもテンプレートファイルはPerlの変数が混じっているもののほとんどHTMLなのでHTMLの知識さえあれば十分編集可能です。
また、テンプレートファイルを一式そろえてstyleフォルダの中に新しくフォルダを作ってその中に入れるだけでオリジナルなスキンが完成するので、デザイン変更の労力を大幅に削減出来ます。デフォルト以外のスキンを作ってぜひオリジナルな掲示板にチャレンジして下さい。
メンバーはデータフォルダ(デフォルトなら「./data」)の中の「member.cgi」というファイルで管理します。(ない場合は作成してください。) 例えば「名無し」さんを「aaa」というパスワードで登録するは「名無し, aaa(改行)」とします。これで「名無し」さんは「aaa」をパスワードに指定することによって書き込むことが出来るようになります。 あとは、同じ要領で一行ずつ好きなだけメンバー登録をしてください。
これを利用して登録すると「member.cgi」には名前、パスワードと共にメールアドレスが記録されるので登録者の有効なメールアドレスを知ることが出来ます。
注意点:
手間増えますが、(SS)C-BOARDはmod_perlでも(多分 *1)動かせます。
*1 本質的に(SS)C−BOARDはmod_perlで動作させることを想定して作られていません
注意: 通常、あるディレクトリをmod_perlで動くように設定するとそのディレクトリ以下のファイルは全てPerlスクリプトとして扱われてしまうため、デフォルトのままでは画像等が出なくなってしまいます。よって、設定を追加するか、ディレクトリを他の場所に移すか、空欄にして(SS)C−BOARDが出力するように設定しておいてください。
# BEGIN {
# chdir 'c:/www/develop/c-board/c-board';
# }
という行を
BEGIN {
chdir '設置したディレクトリの絶対パス';
}
に変更します。 (mod_perlで動かすとカレントディレクトリが移動してしまうのでその対策)
注意:
(SS)C−BOARDでは設定さえすればどんな種類のファイルもアップロード可能です。 またサイズについても特に制限はありません。(小メモリで動作するように設計されて いるので数十メガのファイルもアップロード可能です) ただ、イントラネットならいいのですがインターネットとなると回線が細いためあまり 大きいサイズのファイルをアップロード使用とするとタイムアウトしてしまい アップロードを完了することが出来ませんので注意してください。 (数百キロバイトを目安にしてください)
(SS)C−BOARDはパラーメータを簡単に追加できるように設計されています。 例えば「opt_age」というパラメータを追加したいときは以下のように簡単にできます。
※応用すれば(SS)C−BOARDにアイコン式掲示板の機能を付け加えてしまうことも可能です。(例えば「<img src=``./image/$MSG{'opt_icon'}.gif''>」としてしまう)
注意:
改造に関する質問は原則受け付けていませんので自己の責任で行ってください。
(SS)C−BOARDにはSHA‐1を利用して更新のあったファイルを検出する機能が一応
備わっています。パスワードが「pass」のままの状態で「c-board.cgi?cmd=smv」にアクセスしてみてください。
(サーバー負荷を考えてパスワードを変更した後は実行できないようになっています。
また、この作業は非常に重たい処理を伴うので必ずローカルで行ってください。)
注意:この機能はかなり実験的なものです。この説明を読んでコマンドを実行しても何の事かよく分からない場合は通常どおりの手順でバージョンアップを行ってください。
#この機能に関して、スカリーソフトではテストできる環境が無いため一切保証できません、今後当ドキュメントからも削除する予定です(2002/04/04)
(SS)C−BOARDを構成するファイルは多く、設計やコーディングスタイルが醜い部分が多々あるかもしれませんが、処理の流れは比較的シンプルでグローバル変数も極力使わないようにしてあるので順にコードを追っていけば大抵のことは何とかなると思います。
なお、もしバグを発見したり、面白い機能をつけた場合は教えて下さい。
require './lib/file/msg.pl';
my $o_message = new FILE::MESSAGE('./data'); # データのあるディレクトリを指定
my $r_MSG;
while ($r_MSG = $o_message->read(0, 10, 'all')) { # 0番目から10個の記事を読む
*MSG = $r_MSG; # この時点で%MSGに記事データが入ります
print "名前: $MSG{'name'}";
}
同時に任意の数のツリー&記事を、必要ならば過去ログ作成用にデータを読み込みつつ 記事ファイルとツリーファイルの整合性をある程度チェックしながら 添付ファイルがあれば添付ファイルも削除しながら 複数のファイルに渡り記録されているデータをある程度効率的に削除する
というかなり厄介な処理のために掲示板のコードとは思えないほど非常に複雑になって いるので注意が必要です。(汗) ←削除処理の設計が悪いってのもありますが・・・
オリジナルの C-BOARD を開発された T.Kimata氏にこの場をお借りして感謝申し上げます。
また、(SS)C-BOARDユーザーズグループの運営、スクリプトの改造に絶大な助力をいただいている、PON氏、びんぢ氏、あだこ氏、Mame氏に感謝いたします。
そして、すべての (SS)C-BOARDユーザーの方へ、御礼申し上げます。
(SS)C−BOARDを作る上で以下のサイトに大変お世話になりました。
C-BOARDのオリジナルの開発者T.Kimata氏のサイトC-STATIONの移転サイト。
本バージョンに関して、T.Kimata氏に直接問い合わせることは厳禁となっています。
日本におけるフリーCGIの普及に大きく貢献したサイト。
ホームページ作成に役立つテクニックが満載です。
(SS)C-BOARD v3.8 README |