PHP cambia una delle componenti più simboliche della propria identità storica: la licenza software.
Dopo quasi trent’anni di utilizzo della PHP License originale, il progetto ha deciso di adottare la BSD 3-Clause License, una delle licenze permissive più diffuse nel mondo open source. La decisione segna una svolta importante non sul piano tecnico del linguaggio, ma su quello giuridico, della compatibilità software e della governance del progetto.
La notizia arriva in una fase di forte trasformazione dell’ecosistema PHP. Nonostante anni di narrazione favorevole a stack alternativi, il linguaggio continua ad alimentare una porzione enorme del web globale: WordPress, Drupal, MediaWiki e numerose piattaforme enterprise dipendono ancora direttamente dal runtime PHP. Secondo i dati di W3Techs, PHP è presente in oltre il 70% dei siti che utilizzano un linguaggio server-side identificabile.
La licenza originale risaliva agli anni Novanta, quando il progetto aveva una struttura molto diversa rispetto agli standard open source moderni. Con il tempo, alcune clausole hanno iniziato a creare problemi pratici concreti, soprattutto in termini di compatibilità con altre licenze e distribuzione software.
Perché la vecchia licenza era diventata un problema
La PHP License era tecnicamente approvata dalla Open Source Initiative, ma includeva restrizioni legate all’uso del nome “PHP” nei prodotti derivati che nel tempo avevano generato complicazioni crescenti. La Free Software Foundation la considerava incompatibile con la GNU GPL: un problema che non impediva l’uso quotidiano del linguaggio, ma complicava integrazioni formali, redistribuzione di componenti e combinazioni legali con software distribuito sotto GPL.
Il nodo diventava particolarmente evidente nelle distribuzioni Linux, nei repository software e nei progetti enterprise che integrano librerie con licenze differenti. Alcuni maintainer preferivano evitare componenti con compatibilità legale ambigua per ridurre rischi durante audit o redistribuzioni commerciali.
La clausola sul naming aveva una logica precisa negli anni Novanta, quando branding e trademark management erano molto meno strutturati; con il passare del tempo è diventata la principale ragione dell’incompatibilità con la GPL. Con la migrazione verso BSD 3-Clause, la protezione del marchio PHP continuerà a esistere attraverso il trademark law tradizionale, senza necessità di clausole speciali nella licenza software.
Cosa cambia con la BSD 3-Clause e cosa resta uguale
La BSD 3-Clause consente utilizzo commerciale, modifica, redistribuzione e integrazione proprietaria con obblighi minimi: mantenimento del copyright originale, disclaimer di garanzia e divieto di usare il nome degli autori per promozione senza autorizzazione.
Aziende, distribuzioni Linux e fornitori cloud conoscono già bene il suo comportamento, grazie all’utilizzo esteso in componenti infrastrutturali critici come FreeBSD, OpenBSD e numerose librerie di networking.
Dal punto di vista pratico, il cambiamento non altera il funzionamento del linguaggio né il modello di sviluppo comunitario. Gli utenti PHP non dovranno modificare codice applicativo o procedure operative. La transizione riguarda principalmente la redistribuzione del core runtime e la gestione delle dipendenze software, riducendo costi di compliance e incompatibilità teoriche che per anni avevano accompagnato la licenza originale.
Vale la pena ricordare che il PHP moderno è molto diverso dalla reputazione costruita negli anni Duemila. Le versioni della serie 8.x hanno introdotto compilazione JIT, miglioramenti profondi al type system, attributi nativi e ottimizzazioni OPCache.
Runtime come RoadRunner, Swoole e FrankenPHP hanno reso il linguaggio più competitivo anche in ambienti containerizzati e deployment serverless. La standardizzazione sulla BSD 3-Clause elimina ora una componente storica che appariva sempre più fuori linea rispetto alle pratiche legali adottate dal resto dell’industria open source.