カテゴリー
システム関連

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を

<div style="margin-left: 40px;">
<p>$connectionString = “host=$this-&gt;hostName port=$this-&gt;portNo dbname=$this-&gt;dbName user=$this-&gt;userName password=$this-&gt;password”;</p>
</div>

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

<div style="margin-left: 40px;">
<p>$connectionString = “dbname=$this-&gt;dbName user=$this-&gt;userName password=$this-&gt;password”;</p>
</div>

のように修正します。

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

<div style="margin-left: 40px;">
<p>$masterdb = “DB名”;<br>$db_user = “DBユーザーID”;<br>$db_password = “DBパスワード”;<br>$_ROOT_DIR_ = “インストールしたディレクトリ”;<br>$_ROOT_URL_ = “アクセスするURL”;</p>
</div>

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

<div style="margin-left: 40px;">
<p>connect - postgres</p>
</div>

<div style="margin-left: 40px;">
<p>– connect - postgres</p>
</div>

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

<div style="margin-left: 40px;">
<p>sed “s/nobody/&lt;DBユーザーID>/g” &lt;ルートからのディレクトリ&gt;/createDbForPgSQL.sql | psql -U &lt;DBユーザーID> -e &lt;DB名></p>
</div>

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

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

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

広告