Breve informazione circa gli aggiornamenti di Drupal branch 7.
L'aggiornamento del "core" di un sistema Drupal 7 normalmente non è difficile. Ma, prima di procedere con l'aggiornamento, bisogna tenere presenti i seguenti punti:
- a volte caratteristiche molto particolari nel nostro sito potrebbero non funzionare più, o non funzionare propriamente, dopo l'aggiornamento del "core" di Drupal. Questo è possibile, ad esempio, in caso di moduli sviluppati autonomamente, di personalizzazioni del tema o del "core".
- non è MAI buona pratica modificare i file sorgente del "Core" - normalmente per personalizzare il funzionamento del software esistono metodi di personalizzazione specifici (moduli custom, "hook", eccetera). Tuttavia, se avete avuto l'imprudenza di modificare "a mano" i file sorgenti del core, l'aggiornamento vi fara' necessariamente perdere le vostre modifiche.
- non basta aggiornare il Core del software Drupal per essere protetti da intrusioni, violazioni, malfunzionamenti. Anche i vari moduli "contribute" eventualmente installati vanno mantenuti costantemente aggiornati.
- di norma non è necessario effettuare tutti gli aggiornamenti del core in sequenza, se siamo rimasti "indietro" di poche versioni. Ad esempio, se il nostro sito è ancora alla versione 7.56, non è necessario installare la 7.57, la 7.58 e la 7.59 - può essere sufficiente installare direttamente la versione 7.59. Ma se il "salto" è più importante (ad es. un sito rimasto alla7.36) potrebbe essere opportuno effettuare qualche aggiornamento "intermedio". Dipende naturalmente dai casi.
- Non serve a nulla aggiornare il sito "ogni tanto". Aggiornamenti vengono emessi frequentemente dal Security Team di Drupal, e normalmente risolvono tempestivamente problemi di sicurezza appena verificati. Mantenetevi aggiornati ed effettuate gli aggiornamenti altrettanto tempestivamente.
- PRIMA di effettuare qualsiasi aggiornamento, ASSICURATEVI DI AVERE DA QUALCHE PARTE UNA COPIA AFFIDABILE DEL FILE SYSTEM E DEL DATABASE. Per effettuare una copia del database è sufficiente accedere allo stesso tramite la piattaforma phpmyadmin ed effettuare l'export del database su file esterno. Consiglio, prima di effettuare l'export, di collegarsi come "admin" e ripulire le cache. Vedi anche il mio Videotutorial nr. 14
Normalmente io preferisco mantenere su una piattaforma di sviluppo separata (niente di fantascientifico: il mio pc Windows con una installazione Apache, Mysql, php funzionante in locale) una copia originale del mio sito; effettuo gli aggiornamenti in locale; poi se tutto va bene, esporto le modifiche al filesystem in remoto via ftp e replico le eventuali altre operazioni (update.php). Ma è una scelta personale.
Considerato quanto sopra, i passi per aggiornare il sito sono poi i seguenti:
- scaricare da qui: https://www.drupal.org/project/drupal l'ultima distribution di Drupal 7
- estrarre tutto l'albero dal file scaricato, in una cartella separata
- copiare i file cosi estratti nella cartella originale del sito, sovrascrivendoli agli originali. Verificare di avere una copia dei file originali per poter "tornare indietro" in caso di problemi. NOTA 1: normalmente io non sovrascrivo i files .htaccess e robots.txt(perchè a volte mi capita di dover fare delle personalizzazioni a questi files e sovrascrivendoli andrebbero perse). A questo punto il core è, in teoria, aggiornato. NOTA 2: a essere corretti, piuttosto che sovrascrivere i files, andrebbero prima cancellati a mano tutti i files del core sul sito da aggiornare, a parte la cartella "sites" e i suoi contenuti, e poi rimpiazzati con quelli nuovi. Questo evita di lasciare nel sito files eventualmente rimossi dalle ultime versioni del core. Ma nelle ultime versioni non è mai successo, quindi se il vs. sito da aggiornare è attualmente alla versione 7.31 o successive, di fatto è lo stesso. NOTA 3: sui nostri server, due file (comment_hacks.css e comment_hacks.css.unoptimized.css nel modulo Simpletest) non possono essere caricati; vengono bloccati dai firewall perchè contengono, volutamente, del codice che viene considerato dai firewall stessi come "sospetto". Ignorate questi file, se non vengono caricati pazienza, di norma non servono (in caso contrario, contattatemi).
- accedere come Admin al sito, ed eseguire il file "update.php" accedendo all'url update.php del vostro sito. Url tipo: http://il.mio.sito/update.php (dove "il.mio.sito" è l'indirizzo del vostro sito, ovviamente)
Questa è una fase critica, se vengono eseguiti aggiornamenti del database e si verificano dei messaggi d'errore bisogna annotarli per verificare i problemi, e potrebbe essere necessario a questo punto tornare sui propri passi e ripristinare filesystem e/o database precedenti. Di norma non ci sono problemi con gli aggiornamenti "minor" del core, ma tutto è possibile. - verificate lo stato del sito (admin; --> resoconti --> resoconto sullo stato) e la presenza di ulteriori aggiornamenti del core o dei moduli (resoconti-->aggiornamenti disponibili-->aggiorna) e, se necessario, aggiornate i moduli non ancora aggiornati; anche in questo caso valgono le premesse da "a" ad "f"
Ulteriori informazioni:
- https://www.drupal.org/docs/7/update
- https://www.drupal.org/security
- https://www.drupal.org/updating-and-upgrading-drupal-core
- Vedi anche il mio Videotutorial nr. 12 - Controllare lo stato di aggiornamento del proprio sito Drupal 7
- E il videotutorial: Videotutorial nr. 15 - Aggiornare il Core di Drupal 7, rapidamente