ZeroCH::Document::Setup - img0ch(4.x)の設置方法
ここではimg0ch(4.x)の設置方法を解説していますが、かなり省略されています。
img0ch(4.x)を設置するには以下の条件を満たす必要があります。
容量は小さな掲示板であれば運営できる目安ですが、画像をアップロードできるようにする場合 数十MB以上の空き容量は必要です。
/img0ch
+-- / _system
+-- / _template
+-- / static
+-- / test
+-- /img0ch
+-- /bbs.cgi
+-- /r.cgi
+-- /read.cgi
+-- /zeromin-config.cgi.default
+-- /zeromin.cgi
配布物に含まれているファイルの一覧を知りたいときは/_system/MANIFESTを参照してください。
利用可能なデータベースは以下の通りです。
人気の高いオープンソースなSQL準拠のRDBMSです。WebからMySQLを管理出来る phpMyAdmin等の強力な外部の管理ツールが利用可能です。 データベースの選択に迷うのであればMySQLを利用することをお薦めします。
ストレージエンジンはデフォルトであるMyISAMを前提にしているため、InnoDBを使っても トランザクション機能を利用しません。そのため、データの一貫性は完全に保証されません。
MySQLと同様オープンソースなSQL準拠のRDBMSです。トランザクション機能を利用して データの一貫性を保つことが出来ます。MySQLと同様phpPgAdmin等の外部の管理ツールが 利用可能です。
テストが十分になされていないため、バグ等が発生するかもしれません (特に最初のテーブル作成)。
データベースをファイル単位で扱うオープンソースなSQL準拠のRDBMSです。 トランザクション機能を利用してデータの一貫性を保つことが出来ます。 バックアップがとても容易です。
ただし外部の管理ツールがとても少ないので若干扱いづらいかもしれません。
最初の設置のみ行う作業です。
二回目のアップグレード時にzeroch-config.cgiの重複を防ぐためにファイル名は zeroch-config.cgi.defaultとなっています。
変更が必要な値は
Server DBDriver DataBase
です。SQLiteを使用する場合はDataBaseにファイルパスを指定してください。 その際パスはサイトの閲覧者が見えない位置におく必要があります。 SQLiteではDBUser、DBPassその他のDBIのオプションは無視されます。
MySQLやPostgreSQLを使用する場合は
DBUser DBPass DBHost DBPort
も変更する必要があります。
ファイル数がとても多いため、かなり時間がかかります。
cacheディレクトリは必ず書き込めるようにしてください。 パーミッションは0707または0777にする必要があります。
*.cgiはbbs.cgi、r.cgi、read.cgi、zeromin.cgiが該当します。 設定ファイルであるzeroch-config.cgiはパーミッションを0644(出来れば0600にするのが望ましい) にしておく必要があります。
管理が面のデザインが崩れている(CSSや画像ファイルが404で表示出来ない等)場合、 それはzeroch-config.cgiのStaticURIの設定が間違っていることを意味します。
以下の三項目をzeroch-config.cgiに記述する必要があります。
POP3Server POP3User POP3Pass
初期設定では無効になっていますので、これを有効にします(チェックにする)。
数字のみのディレクトリは作成出来ません。
これは内部でディレクトリ名と数字のIDをマッピングするようになっているため、誤動作を起こす恐れがあります。 BBSリスト更新時に数字のディレクトリのみの掲示板が存在した場合、その掲示板は無視されます。 この問題が発生した場合、掲示板のディレクトリ名を変更する必要があります。
まだ開発版のため、移行に関してはバックアップをとっておくことを推奨します。 掲示板に存在するDATや設定ファイルが削除されることはありませんが、 不安がある場合はZeromin(ぜろみん)だけを設置して様子を見るのも手です。
1.x関連のバージョンを使用している人は初回のアップデートがかなり難しいものになります。 ただし、前バージョンで衝突するファイルはbbs.cgiとr.cgiとread.cgiのみです。 これは必ず先にバックアップをとっておき、上書きしないようにする必要があります。
数が少ない、または書き込み頻度が低い場合はBBS_READONLYをしなくても可能かもしれませんが (少なくとも自分の掲示板ではBBS_READONLYをonにせずにアップデート作業を行ったものの)、 念のためBBS_READONLYをonにしておきます。掲示板数が多い場合は.htaccessを利用して (/testディレクトリに.htaccessを作成し、以下の行を追加する)
<Files bbs.cgi>
order deny,allow
deny from all
</Files>
としてbbs.cgiにアクセス制限をかけるのも手かもしれません。
事前にアップデート作業を行うことを掲示板にて告知をしておきましょう。
移行作業はかなり時間がかかります。多い場合は移行する項目をわけて実行するべきでしょう。 「ユーザーデータ」、「キャップデータ」、「告知欄(広告)」、「(掲示板全体の)NGワード」、 「掲示板リスト」を最初に項目を選択して実行し、それから「subject.txt」、 「アップロードファイルインデックス」、「ホストログ」、「スレッドログ」を選択して 移行作業を行ってください。
少なくとも「ユーザーデータ」、「キャップデータ」、「告知欄(広告)」、「(掲示板全体の)NGワード」、 「掲示板リスト」、「アップロードファイルインデックス」は移行しておくべきでしょう。
.htaccessで設定を行った場合は.htaccessの該当行を削除してください。
hkrn <hikarincl2@yahoo.co.jp>
Copyright(C) 2001-2006 0ch http://0ch.mine.nu
Copyright(C) 2004-2006 img0ch by hkrn http://hikarin.jp