Geeklogサイトのコピーを作ってみた
- 2007年3月 3日(土) 21:15 JST
- 投稿者: dengen
Geeklog Japanese でGeeklog 1.4.1の日本語版が一般公開されたので、当サイトもそろそろアップグレードをしようかと考えている。しかし、これまで1度もアップグレードの経験がなく、いきなり本番のアップグレードはやはりトラブル発生時のリスクが大きいので、事前に安心していろいろ試せるようにするために、まず当サイトのコピーを作ってみることにした。
当サイトは Debian GNU/Linux を使って立ち上げた自宅サーバー内に設置されているので、このサーバー内に比較的簡単にいくらでもコピーを作ることが可能だ。
とりあえずadduserで適当な名前のユーザーを作成すれば、ユーザー用のホームディレクトリ( /home/(ユーザー名) )が作成されるので、そこに当サイトのファイルを丸ごとコピーし、さらにデータベースもコピーする方針でやってみたところ、あっさりうまくいった。ちなみに、私は普段からWindows上からサーバーPCにリモートアクセスしてメンテナンスを行っている。今回も同じで、その作業の詳細は次のとおりだ。
- ユーザーの追加
puttyでログインしsuコマンドでrootになってから、'adduser newuser'を実行した。新しいユーザー newuser が登録され、newuserのホームディレクトリ /home/newuser が作成された。 - Geeklogの構成ファイルのコピー
(私はunixコマンドに慣れていないので、)ここではWinSCPとFFFTPを使って公開領域と非公開領域のすべてのファイルをnewuserのホームディレクトリ下に同じ位置関係になるようにコピーした。 - MySQLのデータベースのコピー
phpMyAdminを使って、Geeklogのデータベースを別名のデータベース(ここでは newuser_geeklog )へコピーした。 - 設定ファイルの修正
/home/newuser下の非公開領域の直下にある Config.php と公開領域の直下にある lib-common.php を新しいホームディレクトリと新しいデータベース(newuser_geeklog)にあわせて書き換えてやった。
Config.phpのうち、
$_DB_name、$_DB_user、$_DB_pass、$_CONF['path']、$_CONF['path_html']、$_CONF['site_url']の値を修正し、
lib-common.phpのうち
require_once('/***/private/geeklog/config.php');を修正した。
とりあえずこれだけの操作でGeeklogサイトのコピーに成功し、うまく動いているようだ。
つぎはこのコピーサイトを実験台にしてバージョンアップに挑戦してみようと思っている。