<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PHPCompatibilityWP - Web Design | Creazione Siti Internet</title>
	<atom:link href="https://www.mrtux.it/tag/phpcompatibilitywp/feed" rel="self" type="application/rss+xml" />
	<link>https://www.mrtux.it</link>
	<description>Sviluppo Siti Web - Assistenza WordPress</description>
	<lastBuildDate>Tue, 08 Sep 2026 13:11:59 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.1</generator>

<image>
	<url>https://www.mrtux.it/wp-content/uploads/2022/06/favicon-150x150.png</url>
	<title>PHPCompatibilityWP - Web Design | Creazione Siti Internet</title>
	<link>https://www.mrtux.it</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>PHP legacy e WordPress: il rischio sicurezza che ignori</title>
		<link>https://www.mrtux.it/php-legacy-wordpress-rischio-sicurezza-2026</link>
					<comments>https://www.mrtux.it/php-legacy-wordpress-rischio-sicurezza-2026#respond</comments>
		
		<dc:creator><![CDATA[Emilio Petrozzi]]></dc:creator>
		<pubDate>Tue, 08 Sep 2026 11:59:54 +0000</pubDate>
				<category><![CDATA[sviluppo-web]]></category>
		<category><![CDATA[assistenza wordpress]]></category>
		<category><![CDATA[EOL]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[PHP 8.2]]></category>
		<category><![CDATA[PHPCompatibilityWP]]></category>
		<category><![CDATA[sicurezza wordpress]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.mrtux.it/php-legacy-e-wordpress-il-rischio-sicurezza-che-ignori</guid>

					<description><![CDATA[Un PHP senza supporto non è solo lento: non riceve più fix di sicurezza. Come capire dove sei, mitigare oggi e aggiornare domani senza rompere il sito.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Quando un cliente mi chiede &quot;ma il PHP vecchio è davvero un problema?&quot;, la mia risposta onesta è cambiata negli ultimi due anni. Prima raccontavo la solita storia delle performance: aggiorna e il sito va più veloce, fine. Oggi la racconto diversamente, perché ho smesso di vedere il PHP legacy come una questione di velocità e ho iniziato a vederlo per quello che è: una superficie d&#x27;attacco che si tiene aperta per comodità.</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1080" height="720" src="https://www.mrtux.it/wp-content/uploads/2026/09/cover_php-legacy-wordpress-rischio-sicurezza-2026.jpg" alt="PHP legacy e WordPress: il rischio sicurezza che ignori" class="wp-image-3783" srcset="https://www.mrtux.it/wp-content/uploads/2026/09/cover_php-legacy-wordpress-rischio-sicurezza-2026.jpg 1080w, https://www.mrtux.it/wp-content/uploads/2026/09/cover_php-legacy-wordpress-rischio-sicurezza-2026-300x200.jpg 300w, https://www.mrtux.it/wp-content/uploads/2026/09/cover_php-legacy-wordpress-rischio-sicurezza-2026-1024x683.jpg 1024w, https://www.mrtux.it/wp-content/uploads/2026/09/cover_php-legacy-wordpress-rischio-sicurezza-2026-768x512.jpg 768w" sizes="(max-width: 1080px) 100vw, 1080px" /></figure>



<p class="wp-block-paragraph">Il caso che mi ha convinto è di un anno fa. Un sito di un professionista, hosting affidabile, PHP 7.4 da quattro anni. Il motivo del congelamento era legittimo: un plugin di fatturazione comprato anni prima che non girava su 8.x, e il titolare — ragionevolmente — non voleva rischiare di bloccare le fatture per una &quot;mitiglioria&quot;. Tuttoစစ۶ ok, finché una routine di controllo non mi ha fatto notare il dettaglio sgradevole: quel PHP 7.4 non riceveva correzioni di sicurezza da tempo, e due plugin sul sito avevano aggiornamenti che richiedevano 8.x. Il sito non era lento. Era indifeso, con in più una porta aperta che nessuno stava guardando.</p>



<p class="wp-block-paragraph">Un episodio recente del podcast WP Tavern — il numero 225, con lo sviluppatore Milan Petrović — mette a fuoco esattamente questo: i rischi di sicurezza del PHP legacy in WordPress e perché l&#x27;aggiornamento è una questione di sicurezza prima ancora che di performance. In questa guida lo rileggo con la mia ottica di consulente: cosa cambia davvero tra le versioni, come capire dove sei, cosa fare se non puoi aggiornare oggi, e la pipeline per farlo domani senza rompere nulla.</p>



<h2 class="wp-block-heading">Perché il PHP vecchio è un problema di sicurezza, non solo di velocità</h2>



<p class="wp-block-paragraph">Il punto che l&#x27;episodio di WP Tavern aiuta a chiarire è il meccanismo con cui una versione PHP diventa un rischio. Non è che &quot;il vecchio è bucato e il nuovo no&quot;: è che ogni ramo di PHP riceve correzioni di sicurezza solo fino alla propria fine del supporto. Da lì in poi, ogni nuova vulnerabilità scoperta nel linguaggio — e ne vengono scoperte — resta aperta per sempre su quel ramo.</p>



<p class="wp-block-paragraph">PHP 8.1, per fare l&#x27;esempio più importante di questo periodo, ha terminato il supporto di sicurezza il 31 dicembre 2025. PHP 8.2 lo chiuderà il 31 dicembre 2026. Le versioni 8.3, 8.4 e 8.5 sono attive. Chi oggi gestisce un sito su 8.0 o 8.1 non sta &quot;risparmiando tempo&quot;: sta usando un runtime che non riceverà più correzioni, e ogni mese che passa il divario si allarga.</p>



<p class="wp-block-paragraph">Il secondo meccanismo è sottile ma contano tanto: le deprecazioni. Le versioni nuove di PHP eliminano funzioni e comportamenti che le vecchie permettevano. Un tema o un plugin scritto per PHP 5.6 o 7.x usa costrutti che le versioni moderne hanno rimosso proprio perché pericolosi o fragili. Aggiornare il PHP senza aggiornare il codice fa saltare il sito; non aggiornare mai significa congelare il codice in un&#x27;era in cui i suoi difetti non vengono più corretti. È una trappola a doppia via d&#x27;uscita, e l&#x27;episodio di WP Tavern descrive bene anche l&#x27;effetto collaterale: gli hosting si tengono runtime vecchi vivi solo per non rompere i siti dei clienti, e quel vecchio runtime diventa il rifugio di tutto il software che nessuno vuole più toccare.</p>



<p class="wp-block-paragraph">E c&#x27;è un terzo punto, quello che per me è decisivo nel <a href="https://www.mrtux.it/assistenza-wordpress" data-wpel-link="internal" target="_self" rel="noopener">lavoro di assistenza WordPress</a>: il PHP vecchio limita l&#x27;ecosistema. I plugin di sicurezza moderni, i tool di hardening, gran parte delle protezioni che oggi danno vantaggio concreto — tutti preferiscono, e spesso richiedono, versioni PHP aggiornate. Sul sito del mio cliente su 7.4, il miglior plugin di sicurezza dell&#x27;anno consigliava &quot;aggiornare PHP&quot; come prima raccomandazione. Il prepared statement più efficace non è dentro un plugin: è il linguaggio stesso.</p>



<h2 class="wp-block-heading">Dove sei adesso: la mappa delle versioni</h2>



<p class="wp-block-paragraph">Prima di fare piani serve un dato di partenza, e sorprendentemente molti non lo hanno. La versione PHP che gira sul tuo sito non è quella che hai installato tu nel pannello: è quella che l&#x27;hosting sta eseguendo in quel momento. Il modo più rapido per vederla è la salute del sito nella dashboard WordPress (Strumenti → Salute del sito) o, da terminale:</p>



<pre class="wp-block-code"><code># comando WordPress
wp cli info --allow-root</code></pre>



<p class="wp-block-paragraph">La mappa di riferimento per decidere è quella delle versioni supportate su php.net: ogni ramo mostra le date di fine supporto attivo e di fine supporto di sicurezza. Le scadenze che contano per il tuo piano: 8.1 è già oltre la fine del supporto di sicurezza (dicembre 2025), 8.2 chiude a dicembre 2026. Se il tuo sito è su 7.4 o 8.0, non stai parlando di &quot;aggiornare prima o poi&quot;: stai gestendo un debito con scadenza già passata.</p>



<p class="wp-block-paragraph">Le statistiche ufficiali di wordpress.org sulle versioni PHP in uso mostrano ancora una coda significativa di siti su rami vecchi. È il capitolo che l&#x27;episodio di WP Tavern racconta meglio: il supporto di WordPress a versioni PHP molto datate — per anni il minimo ufficiale è rimasto ancorato a un PHP 7.2 — ha dato comodità a migliaia di siti, ma ha anche permesso a quella coda di esistere. La raccomandazione che do ai miei clienti è semplice: se il tuo sito è in quella coda, sei nella parte dell&#x27;ecosistema più bersagliata dagli scanner automatici, perché è lì che le vulnerabilità note restano aperte più a lungo.</p>



<h2 class="wp-block-heading">Non puoi aggiornare oggi? Le mitigazioni che contano</h2>



<p class="wp-block-paragraph">La situazione del mio cliente con il plugin di fatturazione è la più comune: non puoi aggiornare subito, ma non puoi nemmeno lasciare tutto com&#x27;è. Ecco le mitigazioni che applico in ordine di efficacia, e che trovi anche nella <a href="https://www.mrtux.it/assistenza-wordpress" data-wpel-link="internal" target="_self" rel="noopener">routine di assistenza WordPress</a> che seguiamo sui siti in gestione.</p>



<h3 class="wp-block-heading">Aggiorna tutto il resto, subito</h3>



<p class="wp-block-paragraph">Se il runtime è congelato, il codice sopra il runtime non deve esserlo. Plugin e temi aggiornati portano le loro correzioni di sicurezza, indipendenti dalla versione PHP. Il conto alla rovescia qui è semplice: ogni aggiornamento rimandato è una CVE pubblica che chiunque può leggere e sfruttare. Sul sito del cliente, questa fase da sola ha chiuso due falle reali — aggiornamenti disponibili da mesi che nessuno aveva mai installato.</p>



<h3 class="wp-block-heading">Elimina ciò che è morto</h3>



<p class="wp-block-paragraph">Il secondo passo è un audit di dismissione. Plugin disattivati ma presenti, temi alternativi rimasti lì &quot;per il caso mai&quot;, componenti che non si aggiornano da oltre un anno. Ognuno è codice che gira o può essere fatto girare sul tuo vecchio PHP, senza fix. La lista dei <a href="https://www.mrtux.it/plugin-wordpress-da-evitare-2026" data-wpel-link="internal" target="_self" rel="noopener">plugin WordPress da evitare nel 2026</a> è un buon punto di partenza per il confronto. Sul sito del cliente abbiamo rimosso undici componenti; il sito non è cambiato di una virgola, la superficie d&#x27;attacco sì.</p>



<h3 class="wp-block-heading">Riduci la superficie e monitora</h3>



<p class="wp-block-paragraph">Finché il vecchio PHP resta, riduci ciò che ci gira attorno: meno utenti amministratori del necessario, accessi protetti da 2FA, WAF attivo con regole aggiornate, log controllati con frequenza. E backup testati, non semplicemente eseguiti: un backup mai ripristinato in prova non è una strategia, è un documento di intenti. La <a href="https://www.mrtux.it/wordpress-hackerato-ripristino-sicurezza-2026" data-wpel-link="internal" target="_self" rel="noopener">procedura di ripristino di un WordPress hackerato</a> parte sempre da qui: senza backup verificato, ogni scenario peggiora.</p>



<h2 class="wp-block-heading">La pipeline per aggiornare senza rompere</h2>



<p class="wp-block-paragraph">Veniamo alla parte che molti rimandano perché temono di rompere il sito. La pipeline che uso è in sei passi, e l&#x27;ordine conta quanto i passi.</p>



<p class="wp-block-paragraph">Primo: backup completo verificato, database e file, con un ripristino di prova in staging. Secondo: ambiente di staging sulla stessa versione PHP di destinazione, dove il sito viene clonato e testato così com&#x27;è. Terzo: analisi statica del codice con PHPCompatibilityWP, che mappa esattamente quali componenti contengono costrutti incompatibili con la versione di destinazione, così sai dove metterti prima che lo scopra la pagina bianca. Quarto: aggiornamento di plugin e temi PRIMA dello switch PHP, con la versione di destinazione in staging: è l&#x27;errore che ho commesso una volta sola nella vita — aggiornare PHP prima dei componenti — e che mi è costato una notte di ripristino. Quinto: switch della versione e test funzionali mirati, le pagine che vendono o raccolgono dati prima delle altre. Sesto: piano di rollback documentato, con tempi e responsabilità scritti prima dell&#x27;operazione, non dopo.</p>



<p class="wp-block-paragraph">Chi preferisce delegare l&#x27;intera sequenza trova la stessa pipeline nella pagina del <a href="https://www.mrtux.it/assistenza-wordpress" data-wpel-link="internal" target="_self" rel="noopener">servizio di supporto WordPress</a>: è il lavoro che facciamo ogni settimana, con la differenza che dopo centinaia di esecuzioni le sorprese sono poche e classificate. Per il dettaglio operativo dell&#x27;ultima tappa — PHP 8.5 — c&#x27;è la <a href="https://www.mrtux.it/php-8-5-wordpress-come-aggiornare-senza-rischi-2026" data-wpel-link="internal" target="_self" rel="noopener">guida dedicata a PHP 8.5 e WordPress</a>, con le scadenze di supporto e le prestazioni misurate.</p>



<h2 class="wp-block-heading">Il costo di non farlo</h2>



<p class="wp-block-paragraph">Chiudo con il conto, perché è lì che la decisione diventa semplice. Un aggiornamento PHP seguito con la pipeline che ho descritto si misura in ore: per un sito ordinario parliamo di una mezza giornata di lavoro, tra staging, analisi, switch e test. L&#x27;alternativa — il sito che resta su un ramo senza fix — non ha un costo immediato, e questo è il tranello: per mesi non succede nulla. Poi arriva la CVE sul runtime, o sul plugin che non potevi aggiornare, e i tempi cambiano di scala: ripristino da backup, analisi forense, giorni di sito fermo, e nella peggiore delle ipotesi il rebuild di una parte dell&#x27;infrastruttura. Il sito del mio cliente su PHP 7.4 ha fatto la pipeline in una mattina, plugin di fatturazione compreso (il fornitore, dopo tre anni, aveva una versione compatibile che nessuno aveva mai segnalato). Una mattina contro il rischio di una settimana di buco nero: è la matematica più onesta che posso offrire.</p>



<p class="wp-block-paragraph">E il beneficio invisibile resta: un PHP aggiornato è più veloce, e su un sito moderno la velocità non è estetica — l&#x27;analisi delle <a href="https://www.mrtux.it/sito-wordpress-lento-cause-velocizzare-2026" data-wpel-link="internal" target="_self" rel="noopener">12 cause di un sito WordPress lento</a> parte proprio da qui — è la differenza tra thread PHP liberi di servire i clienti e thread bruciati dai bot, come abbiamo visto nei <a href="https://www.mrtux.it/php-thread-exhaustion-wordpress-bot-ai-2026" data-wpel-link="internal" target="_self" rel="noopener">problemi di esaurimento thread dei bot AI</a>. Il vecchio runtime non solo difende pegg: serve pegg.</p>



<h2 class="wp-block-heading">Riferimenti utili</h2>



<ul class="wp-block-list"><li><a href="https://wptavern.com/podcast/225-milan-petrovic-on-the-risks-of-legacy-php-in-wordpress-and-why-upgrading-matters-for-security" target="_blank" rel="noopener nofollow external" data-wpel-link="external">WP Tavern #225: i rischi del PHP legacy in WordPress</a></li><li><a href="https://www.php.net/supported-versions.php" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Le versioni PHP supportate (php.net)</a></li><li><a href="https://wordpress.org/about/stats/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Statistiche ufficiali WordPress sulle versioni in uso</a></li><li><a href="https://www.mrtux.it/php-8-5-wordpress-come-aggiornare-senza-rischi-2026" data-wpel-link="internal" target="_self" rel="noopener">PHP 8.5 e WordPress: come aggiornare senza rischi nel 2026</a></li><li><a href="https://www.mrtux.it/manutenzione-wordpress-routine-mensile-2026" data-wpel-link="internal" target="_self" rel="noopener">Manutenzione WordPress: la routine mensile che evita i disastri</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.mrtux.it/php-legacy-wordpress-rischio-sicurezza-2026/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
