Pantherのセキュリティアップデート2004-04-05が出ていました。その詳細を見るとlibxml2の名前がリストアップされているではないですか。これは!?と思いさっそくインストールしてみましたが、残念ながら2.5.4でした。PHP 5の必要とする2.5.10以前でした。
おしいぞ、アップル。
PHP5での変更点をの記事の翻訳を始めてみました。とりあえずほんのちょっと。
- PHP 5/Zend Engine 2.0の変更点 [元の記事: Changes in PHP 5/Zend Engine 2.0]
勝手にやっていいのかな? まずいかな? 一言メールを入れることにしましょう。
PHP5も長い開発版、ベータ版の期間を終えて、ついにRC1になりました。PHP大好きな男としては、仕事で使うことを大前提としていたので、これまでの所、手を出さずにいたのですが、RC1ともなれば公開も目の前。そろそろ備えておこうと思い立ちました。
とりあえず、PowerBookに入れて試すことにしましょう。環境は以下の通り。
- PowerBook G4 867MHz
- Mac OS X 10.3.3 Panther
ソースはhttp://www.php.net/downloads.phpから落としましょう。5M程度です。
展開してconfigureします。参考までに。
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --enable-sockets --enable-mbstring --enable-mbregex --enable-zend-multibyte --enable-memory-limit --with-apxs=/usr/sbin/apxs --disable-short-tags --with-openssl --with-zlib --with-ftp --with-pgsql --with-xml-dir=/usr/local
Pantherには標準でlibxml2.5.2が入っているのですが、PHP5では2.5.10以降が必要ということで、http://www.xmlsoft.org/downloads.htmlからソースを落としてビルドしました。
$ tar zxf libxml2-2.6.8.tar.gz
$ cd libxml2-2.6.8
$ ./configure
$ make
# make install
あとMySQLのバンドルサポートが無くなっている見たいです。とりあえずPostgreSQLとSQLite以外は使わないので今回は--with-mysqlオプションを外しました。
かなり時間かかりましたが、無事終了。make installして、インストールしました。PEARなど、PHP4と同じ場所に入ってしまったけど、互換性とか大丈夫なんだろうか?
次にhttp.confを書き換えます。phpのスクリプトのハンドラがphp5_moduleになっていて、一件共存できそうですが、
AddType application/x-httpd-php .php
を設定していけないといけないので、とりあえずすべてPHP5にまかせるようにしてみました。実際には、ディレクトリごとに振り分けるなどが可能でしょう。
apacheをリスタートして、phpinfo()を確認して、ちゃんとPHP5が走っていることを確認。ひとまずここまで。