- InterBase6を導入
これについては、InterBaseメモを参照のこと。
- PHP/Apacheのソースを持ってくる
適当な場所に置く。ここではとりあえず自分のホームディレクトリにおくことにする。
- まずApacheを展開する
$ tar xvfz apache_1.3.xx.tar.gz
※xxはバージョンにより適宜埋める
- Apacheをインストールする
Plamo2.x + Apache 1.3.xx DSO の組み合わせですと、httpd.conf 内の Group nogroup
が嫌らしく、起動してくれませんでしたので、僕は apache グループを作成して、この権限で動かすように configure しました。
$ cd apache_1.3.xx
$ env OPTIM=-O2 ./configure --enable-shared=max --server-gid=apache --with-port=80
$ make
$ su
password
# make install
- 続いてPHPを展開する
# exit
$ cd ..
$ tar xvfz php-3.0.18-i18n-ja-3.tar.gz
$ tar xvfI php-4.2.3.tar.bz2
- インストールする
$ cd php-3.0.18-i18n-ja-3
$ ./configure --with-apxs=/usr/local/apache/bin/apxs \
--with-interbase=/opt/interbase --enable-versioning \
--enable-i18n --enable-mbregex --enable-track-vars
$ make
$ su
password
# make install
php3.ini-distファイルを下記の様にコピーする。
# cp php3.ini-dist /usr/local/lib/php3.ini
続いて、PHP4もインストールする
$ cd ../php-4.2.3
$ ./configure --with-apxs=/usr/local/apache/bin/apxs \
--with-interbase=/opt/interbase --enable-mbstring \
--enable-mbstr-enc-trans --enable-mbregex \
--enable-track-vars --without-mysql
$ make
$ su
password:
# make install
同様にして、php.ini-distファイルをコピーする。
# cp php.ini-dist /usr/local/lib/php.ini
- apacheでphp用の設定を有効にする
/usr/local/apache/conf/httpd.conf の以下の2行の先頭のコメントを外し、拡張子がphp3であるファイルをphp3スクリプト、phpであるファイルをphp4スクリプトを含むファイルと認識させる。同様に、phpsであるファイルをphpのソースコードを含むファイルであると認識させる。
# vi /usr/local/apache/conf/httpd.conf
# grep x-httpd-php3 /usr/local/apache/conf/httpd.conf
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
また、ディレクトリインデックス(http://yourhost.domain/とやったときに表示されるファイル)に index.php
index.php3 を追加する。
# vi /usr/local/apache/conf/httpd.conf
# grep index.php /usr/local/apache/conf/httpd.conf
DirectoryIndex index.php index.html
PHPスクリプトよりindex.htmlを優先したいときは、順番を逆にする。
- apacheを起動する
apache の動作するGIDを apache としたので、apache グループを作成しておかなくてはなりません。
# su
password:
# groupadd apache
それと、デフォルトのポートが 8080 になっている(?)ので、こちらも一般的な80に直しておきます。これで、
# /usr/local/apache/bin/apachectl start
/usr/local/apache/bin/apachectl start: httpd started
と出れば、恐らく動いているでしょう。
どうも、root以外でコンパイルするとデフォルトが8080になるらしいことを最近知った(笑)
- phpが動いているかテストする
/usr/local/apache/htdocs/phpinfo.php というファイルを作り、中に以下の様に書きこむ。
<? phpinfo(); ?>
そしてブラウザで、http://yourhost.domain/phpinfo.php を開いてみる。PHP関連情報がずらっと表示されれば動いていると思われる。同様に、ファイル名をphpinfo.phpに変えておなじ事をしてみると、PHP4の情報が表示される。
- phpからInterBaseをアクセスしてみる
/usr/local/apache/htdocs/ibphp.php というファイルを作り、中に以下の様に書きこむ。
<?
$host="localhost:/usr/interbase/examples/employee.gdb";
$user="SYSDBA";
$password="masterkey";
$command="SELECT * FROM JOB";
$conn = ibase_connect ($host,$user,$password);
$result = ibase_query ($conn,$command);
while ($row = ibase_fetch_object ($result)) {
print "$row->JOB_CODE, $row->JOB_COUNTRY, $row->JOB_TITLE,
$row->MAX_SALARY<br>\n";
}
ibase_free_result($result);
ibase_close ($conn);
?>
そしてブラウザで、http://yourhost.domain/ibphp.php を開いてみる。EMPLOYEEデータベースの中のJOBテーブルの一部がずらりと表示されればOK。