Blog

Come aggiornare Magento 2.x.x

  |   E-commerce, Magento2 - Magento

Sono trascorsi ormai 3 anni dall’uscita di Magento 2 e dopo numerose release rilasciate quasi regolarmente la possiamo considerare una piattaforma “matura”.

Questo non significa che sia esente da bug o miglioramenti che possono e saranno implementati nel futuro, ma sicuramente una delle “feature” che hanno fatto felici gli sviluppatori è il nuovo sistema di aggiornamento.

Aggiornare Magento 1 è sempre stata un operazione delicata, il vecchio Magento Connect non sempre funzionava correttamente e le patch di sicurezza tramite script .sh sono ormai un lontano ricordo. Detto questo consiglio sempre di effettuare un backup completo di tutto il sito e di tutto il database prima di procedere con qualsiasi metodo.

Possiamo seguire due strade diverse per aggiornare Magento 2 sul proprio server o in locale: tramite Composer oppure tramite Github. In entrambi i casi utilizzeremo le funzioni della CLI (Command Line Interface). Non credo che GitHub abbia bisogno di presentazioni per cui elencherò di seguito i vari step (e accorgimenti) da seguire per aggiornare la piattaforma tramite Composer.

La maggior parte delle operazioni fondamentali per lo sviluppo, manutenzione e debug di Magento 2 vengono fatte tramite Shell, lanciando determinati comandi. E’ un approccio completamente diverso rispetto alla precedente versione ma una volta presa confidenza risulta tutto molto semplice e snello. Chi sviluppa in Magento 2 deve abituarsi ad avere la Shell sempre aperta vicino al proprio editor.

Step 1

Colleghiamoci quindi via SSH al server. Sarebbe buona abitudine mettere Magento in “maintenance mode” prima di fare qualsiasi cosa:

php bin/magento maintenance:enable

Verrà creato un file nascosto .maintenance.flag all’interno della cartella var/.
Nel caso in cui non si riesca ad uscire dalla modalità di manutenzione, possiamo eliminare fisicamente questo file e tutto tornerà a funzionare come prima.

Step 2

Controlliamo sul sito ufficiale qual’è l’ultima versione stabile rilasciata.
Definiamo la versione specifica da installare:

composer require magento/product-community-edition 2.2.x –no-update

… e lanciamo l’aggiornamento vero e proprio.

composer update

Vi verranno ora richieste le credenziali per accedere al repository di Magento. Si tratta della chiave pubblica e privata legate al vostro account sul Magento Marketplace.

La procedura dura qualche minuto e sulla Shell compariranno tutti i pacchetti (e relative versioni) che saranno aggiornati.

Step 3

Eliminiamo alcune cartelle, che verranno rigenerate automaticamente in seguito:

rm -rf var/cache/*

rm -rf var/page_cache/*

rm -rf var/generation/*

Aggiorniamo il database schema:

php bin/magento setup:upgrade

e lanciamo la compilazione dei nuovi pacchetti:

php bin/magento setup:di:compile

Step 4

Possiamo ora svuotare cache e lanciare un reindex completo:

php bin/magento cache:flush

php bin/magento indexer:reindex

Step 5

L’aggiornamento è completo. Usciamo dalla modalità manutenzione:

php bin/magento maintenance:disable

 

In pochi step possiamo tenere aggiornata la piattaforma, risolvere numerosi bug (spesso segnalati dalla community) e tenere il vostro store al sicuro da vulnerabilità di sicurezza.

Lascia fare agli esperti, contattaci per aggiornare il tuo Magento 2.

 

 

Matteo P.