企業ユーザはPHP4からPHP5への移行は慎重にすべき

Computer, Development 2月 2, 2008 #PHP
(Last Updated On: 2018年8月13日)

2008年1月3日のPHP4.4.8のリリースを持ってPHP4サポートが終了しました。海外では「PHP5へ移行しよう」キャンペーンも始まりました。

私は従来から「PHP5へ早く移行すべきです」と繰り返し勧めて来ました。現在でも全てのオープンソースアプリケーションの開発者は、今すぐPHP5に移行すべき、と考えています。

しかし、新規開発を除き、企業ユーザには今すぐPHP5へ移行すべきだ、と一概にアドバイスできません。3つのお薦めしない理由があります。

  • PHP4からPHP5へのマイグレーションはそれほど簡単ではない
  • PHP5に移行するとマイナーバージョンアップに追随しないとならない
  • PHP5.3のリリースが準備されている

PHP4からPHP5へのマイグレーションはそれほど簡単ではない

PHP4からPHP5への移行でチェックしなければならない箇所はいろいろな所で書かれていると思います。私もPHP4からPHP5へのマイグレーションについて技術評論社のWebサイトにて執筆しています。この記事を読んでいただくとPHP4からPHP5への移行は割といろいろな事に注意しなれけばならない事が分かると思います。規模が大きなシステムや安定運用が必須のサービスでは移行の工数は大きな物になってしまいます。

PHP5に移行するとマイナーバージョンアップに追随しないとならない

PHPの開発チームはマイナーバージョンアップ版をリリースすると、以前のバージョンはアップグレードしていません。つまり新しいマイナーバージョンアップ版でセキュリティホールが修正されていても以前のマイナーバージョン用にセキュリティパッチを提供してきませんでした。

私はこのリリース方針はセキュリティ上非常に問題だと考えています。PHPのマイナーバージョンアップには非互換の変更が多く含まれている事が通常だからです。商用サービスを提供している企業は簡単にPHPのバージョンを上げる訳にはいきません。

PHP5.3のリリースが準備されている

PHPのCVSブランチでは次のPHP5リリースとなるPHP 5.3ブランチが昨年から設けられています。PHP 5.3はPHP6からUnicodeサポートを削除した物とほぼ同じ機能を持つリリースとなります。PHP 5.2からPHP 5.3へのバージョンアップはメジャーバージョンアップに近い、と言える機能追加が行われます。ネームスペースやICU機能のサポート等です。

今現在、PHP4からPHP5へ移行する場合、PHP 5.2へ移行するしか選択肢がありません。しかし、PHP 5.2へ移行した場合、近い将来PHP 5.3へ移行せざるを得なくなります。PHP 5.2からPHP 5.3への移行はメジャーバージョンアップ程度のバージョンアップであることを覚悟しなければなりません。幸いな事に、PHP 5.2は今までのバージョンと異なり、PHP 5.3リリース後もしばらくメンテナンスが継続される事が決まっています。ただし、どのくらいサポートするかは不明確です。

PHP 5.3に追加されるネームスペース、ICU等の機能はPHP6でもサポートされます。つまり、PHP 5.3アプリケーションはスムーズにPHP6に移行可能です。さらに重要な事はPHP 5.3は非常に長い期間サポートされる事が期待できるリリースである事です。よほどの事が無い限りPHP 5.4はリリースされないかも知れません。企業ユーザはオープンソースプロジェクトと異なりROIが重要です。全ての企業はPHP5への移行を見合わせるべき、とは言いませんが今直ぐにPHP5へ移行するのは効果的なIT投資でない企業も多いと思われます。

企業ユーザのオプション

ただでさえメンテナンス状態が悪かったPHP4を継続利用するのはセキュリティ上のリスクも大きいです。システム担当者もPHP4と使いつづけ万が一セキュリティインシデントが発生した場合「サポートが終了しているアプリケーションを何故使いつづけてきたのか?」と指摘されても困ります。何らかの対策を行わなければなりません。現在PHP4を利用しているユーザは、PHP5に移行するか、安全にPHP4を利用する方法を見当しなければなりません。

この様な状況となるのは昨年秋には分かっていました。ですから、SRA OSS Inc.PHP4のセキュリティアップデートサポートを昨年発表しています。このサービスはPHP 4.4.8にもセキュリティパッチが必要と考えられる箇所にパッチとセキュリティ情報を提供するサービスになっています。実は先日リリースされたPHP 4.4.8用のパッチも既にあります。
# 私もこのサービス提供に関わっています。
# このため最新版のPHP 4.4.8用パッチがあることも
# 知っています。

今すぐPHP4からPHP5へのアップグレードを検討し、PHP 5.2にするのも有用な選択肢です。PHP 5.2には様々な新機能が追加されパフォーマンスが向上している部分も少なくありません。

しかし、PHP 5.3が実用レベルに達してからPHP5へアップグレードする方が高いROIが期待できる企業も少なくないでしょう。PHP 5.3へマイグレーションするのでは無く、ほぼスクラッチ&ビルドでPHP 5.3から開発するのも手法の一つです。このような企業はPHP 5.3への移行へのつなぎとして、信頼できる商用PHP4サポートを利用するも賢明な選択肢であると思います。

PHP 5.3のリリースノートを見て「こんなことならPHP 5.3のリリースまでPHP5への移行は待っていれば…」とならない為には、既存の企業PHP4ユーザはPHP5への移行は慎重に検討すべきです。

投稿者: yohgaki

コメントは受け付けていません。