Tutti i clienti di Kinsta possono facilmente scegliere la versione di PHP per un sito WordPress tramite la dashboard di MyKinsta. Consigliamo di utilizzare l’ultima versione disponibile di PHP supportata dall’installazione di WordPress.

Come avrete sentito, PHP ha adottato delle fasi di rilascio programmate. Ogni nuova versione viene mantenuta attivamente per due anni e riceve aggiornamenti critici per la sicurezza per un altro anno. Per essere sicuri che i vostri siti WordPress siano il più veloci e sicuri possibile, abbiamo adottato lo stesso programma, il che significa che rimuoveremo le versioni non supportate di PHP quando raggiungeranno il termine del loro ciclo di vita (EOL).

Perché aggiornare la versione di PHP?

Le due ragioni principali per aggiornare la versione di PHP in esecuzione dietro il vostro sito sono sicurezza e velocità.

Così come aggiornate WordPress per assicurarvi di essere protetti dalle vulnerabilità della sicurezza, dovreste fare lo stesso con PHP. Inoltre, l’aggiornamento di PHP comporta in genere un significativo aumento della velocità, come dimostrano i nostri report sui benchmark PHP.

Per maggiori dettagli, date un’occhiata al nostro articolo sulle versioni di PHP supportate.

Non sapete qual è la versione di PHP che state utilizzando? Potete controllare nel menu Strumenti del cruscotto di MyKinsta. In alternativa, è possibile vedere la versione di PHP utilizzando lo strumento WordPress Salute del sito:

Schermata che mostra la versione PHP nello strumento di salute del sito WordPress.
Verifica della versione PHP nello strumento di salute del sito WordPress.

Che succede se il sito si interrompe?

I problemi causati dall’aggiornamento delle versioni di PHP si verificano quando il codice in esecuzione sul vostro sito utilizza vecchie funzioni che non sono più supportate dalle versioni recenti di PHP. È probabile che il colpevole sia un plugin o un tema attivo. La nostra guida qui di seguito fornisce istruzioni dettagliate per risolvere questo problema.

Come aggiornare le versioni di PHP in WordPress

Oggi vi mostriamo i passaggi per testare al meglio la compatibilità del vostro sito WordPress prima di aggiornare la versione di PHP. La maggior parte dei siti non dovrebbe subire downtime e non dovrebbe richiedere troppo lavoro.

Per gli altri siti, potrebbe essere necessario eseguire altri test, fare troubleshooting e persino assumere uno sviluppatore WordPress per rendere tutto compatibile.

Se volete aggiornare subito la versione di PHP nel vostro ambiente di produzione, potete saltare al Passo 5. Tuttavia, vi consigliamo vivamente di seguire tutti i passaggi qui descritti, per essere certi che tutto funzioni correttamente.

Soprattutto se girate su una versione più vecchia di PHP, come PHP 7.4.

  1. Creare un sito di staging
  2. Cambiare versione PHP
  3. Provare il sito, i plugin e il tema
  4. Spostare lo staging in produzione
  5. Aggiornare PHP sul sito live

Passo 1 – Creare un sito di staging

La prima cosa da fare è creare un sito di staging. Questo sito è separato dall’ambiente live e permetterà di testare le nuove versioni di PHP evitando che il vostro sito live subisca downtime.

Nella dashboard di MyKinsta, cliccate su Siti WordPress nel pannello di navigazione a sinistra. Vedrete un elenco dei vostri siti. Cliccate su quello per il quale volete cambiare la versione PHP. Successivamente, cliccate sulla casella Salta a o cerca (oppure premete CMD + / o CTL + / sulla tastiera) e selezionate l’opzione Crea nuovo ambiente.

Schermata che mostra la creazione di un nuovo ambiente del sito in MyKinsta.
Creare un nuovo ambiente in MyKinsta.

Da qui, seguite i passi della nostra documentazione per la creazione di un ambiente di staging di WordPress.

Assicuratevi di controllare anche le note importanti relative agli ambienti di staging. Ad esempio, se state utilizzando un CDN di terze parti, potrebbe essere necessario disabilitarlo affinché il vostro sito venga visualizzato correttamente.

Questo perché il vostro sito di staging utilizza un URL diverso. La cache è disabilitata anche negli ambienti di staging standard, quindi tenete presente questo aspetto se state cercando di testare le prestazioni.

Passo 2 – Aggiornare la versione PHP di WordPress

Per aggiornare la versione PHP del vostro sito WordPress, andate su Siti WordPress > nome ambiente > Strumenti, poi fate clic sul pulsante Modifica nella scheda Impostazioni PHP:

Schermata che mostra la pagina Strumenti del sito WordPress all'interno della dashboard di MyKinsta.
Avviare un aggiornamento PHP per un singolo ambiente WordPress.

In alternativa, è possibile eseguire un aggiornamento PHP in blocco per più ambienti dalla pagina Siti WordPress. Nell’esempio seguente, abbiamo selezionato le caselle accanto ai nomi di più ambienti di staging e stiamo scegliendo Modifica le impostazioni di PHP dal menu a tendina “Azioni”:

