PHPLIBはPHPで記述されたスクリプト群であるため、インストールする再のコンパイルは必要ない。DBとしてPostgreSQLを使用しているので、それを利用するための設定を紹介する。
とりあえずrootになっておこう。
1.ソースファイルの展開
/usr/local/srcにPHPLIBのソース・ファイルをコピーし、展開する。
# cd /usr/local/src
# tar zxvf phplib-7.2b.tar.gz2.展開後の作業
PHPLIBの本体をApacheのServerRootディレクトリに移動させる。
# cd phplib-7.2b
# mv php /usr/local/apache/サンプルのPHPスクリプトをApacheのDocumentRootディレクトリに移動させる。
# mv pages /usr/local/apache/htdocs/
設定ファイルの編集を行う。
# vi /usr/local/apache/php/prepend.php3 19行目を次のように変更し、保存する。
require($_PHPLIB["libdir"]."db_pgsql.inc"); PHPスクリプトを実行する際、prepend.php3ファイルが自動的にスクリプトの先頭に追加されるように設定する。
# vi /usr/local/lib/php3.ini 125行目と132行目をそれぞれ次のように変更し、保存する。
auto_prepend_file = /usr/local/apache/php/prepend.php3 ←125行目include_path = ./:/usr/local/apache/php←132行目
PHPLIBを使うには、対象のデータベース内にPHPLIB用のテーブルを作る必要がある。
以下は、サンプルのPHPスクリプト用のデータベースの作り方を解説する。PHPLIB用のデータベースを作成する
# su - postgres ←postgresユーザになる
$ createdb phplibPostgreSQL用のテーブル作成スクリプトのサンプル「create_database.pgsql」を実行するが、そのまま実行すると文法エラーが発生する。このスクリプトをviで開き、先頭が
//で開始する行を全て削除しておくこと。テーブル作成は次の通り。
$ psql -e phplib < /usr/local/src/phplib-7.2b/stuff/create_database.pgsql PHPLIBが利用する4つのテーブルが作成された。
psqlを開き、各テーブルにApacheの実行ユーザが読み書きできるように権限を設定する。
$ psql phplib
phplib=> grant all on active_sessions to nobody;
phplib=> grant all on active_sessions_split to nobody;
phplib=> grant all on auth_user to nobody;
phplib=> grant all on auth_user_md5 to nobody;
phplib=> \q
$php3.iniの設定を反映させるために、Apacheを再起動する。
$ exit ←postgresユーザを抜け、rootに戻る
# /etc/rc.d/init.d/httpdrestart