PHP官方近日宣布了一个历史性的决定:废弃PHP自定义的许可证体系,全面转向标准的BSD 3-Clause开源许可证。这标志着PHP在开源许可证问题上长达20多年的”特殊身份”终于画上句号。
PHP许可证的历史
PHP从诞生之初就使用自定义许可证(The PHP License),而不是业界标准的MIT、BSD或Apache许可证。这个自定义许可证有几个特殊之处:
- “PHP”名称保护:衍生产品不能使用”PHP”名称,这导致了PHP社区的多次争议
- 与GPL不兼容:PHP许可证与GPL许可证存在兼容性问题,给Linux发行版打包PHP扩展带来麻烦
- 版本3.01:PHP许可证经历了多个版本,最终稳定在3.01版
2025年7月,PHP核心开发者Ben Ramsey在PHP内部邮件列表提出了更新PHP许可证的RFC,经过社区讨论和投票,最终决定采用BSD 3-Clause。
为什么选择BSD 3-Clause
BSD 3-Clause(也叫”BSD许可证”或”修改版BSD许可证”)是最简洁、最被广泛认可的开源许可证之一。它只有三条核心条款:
- 保留版权声明:在源代码和二进制分发中保留原始版权声明
- 不得用原作者名义背书:未经许可不得使用原作者/组织的名称为衍生产品做推广
- 无其他限制:除此之外没有任何限制,可以自由使用、修改和分发
选择BSD 3-Clause的好处:
- 与GPL兼容:解决了长期以来PHP与GPL的许可证兼容问题
- 业界标准:BSD 3-Clause是最被广泛认可和理解的开源许可证之一
- 简洁清晰:相比PHP自定义许可证,法律解释更明确
- 商业友好:对商业使用几乎没有限制
对PHP生态的影响
1. Linux发行版打包
PHP扩展和工具与GPL许可证的兼容问题一直是Linux发行版打包者的痛点。切换到BSD 3-Clause后,这个问题将不复存在。
2. 扩展开发者
PHP扩展开发者不再需要担心PHP许可证的特殊条款,可以更自由地选择自己的许可证。
3. Composer/Packagist
Packagist上的PHP包使用各种许可证,PHP本身的许可证变更不会直接影响这些包,但会简化整体的许可证合规问题。
4. 企业采用
对于需要进行许可证审计的企业来说,标准的BSD 3-Clause比自定义许可证更容易通过法务审核。
对站长和开发者的影响
- 几乎无影响:对于大多数PHP开发者和站长来说,许可证变更不会改变你使用PHP的方式
- 间接好处:更宽松的许可证可能吸引更多企业和开发者参与PHP生态
- 法律合规:如果你的产品使用了PHP代码,许可证审计会更简单
历史意义
PHP许可证的”特殊性”一直是开源社区的一个话题。这次变更是PHP项目在开源治理上的一次重要现代化。从1995年PHP诞生时的自定义许可证,到2025年提出RFC,再到2026年正式切换,这个过程花了将近30年。
类似的许可证现代化在开源界并不罕见。Rust语言之前也从Apache 2.0/MIT双许可证改为纯Apache 2.0,引发过社区讨论。许可证的选择不仅影响代码的使用方式,也反映了项目的社区文化和商业策略。
简评
PHP切换到BSD 3-Clause是一个务实的决定。自定义许可证在PHP早期可能有其必要性(防止名称滥用等),但随着PHP生态的成熟,标准许可证的好处已经远大于自定义许可证的保护作用。对于PHP开发者来说,这是一个积极的信号——PHP项目正在变得更加开放和标准化。
来源:
















暂无评论内容