Una schermata che mostra l'esecuzione di azioni in blocco su più ambienti WordPress all'interno della dashboard di MyKinsta.
Avviare un aggiornamento PHP per più ambienti WordPress.

Qualunque sia il percorso scelto, il passo successivo è quello di scegliere la versione di PHP che si desidera adottare e fare clic sul pulsante Cambia impostazioni PHP:

Una schermata che mostra la selezione di PHP 8.4 durante l'aggiornamento delle impostazioni PHP nella dashboard di MyKinsta.
Selezione di una versione di PHP aggiornata alla release 8.4.

Nota: Quando si aggiornano più ambienti WordPress, la versione di PHP scelta sarà applicata a tutti.

Qualunque sia il metodo scelto in MyKinsta, il processo di aggiornamento può richiedere fino a tre minuti. Al termine, il motore PHP verrà riavviato, il che potrebbe comportare un paio di secondi di downtime solo per il backend di WordPress. I visitatori del vostro sito non subiranno alcun downtime.

Mentre la versione di PHP viene cambiata, potete navigare altrove in MyKinsta, ma alcune azioni, come la gestione della cache, non saranno disponibili fino all’attivazione del nuovo motore. Riceverete una notifica nella dashboard non appena la modifica sarà stata effettuata.

Passo 3 – Testare il sito, i plugin e il tema

A questo punto dovreste avere un sito di staging funzionante con l’ultima versione di PHP (o la versione a cui volete passare). La prima cosa da fare è semplicemente navigare e cliccare sul vostro sito WordPress per vedere se notate qualcosa che non funziona.

Se qualcosa è incompatibile, ad esempio un plugin o il vostro tema, potreste vedere un errore 500 (501, 502, 503, 504, ecc.) o una schermata bianca della morte sul front-end del vostro sito. In questo caso, il modo più semplice e veloce per determinare la causa è quello di disabilitare tutti i plugin di terze parti e riabilitarli uno per uno. Ricordate che siete su un sito di staging, quindi non dovete preoccuparvi di aver rotto qualcosa.

Nella dashboard di WordPress, nella schermata Plugin, selezionate tutti i vostri plugin. Poi selezionate Disattiva dal menu a tendina Azioni in blocco e cliccate su Applica.

Schermata della pagina dei plugin di WordPress e del menu a discesa Azioni in blocco
Come disattivare in blocco i plugin di WordPress dalla dashboard.

Potrete poi riabilitarli uno per uno, visitando ogni volta il vostro sito WordPress. Questo vi aiuterà a capire quale potrebbe essere la causa del problema. Non avete accesso alla dashboard di WordPress a causa di un errore? Nessun problema, scoprite come disabilitare i plugin via FTP.

Gli stessi test possono essere utilizzati per il vostro tema WordPress. Potete tornare temporaneamente al tema predefinito di WordPress, come ad esempio il tema Twenty Nineteen.

Visualizzare i file di log in MyKinsta

Forse avete determinato quale plugin o tema sta causando il problema ma non siete sicuri del motivo? In questo caso i log degli errori di WordPress possono essere utili. Cliccate semplicemente su uno dei vostri siti WordPress e, sul lato destro, cliccate su Log degli errori.

Potete visualizzare i file error.log, kinsta-cache-perf.log e access.log. Per impostazione predefinita, vengono mostrate le ultime 1.000 righe. Potete utilizzare il menu a tendina del numero di righe per selezionare un numero maggiore (fino a 20.000 righe).

Schermata del visualizzatore di log di MyKinsta.
Il file error.log nel visualizzatore di log di MyKinsta.

Importante: lo strumento dei log di MyKinsta non mostra le informazioni di debug. Se avete bisogno di visualizzare le informazioni di debug, potete attivare WP_DEBUG come vi mostreremo di seguito.

Visualizzare i file di registro grezzi via SFTP

Potete vedere i log completamente non modificati in /logs/ tramite SFTP.

Cartella dei log degli errori di WordPress via SFTP
Cartella dei log degli errori di WordPress via SFTP

Seguire i file di log tramite SSH

Potete seguire i log mentre fate esperimenti sul vostro sito utilizzando SSH. In pratica, potete vedere l’aggiornamento dei log in diretta durante i test. Tutti i piani di hosting di Kinsta includono l’accesso SSH.

Mostra le ultime 500 righe

tail -n 500 /www/sitename/logs/error.log

Visualizzare il file in diretta

Visualizzate il file di log degli errori aggiornarsi al volo.

tail -f /www/sitename/logs/error.log

Per chi ha accesso a SSH, anche WP-CLI può essere uno strumento prezioso.

Abilitare la modalità di debug in MyKinsta

Per gli utenti di Kinsta, la modalità di debug di WordPress può essere attivata direttamente nella dashboard di MyKinsta. Basta navigare nel sito e nell’ambiente WordPress per il quale si desidera abilitare il debug. Cliccate su Strumenti nel menu a sinistra e poi cliccate sul pulsante Abilita dello strumento Debug di WordPress. In questo modo potrete vedere gli errori e gli avvisi PHP senza dover attivare la modalità di debug tramite SSH o SFTP.

