いつも土日は時間が足りない。本当はこの土日にやるべき事が山積みだったのだが。時間の使い方が悪くなって来ているように思う。サスペンスドラマなんか見るんじゃなかった。。。
先日 PHP5 環境を構築した関係で、PHP4 用に書かれたいくつかのプロダクトが試せない状態である。
XOOPS(あえてリンク先は日本版サイト)も PHP5に対応したと聞いているが、ほとんどのモジュールが PHP4 用に書かれているし、
oSCommerce や Zen Cart なんかも PHP 4 用のプロダクトである。PHP 5で本当に動かないのかどうか試した事は無いが、多分動かないだろう。
ということで、PHP4 環境も作る事にした。但し、Apache と PHP は ports で既に別のバージョン(Apache 2.0.54, PHP 5.0.4)をインストールしている為、ports は使えない(はずである)。なので、ports を使わずにインストールした。
また、インストール済みの Apache がポート番号 80 を使用しているので、別のポート番号(11080)を指定する必要がある。
まあ、そんなこんなでこの土日に出来た事は、Apache1.3, PHP4 のインストールと XOOPS日本版のインストールだけであった。
(注意: 以下、普通にインストール手順しか書いていない。面白い話を期待している人は読まないように)
Apache HTTP Server の 1.3 系と、PHP の 4系の最新版をそれぞれダウンロードし、/usr/local/src に展開する。
cd /usr/local/src
tar xvzf apache_1.3.33.tar.gz
tar xvzf php-4.3.11.tar.gzApache のインストール
configure スクリプトを実行する。インストール先を /usr/local/apache としたいので、prefix パラメータに指定する。
cd apache_1.3.33
./configure --prefix=/usr/local/apache --enable-module=soconfigure スクリプトが生成した Makefile を使って、make コマンドでインストールする。
make installPHPのインストール
PHP も configure スクリプトを使って、Makefile を生成する。XOOPS は MySQL データベースを使用するので、MySQL 拡張を使用する事を --with-mysql パラメータで指定する。
さらに、Apache をインストールした時に一緒にインストールされた、apxs コマンドのパスを指定する。PHPのコマンドライン版や各ライブラリ等をインストールするディレクトリとして、/usr/local/php4 を指定する。最後の with-config-file-path は php の設定ファイルである php.ini のパスを置くディレクトリである。(--enable-mbstring はマルチバイトを扱うオプション、--with-ldap は LDAPクライアントとして利用するためのオプションである。)
cd ../php-4.3.11
./configure --with-mysql --enable-mbstring --with-ldap --with-apxs=/usr/local/apache/bin/apxs --prefix=/usr/local/php4 --with-config-file-path=/usr/local/php4/etc/apache のインストール時と同様に、configure スクリプトが生成した Makefile を使ってインストールする。
make installApache の設定
/usr/local/apache/conf/httpd.conf ファイルを修正する。先程も書いたように、ポート番号 11080で動かす必要がある。そのために、以下のように設定ファイルに記述した。
# Port 80
Port 11080Port 80 という行があるはずなので、その行をコメントアウトして新たに 11080 の行を指定している。
ついでに、実行ユーザ、グループの変更とサーバ管理者のメールアドレスも変更しておく。
# User nobody
# Group nobody
User www
Group www
# ServerAdmin satoshi@zakk.randynetwork.com
ServerAdmin webmaster@randynetwork.comPHPスクリプトを実行するためには以下の記述も必要である。一行目はインストール時に自動的に追加される。
LoadModule php4_module libexec/libphp4.so
AddType application/x-httpd-php .php .phtmlphpinfo で確認
以下のスクリプトを /usr/local/apache/htdocs/ に置いて、ブラウザから実行してみる。
<?php
phpinfo();
?>それっぽい画面が表示されれば、インストールは完了だ。

Re: Apache1.3 と php4.3.11 環境を構築
mbstring を有効にしていなかったので修正しました。
Re: Apache1.3 と php4.3.11 環境を構築
php.ini のパスを指定していなかったので、/usr/local/php4/lib/php.ini になっていました。
これではちょっと気持ち悪いので、--with-config-file-path オプションを使って、/usr/local/php4/etc/php.ini に変更しました。
Re: Apache1.3 と php4.3.11 環境を構築
大変参考になりました。ありがとうございます。
お礼方々1点だけ…
PHPのコンパイルオプションですが、
--with-config-file-path=/usr/local/php4/etc/php.ini
では /usr/local/php4/etc/php.ini という「ディレクトリ」を探しに行きます。
--with-config-file-path=/usr/local/php4/etc
としておかないと、php.ini は読み込まれないのではないかと思います。
Re: Apache1.3 と php4.3.11 環境を構築
Reo 様。コメントありがとうございます。
PHP4ではありませんが、リリースされたばかりの PHP5.3.0 で試してみました。
ご指摘の通り、コンフィグファイルは読み込まれませんね。
phpinfo()
PHP Version => 5.3.0
System => Linux debian 2.6.26-2-amd64 #1 SMP Sun Jun 21 04:47:08 UTC 2009 x86_64
Build Date => Jul 2 2009 10:42:23
Configure Command => './configure' '--with-mysql' '--enable-mbstring' '--prefix=/usr/local/php4' '--with-config-file-path=/usr/local/php4/etc/php.ini'
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /usr/local/php4/etc/php.ini
Loaded Configuration File => (none)
かなり古いエントリ(汗)だったのですが、修正しておきます。
教えてくださいまして有難うございました。
新しいコメントの投稿