igowf_v2
碁盤掲示板の紹介と設置方法
棋譜を並べながら、質問・解説・検討を交わせる囲碁用の掲示板です。記事と碁盤を結び付け、文章だけでは伝えにくい局面や変化を共有できます。
igowf_v2は、KENT-WEBの「Web Forum 8.01」を基に囲碁用の機能を加えた改変版です。掲示板と碁盤の融合に関わったJuno氏・Qitailang氏に続いて、Ebaが生成AIを利用して改造しました。
1.機能的特徴
- 碁盤と掲示板を一緒に表示。パソコンでは左に碁盤、右に掲示板を表示します。画面幅が799px以下になると「碁盤」「掲示板」ボタンで切り替える表示になります。
- ツリー形式で話題を整理。新規記事に返信を付けて会話を続けられます。個別記事・関連記事の表示、キーワード検索、新着表示、過去ログに対応します。
- 記事に棋譜と表示手数を添付。投稿フォームから碁盤やテキストのSGFを取り込み、見せたい手数または最終手を指定できます。記事から碁盤表示や棋譜保存ができ、初期情報だけの空の棋譜は投稿用SGFとして保存しません。
- 4~19路の碁盤で閲覧・編集。着手、パス、手番切り替え、手順移動、自動再生、石・記号・文字などの配置ができます。閲覧モードでは誤って着手することを防ぎます。
- 変化図を作成・管理。途中から別の手を打って変化を作り、変化を本譜へ変更したり、削除したりできます。途中への着手挿入にも対応します。
- 複数形式の棋譜を読込み。SGF・NGF・UGF・UGI・GIB・MGT(SGF形式)に対応。保存形式はUTF-8のSGFで、全棋譜、本譜のみ、コメントと局面名を除いた本譜を選べます。形式による非対応記録などは同梱のgo/README.htmlを参照してください。
- 盤面画像・印刷・動く手順図。盤面をPNG/JPG画像として保存し、印刷できます。選択中の手順はGIFアニメーションとして保存できます。
- 勝敗計算を補助。死に石・セキを指定すれば結果を計算します。日本ルール・中国ルールに対応しています。囲碁AIによる死活の自動判定機能ではありません。
- 編集中の盤面を一時保存。同じブラウザー内に棋譜や編集中の情報を保存・復元できます。端末間の同期ではないため、大切な棋譜はSGFファイルでも保存してください。
- 画像を最大3枚添付。JPEG・PNG・GIFに対応し、1枚300KB(307,200バイト)まで。投稿全体の初期上限は1MB(1,048,576バイト)です。
- 管理・投稿制限を設定。管理者による記事管理、投稿者の暗証キーによる修正・削除、入室パスワード、投稿間隔、禁止語、画像認証、メール通知などを設定できます。
- テンプレートとCSSで外観を調整。掲示板はtmplとcmn、碁盤は主にgoのファイルで構成しています。
2.ダウンロードと収録ファイル
利用前にKENT-WEBの利用規定と同梱の権利表示をご確認ください。このプログラムは改変版であり、碁盤のMITライセンスが掲示板全体に適用されるものではありません。
本体フォルダ内のファイル一覧
以下は igowf_v2/ からの相対パスです。ファイル名と役割を、添付の配布用ZIPに合わせて列挙しています。
| ファイル名 | 説明 |
|---|---|
index.html | 入口ページ。パソコンでは左に碁盤、右に掲示板を表示し、狭い画面では切り替えます。 |
licenses.html | 掲示板全体の権利表示とソースの案内。 |
init.cgi | 掲示板名、管理パスワード、投稿制限、各種パスなどの設定ファイル。 |
admin.cgi | 管理パスワードで利用する管理画面。記事を管理・削除します。 |
captcha.cgi | 投稿キーの認証用画像を生成します。 |
post.cgi | 新規投稿・返信・記事の修正と削除、画像添付、棋譜保存を処理します。 |
wforum.cgi | 記事一覧・個別記事・検索・過去ログ・碁盤表示・SGF取得を処理する掲示板本体。 |
counter.cgi | アクセスカウンターを画像として表示します。再表示も加算します。 |
check.cgi | 設置環境・設定・ファイルの状態を確認します。確認後は公開場所から削除します。 |
19.sgf | 新規表示用の19路の初期棋譜。投稿データではありません。 |
cmn/style.css | 掲示板のレイアウト・色・文字・フォームなどの共通スタイル。 |
cmn/igo-form.js | 投稿フォームへ碁盤や棋譜欄のSGFを取り込むための連携処理。 |
cmn/new.png | 新着記事用アイコン。 |
cmn/home.png | ホーム用アイコン。 |
cmn/search.png | 検索用アイコン。 |
data/log.cgi | 現在の記事と記事番号を保存するログ。 |
data/access-counter.dat | アクセスカウンターの数値。配布時は0。 |
data/pastno.dat | 過去ログのファイル番号を管理します。 |
data/ses.cgi | 入室パスワード制限用のセッション記録。 |
data/.htaccess | 外部からの直接アクセスを制限するApache用設定。 |
data/index.html | ディレクトリの内容一覧が表示されるのを防ぐ空の入口ファイル。 |
data/past/0001.cgi | 過去ログの初期ファイル。配布時は空です。 |
data/past/index.html | ディレクトリの内容一覧が表示されるのを防ぐ空の入口ファイル。 |
go/style.css | 碁盤編集画面のスタイル。 |
go/app.js | 碁盤の表示、操作、編集、変化管理、自動再生、一時保存などの中心処理。 |
go/engine.js | 局面の管理、着手、石の取り上げ、自殺手・単純コウなどの検査。 |
go/export.js | 本譜の抽出、画像保存、GIFアニメーション生成などの出力処理。 |
go/forum-bridge.js | 碁盤と掲示板の投稿フォームを結ぶ連携処理。 |
go/import.js | SGF・NGF・UGF・UGI・GIB・MGTなどの棋譜読込み。 |
go/sgf.js | SGFの解析と書き出しに使う基本処理。 |
go/score.js | 地・石・コミなどに基づく勝敗計算。 |
go/index.html | 掲示板から独立して使う碁盤編集画面。 |
go/LICENSE.txt | 碁盤実装のMITライセンス。 |
go/README.html | 碁盤の使い方・対応形式・制限の説明。 |
go/SOURCE.txt | ソースコードと実装に関する説明。 |
go/licenses.html | 碁盤関連の著作権・ライセンス説明。 |
go/licenses/Sabaki-MIT.txt | Sabakiに関するMITライセンス表記。 |
go/sample.sgf | 碁盤の動作確認用の棋譜。 |
go/tests/core.test.cjs | 碁盤・SGFなどの基本処理の確認用テスト。 |
go/tests/import.test.cjs | 棋譜読込みの確認用テスト。 |
go/tests/score.test.cjs | 勝敗計算の確認用テスト。 |
go/最初にお読みください.txt | 碁盤の説明ページへの案内。 |
img/goban.gif | 碁盤関連の表示用画像。 |
img/title.gif | タイトル関連の表示用画像。 |
lib/index.html | ディレクトリの内容一覧が表示されるのを防ぐ空の入口ファイル。 |
lib/jacode.pl | 文字コード変換用ライブラリ。 |
lib/pngren.pl | ライブラリ版の画像認証で使うPNG処理。 |
lib/thumb.pl | サムネイル作成の補助処理。 |
lib/igo-runtime.pl | 実行時のエラー表示・投稿キー設定・投稿容量表示を補助します。 |
lib/igo-ui-config.pl | 投稿キーを使用するかどうかの補助設定。 |
lib/igo.pl | 棋譜の正規化・保存・読出し、画像添付、碁盤連携などの囲碁拡張処理。 |
lib/.htaccess | 外部からの直接アクセスを制限するApache用設定。 |
lib/CGI/Minimal.pm | フォームとアップロードデータを受け取るCGIライブラリ。 |
lib/CGI/Minimal.pod | CGI::Minimalの説明文書。 |
lib/CGI/Minimal/Misc.pm | CGI::Minimalの補助処理。 |
lib/CGI/Minimal/Multipart.pm | multipart形式のフォーム・添付データ処理。 |
lib/Crypt/RC4.pm | 画像認証などで使う暗号処理ライブラリ。 |
lib/GD/SecurityImage.pm | モジュール版の認証画像生成ライブラリ。 |
lib/GD/SecurityImage/GD.pm | GDを利用する画像生成処理。 |
lib/GD/SecurityImage/Magick.pm | Image::Magickを利用する画像生成処理。 |
lib/GD/SecurityImage/Styles.pm | 認証画像の描画スタイル。 |
lib/bin/bq.png | 画像認証用の文字画像データ。 |
lib/bin/br2.png | 画像認証用の文字画像データ。 |
lib/bin/br3.png | 画像認証用の文字画像データ。 |
lib/bin/casual.png | 画像認証用の文字画像データ。 |
lib/bin/cut.png | 画像認証用の文字画像データ。 |
lib/bin/japan.png | 画像認証用の文字画像データ。 |
lib/bin/jump.png | 画像認証用の文字画像データ。 |
lib/bin/kt012.png | 画像認証用の文字画像データ。 |
lib/bin/lynz.png | 画像認証用の文字画像データ。 |
lib/bin/small.png | 画像認証用の文字画像データ。 |
lib/bin/stamp.png | 画像認証用の文字画像データ。 |
lib/bin/tempest.ttf | 画像認証用のフォントデータ。 |
lib/captcha.pl | ライブラリ版の画像認証処理。 |
lib/captsec.pl | モジュール版の画像認証処理。 |
licenses/COMPONENTS.txt | 同梱部品と適用ライセンスの一覧。 |
licenses/Sabaki-MIT.txt | Sabakiに関するライセンス表記。 |
sgf/index.html | ディレクトリの内容一覧が表示されるのを防ぐ空の入口ファイル。 |
tmpl/.htaccess | 外部からの直接アクセスを制限するApache用設定。 |
tmpl/bbs.html | ツリー形式の記事一覧のテンプレート。 |
tmpl/board.html | 掲示板内の碁盤編集画面のテンプレート。 |
tmpl/dele.html | 記事の修正・削除へ進む認証画面のテンプレート。 |
tmpl/edit.html | 記事修正フォームのテンプレート。 |
tmpl/enter.html | 入室パスワード入力画面のテンプレート。 |
tmpl/error.html | エラー表示のテンプレート。 |
tmpl/find.html | 記事検索画面のテンプレート。 |
tmpl/list.html | 記事一覧・スレッド表示のテンプレート。 |
tmpl/mesg.html | 処理結果メッセージのテンプレート。 |
tmpl/newpost.html | 新規投稿フォームのテンプレート。 |
tmpl/note.html | 留意事項のテンプレート。 |
tmpl/past.html | 過去ログ画面のテンプレート。 |
tmpl/read.html | 個別記事と返信フォームのテンプレート。 |
upl/index.html | ディレクトリの内容一覧が表示されるのを防ぐ空の入口ファイル。 |
3.ディレクトリ構成とパーミッション
次は public_html の下へ設置する例です。各項目の角括弧は [一般的な共有権限方式 | CGIを所有者権限で実行する方式(suEXEC等)] の設定例です。「/」は選択肢を表します。サーバー会社の指定を優先してください。
public_html/サーバー指定index.htmlサイトのトップページ[644 | 644]igowf_v2/[705 / 755 | 705 / 755]cmn/[705 / 755 | 705 / 755]home.png[644 | 644]igo-form.js[644 | 644]new.png[644 | 644]search.png[644 | 644]style.css[644 | 644]
data/[705 / 755 | 700]past/[707 / 777 | 700]0001.cgi[606 / 666 | 600]index.html[644 | 600]
.htaccess[644 | 600]access-counter.dat[606 / 666 | 600]index.html[644 | 600]log.cgi[606 / 666 | 600]pastno.dat[606 / 666 | 600]ses.cgi[606 / 666 | 600]
go/[705 / 755 | 705 / 755]licenses/[705 / 755 | 705 / 755]Sabaki-MIT.txt[644 | 644]
tests/[705 / 755 | 705 / 755]core.test.cjs[644 | 644]import.test.cjs[644 | 644]score.test.cjs[644 | 644]
app.js[644 | 644]engine.js[644 | 644]export.js[644 | 644]forum-bridge.js[644 | 644]import.js[644 | 644]index.html[644 | 644]LICENSE.txt[644 | 644]licenses.html[644 | 644]README.html[644 | 644]sample.sgf[644 | 644]score.js[644 | 644]sgf.js[644 | 644]SOURCE.txt[644 | 644]style.css[644 | 644]動作確認.txt[644 | 644]最初にお読みください.txt[644 | 644]
img/[705 / 755 | 705 / 755]goban.gif[644 | 644]title.gif[644 | 644]
lib/[705 / 755 | 700]bin/[705 / 755 | 700]bq.png[644 | 600]br2.png[644 | 600]br3.png[644 | 600]casual.png[644 | 600]cut.png[644 | 600]japan.png[644 | 600]jump.png[644 | 600]kt012.png[644 | 600]lynz.png[644 | 600]small.png[644 | 600]stamp.png[644 | 600]tempest.ttf[644 | 600]
CGI/[705 / 755 | 700]Minimal/[705 / 755 | 700]Misc.pm[644 | 600]Multipart.pm[644 | 600]
Minimal.pm[644 | 600]Minimal.pod[644 | 600]
Crypt/[705 / 755 | 700]RC4.pm[644 | 600]
GD/[705 / 755 | 700]SecurityImage/[705 / 755 | 700]GD.pm[644 | 600]Magick.pm[644 | 600]Styles.pm[644 | 600]
SecurityImage.pm[644 | 600]
.htaccess[644 | 600]captcha.pl[644 | 600]captsec.pl[644 | 600]igo-runtime.pl[644 | 600]igo-ui-config.pl[644 | 600]igo.pl[644 | 600]index.html[644 | 600]jacode.pl[644 | 600]pngren.pl[644 | 600]thumb.pl[644 | 600]
licenses/[705 / 755 | 705 / 755]COMPONENTS.txt[644 | 644]Sabaki-MIT.txt[644 | 644]
sgf/[707 / 777 | 705 / 755]index.html[644 | 644]
tmpl/[705 / 755 | 700].htaccess[644 | 600]bbs.html[644 | 600]board.html[644 | 600]dele.html[644 | 600]edit.html[644 | 600]enter.html[644 | 600]error.html[644 | 600]find.html[644 | 600]list.html[644 | 600]mesg.html[644 | 600]newpost.html[644 | 600]note.html[644 | 600]past.html[644 | 600]read.html[644 | 600]
upl/[707 / 777 | 705 / 755]index.html[644 | 644]
19.sgf[644 | 644]admin.cgi[705 / 755 | 700 / 701]captcha.cgi[705 / 755 | 700 / 701]check.cgi[705 / 755 | 700 / 701]counter.cgi[705 / 755 | 700 / 701]index.html[644 | 644]init.cgi[604 / 644 | 600]licenses.html[644 | 644]post.cgi[705 / 755 | 700 / 701]wforum.cgi[705 / 755 | 700 / 701]
権限設定の要点
- 実行するCGIは
wforum.cgi、post.cgi、admin.cgi、captcha.cgi、check.cgi、counter.cgiです。init.cgiは読込み用の設定ファイルなので、同じ実行権限を付ける必要はありません。 data/log.cgi、ses.cgi、pastno.dat、access-counter.dat、data/past/0001.cgiはCGIから書き込める権限にします。data/past、upl、sgfはファイルを新規作成できる権限が必要です。所有者権限方式では、公開画像やSGFへのHTTPアクセスも考慮してupl・sgfを705または755としています。700で公開ファイルが読めなくなる構成があります。- 投稿後、
upl/に画像、sgf/にsgf記事番号.sgfが生成されます(通常644)。過去ログも増えます。図は配布時の構成です。 - カウンター用ファイルは同梱済みです。これを削除して自動生成させる場合は、data自体にも作成権限が必要です。通常は削除せずに使用します。
cmn/style.cssとgo内のHTML・CSS・JavaScriptは静的ファイルなので、書込み権限の追加は不要です。- data・lib・tmplの
.htaccessも転送してください。Apache以外や.htaccessが使えない環境では、同等の直接閲覧制限をサーバー設定で行います。
設置の手順
- ZIPを展開し、次章の説明に従って
init.cgiを編集します。 - 実行CGI6個の先頭行
#!/usr/bin/perlを、サーバー指定のPerlパスに合わせます。init.cgiの設定とは別の作業です。 - 本体の
igowf_v2フォルダを階層ごと転送します。テキストはUTF-8を維持し、CGIはLF改行で保存します。PNG・GIF・TTFはバイナリ転送します。 - 上記を参考にパーミッションを設定し、
設置先/igowf_v2/check.cgiを開いて確認します。 設置先/igowf_v2/index.htmlを開き、新規投稿・返信・画像添付・棋譜・修正・削除を確認します。管理画面はadmin.cgiです。- 確認を終えたら、
check.cgiを公開場所から削除します。
新規設置用の空ログを含みます。運用中の掲示板へ一式を上書きしないでください。更新前にはinit.cgi、data、upl、sgfと、独自に変更したテンプレート・CSSをバックアップしてください。
4.init.cgiの変更箇所
UTF-8対応のテキストエディターで開き、該当する設定値だけを変更します。$cf{…}、引用符、行末のセミコロンを消さないでください。後半の関数や著作権表示は通常変更しません。
まず変更する項目
# 管理パスワード:12文字以上の自分専用の値へ変更
$cf{password} = 'YourOwnPassword123';
# 掲示板名
$cf{bbs_title} = '碁盤掲示板 igowf_v2';
# 「ホーム」の戻り先(例:サイトのトップ)
$cf{homepage} = 'https://www.h-eba.jp/Lizzie/';
上のパスワードは説明用です。そのまま使わず、独自の値に置き換えてください。未設定または12文字未満では Set an administrator password in init.cgi before installation. と表示されます。
homepage の初期値は ./index.html なので、そのままでは「ホーム」からもigowf_v2の入口へ戻ります。サイト全体のホームへ戻したい場合は、そのURLを指定してください。
投稿容量:画像1枚と送信全体を区別する
# 画像・棋譜・本文・フォーム情報を含む、1回の投稿全体の上限
$cf{maxdata} = 1048576; # 1MB
# 例:投稿全体を2MBまでにする場合
# $cf{maxdata} = 2097152;
画像は最大3枚で、1枚307,200バイトまでです。3枚が上限いっぱいの場合は921,600バイトとなり、初期値1,048,576バイトとの差126,976バイトを棋譜・本文・フォーム情報で共有します。
添付版の実装上の注意:init.cgi に $cf{max_image_bytes} = 307200; がありますが、実際の画像検査は lib/igo.pl 内の my $image_limit = 300 * 1024; を使っています。max_image_bytesだけを変えても1枚の上限は変わりません。また、投稿SGF単体にも1MiBの検査があり、maxdataを増やしてもこの上限は別に残ります。碁盤単体の読込み上限2MBとも区別してください。
画像認証(投稿キー)
この配布版は $cf{use_captcha} = 1;、lib/igo-ui-config.pl の post_key => 1 となっており、ライブラリ版の画像認証を使用します。無効にする場合はinit.cgiのuse_captchaを0にします。補助設定のpost_keyが無効だと、use_captchaを1にしても実行時に無効化されます。
use_captchaを2にする場合は、必要な画像処理モジュールを利用できる環境か確認してください。通常は同梱のライブラリ版を使えます。
基本設定・任意設定一覧
「初期値」は今回の配布用ZIPの値です。
| 設定名 | 初期値 | 変更の目安 | 内容 |
|---|---|---|---|
$cf{password} | '' | 必須 | 管理パスワード。半角英数字で12文字以上の固有の値を設定します。空欄・12文字未満では起動しません。 |
$cf{bbs_title} | '碁盤掲示板 igowf_v2' | 推奨 | 掲示板の名称。入口ページのブラウザータイトルを変える場合はindex.htmlのtitleも変更します。 |
$cf{homepage} | "./index.html" | 推奨 | メニュー「ホーム」の戻り先。./index.htmlはこの掲示板の入口です。サイトのトップへ戻す場合はそのURLへ変更します。 |
$cf{maxdata} | 1048576 | 用途に応じて | 1回の送信全体の上限(バイト)。画像3枚・SGF・本文・フォーム情報をすべて含みます。フォームと留意事項の容量表示も連動します。 |
$cf{image_upl} | 1 | 任意 | 1で画像添付を許可、0で許可しません。 |
$cf{max_img_w} | 320 | 任意 | 添付画像の最大表示幅(px)。ファイル容量の上限ではありません。 |
$cf{max_img_h} | 240 | 任意 | 添付画像の最大表示高さ(px)。縦横比を保って縮小表示します。 |
$cf{thumbnail} | 0 | 任意 | 1でサムネイル生成を使用。Image::Magickが必要です。 |
$cf{maxlog} | 300 | 任意 | 現行ログに保持する最大記事数。過去ログ設定と合わせて調整します。 |
$cf{p_tree} | 10 | 任意 | 一覧1ページ当たりのツリー数。 |
$cf{new_pgbtn} | 10 | 任意 | 新着表示の1ページ当たりの記事数。 |
$cf{new_time} | 48 | 任意 | NEWマークを表示する時間数。 |
$cf{sub_length} | 36 | 任意 | 記事タイトルの最大文字数。 |
$cf{nam_length} | 15 | 任意 | 投稿者名の最大文字数。 |
$cf{top_sort} | 1 | 任意 | 1で返信の付いたツリーを先頭へ移動します。 |
$cf{bot_res} | 1 | 任意 | 1で返信を下から順に付けます。 |
$cf{autolink} | 1 | 任意 | 1で本文のURLを自動リンクにします。 |
$cf{enter_pwd} | '' | 任意 | 空欄なら入室制限なし。設定すると入室パスワードが必要です。 |
$cf{sestime} | 60 | 任意 | 入室後に利用できる時間(分)。 |
$cf{regCtl} | 1 | 任意 | 0:投稿間隔の制限なし、1:同一IPからの連続投稿を制限、2:すべての投稿間隔を制限。 |
$cf{wait} | 60 | 任意 | regCtlが1または2のときの最低投稿間隔(秒)。 |
$cf{deny_host} | '' | 任意 | 拒否するホスト名。複数は半角空白で区切ります。 |
$cf{deny_addr} | '' | 任意 | 拒否するIPアドレス。複数は半角空白で区切ります。 |
$cf{gethostbyaddr} | 0 | 任意 | 1でホスト名の逆引きを行います。 |
$cf{no_wd} | '' | 任意 | 禁止語をコンマで区切って設定。 |
$cf{jp_wd} | 0 | 任意 | 1で日本語を含まない投稿を拒否。 |
$cf{urlnum} | 2 | 任意 | 本文に含められるURL数の上限。 |
$cf{pastkey} | 1 | 任意 | 1で過去ログ保存を使用。0では古い記事を過去ログへ保存しません。 |
$cf{max_line} | 650 | 任意 | 過去ログ1ファイルの最大行数。 |
$cf{use_captcha} | 1 | 任意 | 0:画像認証なし、1:同梱ライブラリ版、2:モジュール版。補助設定post_keyも確認してください。 |
$cf{captcha_key} | 'captwforum' | 変更推奨 | 画像認証の暗号化キー。配布時の共通値から独自の文字列へ変更します。 |
$cf{cap_time} | 30 | 任意 | 投稿キーの有効時間(分)。 |
$cf{cap_len} | 6 | 任意 | 認証文字数。ライブラリ版4~8、モジュール版6~8。 |
$cf{si_png} | "br3.png" | 任意 | ライブラリ版の文字画像。lib/bin内のファイル名を指定。 |
$cf{font_ttl} | "tempest.ttf" | 任意 | モジュール版のフォント。lib/bin内のファイル名を指定。 |
$cf{mailing} | 0 | 任意 | 0:通知しない、1:投稿を管理者にメール通知。sendmailが必要。 |
$cf{mailto} | 'xxx@xxx.xx' | 通知時 | 通知先メールアドレス。 |
$cf{sendmail} | '/usr/lib/sendmail' | 通知時 | サーバー指定のsendmail実行パス。 |
$cf{sendm_f} | 0 | 通知時 | サーバーが-fオプションを必要とする場合は1。 |
$cf{cookie_id} | "web_forum" | 複数設置時 | 投稿フォーム用Cookie名。別掲示板との混同を避ける場合は変更。 |
$cf{cookie_id3} | "wf_passwd" | 複数設置時 | 入室制限用Cookie名。複数設置時は固有名にします。 |
$cf{conv_code} | 0 | 通常そのまま | フォーム入力の文字コード自動判別。UTF-8運用では初期値の0を基本にします。 |
$cf{treehead} | "▼" | 任意 | ツリーの先頭記号。 |
ファイル・ディレクトリのパス
本体フォルダ名だけを変更し、内部の配置を保つ場合、次の相対パスは通常そのまま使用できます。URLパスはブラウザーからの場所、サーバーパスはCGIがファイルを読む場所です。
| 設定名 | 初期値 |
|---|---|
$cf{bbs_cgi} | './wforum.cgi' |
$cf{admin_cgi} | './admin.cgi' |
$cf{post_cgi} | './post.cgi' |
$cf{logfile} | './data/log.cgi' |
$cf{sesfile} | './data/ses.cgi' |
$cf{cmnurl} | './cmn' |
$cf{upldir} | './upl' |
$cf{uplurl} | './upl' |
$cf{tmpldir} | "./tmpl" |
$cf{nofile} | './data/pastno.dat' |
$cf{pastdir} | './data/past' |
$cf{captcha_cgi} | './captcha.cgi' |
$cf{captcha_pl} | './lib/captcha.pl' |
$cf{captsec_pl} | './lib/captsec.pl' |
$cf{pngren_pl} | './lib/pngren.pl' |
$cf{bin_dir} | './lib/bin' |
$cf{sgfdir} | './sgf' |
$cf{player_url} | './go' |
player_url は旧来の設定名として残っていますが、現在の碁盤は go/ にあります。碁盤テンプレート tmpl/board.html などには ./go/ が直接指定されているため、この値だけでgoフォルダを移動できるわけではありません。初めて設置するときは内部の名前と階層を変更しない方法をおすすめします。
設置時につまずいた場合
- 管理パスワードのエラー:passwordが12文字以上になっているか確認します。
- 500エラー:Perlパス、CGIの改行・文字コード・権限、サーバーのエラーログを確認します。
- 画像・棋譜を保存できない:uplとsgfが存在し、CGIから書き込めるか確認します。
- 碁盤や画面が表示されない:go・tmpl・lib・cmnを含め、フォルダ一式が欠けずに転送されているか確認します。
- sendmailのチェックがNG:メール通知を使わない設定では、その項目だけで通常投稿が不可能になるわけではありません。通知を使う場合はサーバー指定のパスを設定します。