La!cooda WIZ のインストール

オープンのグループウェアのLa!cooda WIZを、お客様に頼まれましてインストールしました。今回は、Joe’sウェブホスティングのレンタルサーバーにインストールします。

La!cooda WIZをダウンロードしてインストールページを読んでみましたら、インストールスクリプトでPostgreSQLの管理者権限が必要であることが書いてありました。しかし、今回のインストール先はレンタルサーバーですので、スクリプト(postgres.sh)を解析して、手作業でインストールしました。これが苦難のはじまりです。DBの dropを5回以上繰り返して、ようやくインストールできました。ここにその記録を参考までに載せておきます。

まずは、La!cooda WIZ用のデータベースを作成しておきます。これは、レンタルサーバーのコントロールパネルから行いました。そして、アクセス用のPostgreSQLのIDを作って、データベースにアサインしておきます。ここまでは、コントロールパネルで簡単です。

次に、La!cooda WIZのインストールファイルから、wiz.tar.gzを取り出して、Webで公開されているディレクトリに展開します。そのままDocumentRootに/wizで展開します。そのとき、/wiz/filesは書き込み権限が必要です。

Joe’sウェブホスティングのサーバーは、WebサーバーからはPostgreSQLサーバーにTCP/IP経由では接続できないので、UNIXドメインソケット経由で接続するように、La!cooda WIZのデータベース接続処理を変更します。

/wiz/class/DBConnectPgsql.phpを

$connectionString = “host=$this->hostName port=$this->portNo dbname=$this->dbName user=$this->userName password=$this->password”;

となっているところ(実際は1行)を、

$connectionString = “dbname=$this->dbName user=$this->userName password=$this->password”;

のように修正します。

DBのアクセスするための定義ファイルを設定します。/wiz/gw.phpを次の通りに修正します。

$masterdb = “DB名”;
$db_user = “DBユーザーID”;
$db_password = “DBパスワード”;
$_ROOT_DIR_ = “インストールしたディレクトリ”;
$_ROOT_URL_ = “アクセスするURL”;

最後にテーブルの生成と初期データの投入です。テーブル生成スクリプトcreateDbForPgSQL.sqlの1行目の

connect – postgres

– connect – postgres

にしてコメントにします。それから、次のようにスクリプトを動かします。

sed “s/nobody/<DBユーザーID>/g” <ルートからのディレクトリ>/createDbForPgSQL.sql | psql -U <DBユーザーID> -e <DB名>

ここで、DBユーザーに対するパスワードを聞いてきます。

以上のコマンドは、createDbForPgSQL.sql内のnobodyと定義している部分を、DBにアクセスするユーザーIDに置換して、そのスクリプトをDBユーザーでアクセスしたDBにテーブルを生成して、初期データを作成しています。これはインストールスクリプトを抜粋して修正したものです。

以上で、La!cooda WIZにアクセスできます。