Schermata che mostra lo strumento di debug di WordPress in MyKinsta.
Abilitazione del debug di WordPress in MyKinsta.

La nostra funzione di self healing di PHP riavvia automaticamente PHP se nota dei problemi. Se per qualsiasi motivo dovete riavviare manualmente PHP, potete farlo andando nella pagina Strumenti del vostro sito e cliccando su Riavvia PHP.

Schermata dello strumento Riavvia PHP in MyKinsta.
Riavviare PHP in MyKinsta.

Abilitare la registrazione di debug in WordPress

Se non avete accesso a SSH o a MyKinsta, potete sempre abilitare il debug logging in WordPress. Per prima cosa, dovrete collegarvi al vostro sito tramite SFTP. Poi scaricate il vostro wp-config.php in modo da poterlo modificare.

Scaricare il file wp-config.php
Scaricare il file wp-config.php

Trovate la riga che dice /* That's all, stop editing! Happy blogging. */ e, subito prima, aggiungete quanto segue (come si vede qui sotto):

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Abilitare il debug logging in WordPress
Abilitare la registrazione di debug in WordPress

Se il codice di cui sopra esiste già nel vostro file wp-config.php ma è impostato su “false”, cambiatelo semplicemente in “true”. In questo modo verrà attivata la modalità di debug e verranno mostrate tutte le informazioni contenute nel file /wp-content/debug.log. Vedrete anche gli avvisi e gli errori nell’amministrazione di WordPress, se presenti.

Importante: Non dimenticate di disattivarlo una volta finito, perché questi file possono diventare molto grandi in breve tempo.

Cosa cercare?

Ci sono migliaia di plugin e temi in circolazione, quindi, purtroppo, è impossibile elencare tutti gli errori che potreste riscontrare. In genere questi errori sono dovuti all’incompatibilità del codice (funzioni, sintassi, ecc.) con la versione di PHP che state utilizzando. Tuttavia, ecco un esempio di ciò che potreste vedere.

500: Errore fatale: Errore non rilevato: Ci si aspettava un punto e virgola (';') in /www/sitename/public/wp-content/plugins/bbpress-shortcodes/bbpress-shortcodes.php:177

Come potete vedere qui sopra, è abbastanza facile capire che è il plugin bbPress Shortcodes a causare il problema.

Nel peggiore dei casi, potreste scoprire di avere un problema di compatibilità con uno o due plugin. In questo caso, ecco cosa consigliamo:

  1. Aggiornate i vostri plugin e temi all’ultima versione se non l’avete ancora fatto.
  2. Contattate lo sviluppatore del plugin o del tema e chiedegli di aggiungere/fissare il supporto a PHP 7.4 (o alla versione attuale che state utilizzando). Questo è uno dei motivi per cui vi stiamo avvisando in anticipo rispetto alle date di abbandono!
  3. Cercate un plugin alternativo che offra le stesse funzionalità e sia compatibile con la versione PHP.
  4. Assumete uno sviluppatore WordPress per risolvere il problema.
  5. Cambiate il vostro motore PHP con una versione inferiore e verificate se il plugin o il tema funzionano. In caso affermativo, potreste utilizzare una versione inferiore di PHP fino a quando lo sviluppatore non aggiornerà il suo codice. Non consigliamo di farlo perché PHP 8.0 è più veloce e rimarrà supportato per un periodo di tempo più lungo. Ma se c’è qualcosa che dovete assolutamente eseguire e che funziona solo con PHP 7.4, allora potreste dover ricorrere a questa soluzione.

Passo 4 – Passare dallo Staging al Live

Una volta terminato il test del sito con PHP, se avete dovuto apportare delle modifiche ai vostri plugin o ai vostri temi, potete passare dallo staging al live oppure apportare al sito live le stesse modifiche che avete apportato al sito di staging.

Alcuni di voi potrebbero trovarsi a dover apportare modifiche piuttosto esaustive nello staging per far funzionare il sito su una versione più recente di PHP. In questo caso, l’utilizzo della funzione push to live vi farà risparmiare molto tempo.

Per farlo, assicuratevi di aver selezionato l’ambiente di staging. Poi cliccate sul pulsante Esegui il push dell’ambiente.

Schermata che mostra l'utilizzo della funzione Esegui il Push dell'ambiente di MyKinsta.
Eseguire il push dell’ambiente di staging verso il live in MyKinsta con la funzione di Push selettivo.

Non esitate a contattare il nostro team di supporto disponibile 24 ore su 24, 7 giorni su 7, per qualsiasi dubbio o problema relativo all’aggiornamento della versione PHP del vostro sito WordPress.

Fase 5 – Aggiornare il PHP sul sito live

Ora che il PHP è pronto per essere aggiornato, potete cambiare la versione del PHP sul vostro sito live proprio come avete fatto con i metodi descritti al punto 2.