

ランキングサイト
|
|
|
| ■ 概要 |
- 最新バージョン V1.01 です。(2007-11-17バージョンアップ)
- Perl+MySQLで作った掲示板です。(MySQLサーバーを利用できることが前提です)
- 管理者は、自由にフォーラムを作成・編集・削除できます。
- 閲覧者は、フォーラムに新規トピックを作成でき、レス投稿・編集・削除出来ます。
- 書き込みされた方のIPアドレスをソース内に表示します。
- 書き込みされた方のOSを記録し、表示します。
- 書き込みされた方の名前、E-Mail、URLは、クッキーに記録します。
- スパム投稿拒否機能
- サンプル
※別サーバーに設置していますので、多少レスポンスが悪かったり、アクセスできない場合があるかもしれませんがご了承下さい。実際のサーバーに設置された場合は、もう少し早いかと思います。
素材は、有名な素材サイトリンクの(W.S.C.R.)からダウンロードできます。
|
| ■ ダウンロード |
- Myforum.zip (33KB)
- ダウンロードすると以下のファイルが圧縮されています。
- forums.cgi
- forumview.cgi
- index.cgi
- search.cgi
- setfile.cgi
- commom.pl
- jcode.pl
- 画像ファイル
- forum.txt
|
| ■ 設定 |
■■確認事項■■
このフォーラムを設置される場合は必ず以下の事項をサーバー管理者に確認して下さい。
- MySQLの利用が可能か?
- Sendmailの利用が可能か?(管理者メール通知を利用しない場合は利用不可でも設置可能)
- Perlの利用が可能か?(CGIの利用)
最低限、上記の許可が無ければ設置出来ません。
■■共通設定事項■■
- 解凍後、各CGIファイルをメモ帳などのエディタで開きます。
- 各CGIファイルの1行目をサーバー指定のPerlのパスに変更する。
#!/usr/local/bin/perl または #!/usr/bin/perl のはずです。不明の場合は、プロバイダー、サーバー管理者にお尋ね下さい。
■■設定ファイルの初期設定■■
●データベースの設定
- $dbname =
'db1111';
データベースの名前を入力します。
- $dbusername =
'us111';
データベースへアクセスするユーザー名を入力します。
- $dbpassword =
'12345678';
データベースのパスワードを入力します。
- $table2 = 'forums';
$table3 =
'logs'; テーブル名ですが、基本的に変更しないで下さい。分かる方は変更しても構いません。
- $master_pass =
'123';
管理者ページのパスワードを入力します。任意に決めて下さい。
●管理者の設定
- $master_pass =
'123';
管理者ページのパスワードを入力します。任意に決めて下さい。
- $master_email =
'webmaster@cgi-down.com';
管理者のメールアドレスを入力します。メール通知機能を設定している場合は、このメールアドレスに送信されます。
- $top_url =
'http://www.cgi-down.com/';
ホームページのURLを入力します。[HOME]のリンク先になります。
●ファイル関連設定
- $jcode =
'./jcode.pl';
jcode.plのパスを相対パスまたは絶対パスで入力します。http://〜ではありません。
- $forumsfile =
'./forums.cgi';
フォーラム追加用CGI(管理者用)のパスを相対パスまたは絶対パスで入力します。http://〜ではありません。
- $forumviewfile =
'./forumview.cgi';
フォーラム表示用CGIのパスを相対パスまたは絶対パスで入力します。http://〜ではありません。
- $searchfile =
'./search.cgi';
検索用CGIのパスを相対パスまたは絶対パスで入力します。http://〜ではありません。
- $sheet =
'1';
スタイルシートを使用する場合は「1」、使用しない場合は「0」
- $stylesheetfile =
'./style.css';
スタイルシートを使用する場合は、スタイルシートまでのパスを入力します。
- $supporttop_url =
'./';
トップページの戻り先を入力します。基本的に変更必要ありませんが、相対パスを使用できない場合は絶対パスで指定します。
- $sendmail =
'/usr/lib/sendmail';
メール送信用のsendmailのパスを指定します。プロバイダーやサーバー管理者に問い合わせて下さい。
●その他の設定
一部省略して説明しています。
- $method =
'POST';
POSTまたはGETを指定します。
- $mail_flag =
'1';
書き込み時にメール通知機能を使用する場合は「1」、使用しない場合は「2」
- $master_name =
'管理者';
メール通知機能を設定している場合に、この名前で書き込みされてもメール通知を行わない名前を入力します。 管理者が書き込みしてもメールを送信しない機能です。
- $subject =
'フォーラム書き込み';
このサブジェクトは、書き込みされた場合のメールタイトルになります。各々入力して下さい。
- $TOP_COMMENT =
" ";
トップページ(index.cgi)のトップに数行コメントを表示したい場合は入力します。 2行目以降を入力する場合は以下のようにします。
$TOP_COMMENT .= " 2行目 "; $TOP_COMMENT .=
" 3行目 "; $TOP_COMMENT .=
" 4行目 "; |
$TOP_COMMENTの次の = の前にピリオドを入力します。
また、" から "の間で、ダブルクォーテーション「"」を使用する場合は、「\」でエスケープします。 以下のようにエスケープします。
| $TOP_COMMENT = "<img src=\"$point_img1\"
width=\"$point_img1_w\" ・・・省略・・・ "; |
●MySQLデータベースの設定
この設定をきちんと設定しないと、データベースにアクセス出来ないエラーが発生します。 基本的に、この部分はサポート致しません。詳しくはサーバー管理者にお問い合わせ下さい。
- 解凍されたファイル内に「sqldata」フォルダがあります。その中の「forum.txt」をメモ帳などのエディタで開きます。
create table ******.forums ( Num int NOT NULL primary key
auto_increment, 省略 Countb varchar(64) NOT NULL );
create table
******.logs ( Num int NOT NULL primary key auto_increment, Num2 int(11)
NOT NULL, 省略 Host varchar(64) NOT NULL, Os varchar(64) NOT NULL, IP
varchar(64) NOT
NULL ); |
この中の「******」を今から作成するデータベース名、またはサーバーで用意されているデータベース名に書き換えて上書き保存します。(使用するデータベース名に変更します)
- FTPで「forum.txt」をサーバーにアップします。各CGIを設置する場所で結構です。
以下の設定が終了したら(テーブルを作成後)、forum.txtはサーバーから削除して下さい。
- SSH/TELNETでサーバーへアクセスします。(基本ですのでサポート致しません)
- MySQLデータベースにアクセスします。
shell> mysql -u username -p Enter
password: Password |
username と Password は 決められたものを入力します。
- データベースを作成します。サーバーによっては、決められたデータベース名がある場合がありますので、予め用意されていれば作る必要はありません。
mysql> CREATE DATABASE *****; query OK, 1 row affected (0.05 sec) mysql> |
***** は作成したいデータベース名を入力します。(例:db111) データベース名の後にはセミコロン(;)を入力するのを忘れないで下さい。
- データベースが作成されたか確認します。(今後、セミコロンをを忘れないで下さい)
db111 を作ったとします
mysql> SHOW DATABASES; +---------+ | Database | +---------+ | db111 | | mysql | | test | +---------+
mysql> |
db111がありましたか?無ければデータベースが作成されていません。もう一度作成して下さい。
- MySQLを終了します。
- 次に「forum.txt」をアップした場所に移動します。
- forum.txtがあるか確認します。
shell> ls -al ここにforum.txtがあればOKです |
無ければ、FTPでアップされていないか、アップされている場所に移動されていません。
- forum.txtを使って、データベースにテーブルを作成します。
shell> mysql -u username -p db111 < forum.txt Enter
password: Password |
MySQLのユーザー名が username データベース名が db111 だったとします。 エラーがでた場合は、テーブルの作成に失敗しました。
- テーブルが作成されたか確認する。
shell> mysql -u username -p Enter
password: Password
mysql> USE db111 mysql> SHOW TABLES; +--------------+ | Tables_in_db111 | +--------------+ | forums | | logs | +--------------+ |
forumsとlogsがあればOKです。
- MySQLとshellアクセス(SSH/TELNET)を終了します。
これでデータベースとテーブルの作成が終了しました。
●フォーラムの作成
- forums.cgi にアクセスします。
http://[設置場所]/forums.cgi
http://cgidown.sannetwork.com/sample/forum/forums.cgi
↑こんな画面がでます。
- パスワードを入力して、新設するフォーラム名を入力します。
例)
表示順位=1 ←半角数字
追加フォーラム名=CGIについて ←フォーラム名になります
フォーラム英字=cgi ←必ず英数字にして下さい
追加を押してフォーラムを追加します。
- フォーラム名を編集や削除する場合は、下に表示されている画面で、編集する部分のみ変更し、変更をおします。削除する場合は、削除を押します。
|
| ■ アップロード |
アップロードの前に準備するもの
- FTPソフト。(ホームページビルダーのファイル転送でも結構です)
FTPソフトの使用方法については、サポートできませんので、ご使用のソフトのヘルプ等をご覧下さい。
アップロード
- FTPソフトでサーバーに接続する。
- サーバーに「forum」とforumの中に「image」ディレクトリを作成します。
- ファイルを転送します。ファイルの転送場所は、以下の構成を推奨します。CGIの設置に詳しい方は、ご自分の好きなディレクトリに設置して下さい。
- ファイルのパーミッション(アクセス権や属性とも言う)を変更します。
●設置例
public_html/ (homeやhtmlの場合もあります) │ ├ forum/ (作成する) | ├ image/ (作成する) | | ├ 画像ファイルをアップします。 | | | ├ forums.cgi | ├ forumview.dat | ├ index.cgi | ├ search.cgi | ├ setfile.cgi | ├ style.css | ├ common.pl | ├ jcode.pl |
| ファイル名 |
パーミッション |
転送モード |
| forums.cgi |
755 |
アスキー |
| forumview.cgi |
755 |
アスキー |
| index.cgi |
755 |
アスキー |
| search.cgi |
755 |
アスキー |
| setfile.cgi |
644 |
アスキー |
| jcode.pl |
755 |
アスキー |
| common.pl |
644 |
アスキー |
| style.css |
644 |
アスキー |
|
| ■ 更新履歴 |
- V1.00 (2003-04-30) 正式リリース。
- V1.01(2007-11-17)スパム投稿対策
|
|