概要

PHPプロジェクトは、長年にわたって使用されてきた独自の二重ライセンス構造を廃止し、広く認知されたBSD 3条項ライセンス(Modified BSD License)に統一するRFC(Request for Comments)の投票を行っている。Ben Ramseyが主導するこの提案は、2026年4月4日まで投票が続けられており、現時点で賛成49票、反対0票、棄権2票と圧倒的な支持を集めている。採択には3分の2以上の賛成が必要だが、事実上可決は確実な情勢だ。

現行ライセンスの問題点

PHPは現在、コードベースの大部分をカバーするPHP License v3.01と、Zend/ディレクトリに適用されるZend Engine License v2.00という2つの独自ライセンスを使用している。この構造は2006年から続いているが、いくつかの深刻な問題を抱えていた。PHP License v3.01は2020年にOSIのレガシー承認プロセスを通じて承認されたものの、標準的な審査ではなく歴史的使用実績に基づく承認であった。Zend Engine License v2.00に至ってはOSI承認すら存在しない。さらに両ライセンスはGPLと互換性がなく、商用採用の障壁となっていた。Debianがこのライセンス下のPHP拡張機能の配布を拒否する事例も複数発生しており、ディストリビューターやコントリビューターに混乱をもたらしてきた。

なぜBSD 3条項ライセンスなのか

RFCの分析によると、現行の両ライセンスから条件4・5・6(PHP GroupやPerforce固有の条項)を除去すると、残る条件1〜3はBSD 3条項ライセンスと同一になる。つまり、ユーザーやコントリビューターの権利を一切変更することなく、OSI承認済みかつGPL互換の標準ライセンスに移行できるという理論的根拠がある。FSF(Free Software Foundation)もBSD 3条項ライセンスをGPL互換の自由ソフトウェアライセンスとして認定しており、これにより他のOSSプロジェクトとの親和性が大幅に向上する。

歴史的経緯

PHPのライセンスの複雑さは、プロジェクトの長い歴史に根差している。PHP 1〜2はGPLv2でライセンスされていたが、PHP 3でGPLv2とApacheスタイルのカスタムライセンスの二重ライセンスに移行。PHP 4以降は、Richard Stallmanとの論争を経て独自のPHP Licenseに切り替えられた。Zend Engineには、共同創設者のAndi Gutmansが「Zend EngineはPHP以外の製品でも使用できるように設計された」と説明したように、スタンドアロンでの商用利用の余地を残すため別個のライセンスが設けられた。しかし25年の歳月を経て「両者は分離できないほど密接に絡み合っている」状態となり、別ライセンスの意義は失われていた。

合意形成と今後の影響

ライセンス変更にあたっては、PHP Groupの全メンバー(Rasmus Lerdorf、Andi Gutmans、Zeev Suraskiら10名)の承認と、Zend Licenseの権利を持つPerforce Software社からの法的な同意書が取得済みである。実装はphp-srcおよびweb-phpのプルリクエストとして既に準備されており、LICENSEファイルの置き換え、ソースファイルヘッダーの更新、ウェブサイトドキュメントの修正が含まれる。既存のPHP License v3.01で公開されている拡張機能は、アップグレード条項に基づき任意でBSD 3条項ライセンスへ移行可能だ。なお、PHPマニュアルはCreative Commons Attribution 3.0のまま変更されない。四半世紀にわたるライセンスの混乱が解消されることで、PHPエコシステム全体の法的明確性と他プロジェクトとの互換性が大きく改善されることが期待される。