1. Home
  2.  
  3. Blog
  4.  
  5. Web developer
  6.  
  7. Come configurare cron job su Magento 2 per evitare ordini bloccati e cache obsolete

Come configurare cron job su Magento 2 per evitare ordini bloccati e cache obsolete

cron job su Magento 2
Getting your Trinity Audio player ready...


Magento 2 è una piattaforma e-commerce potente ma, come tutti gli ambienti complessi, richiede una configurazione dei cron job impeccabile per funzionare bene.
Se i cron job non sono attivi o non sono configurati correttamente, puoi ritrovarti con:

  • Ordini in stato “processing” mai aggiornati
  • Email transazionali non inviate
  • Indici non ricostruiti
  • Cache obsoleta
  • Moduli come newsletter o sconti non funzionanti

Vediamo come configurare i cron job di Magento 2 passo passo, sia su hosting condiviso che su server dedicato.


Cosa sono i cron job in Magento 2

I cron job sono operazioni programmate che Magento lancia a intervalli regolari per eseguire attività automatiche:

  • Invio email ordine, fattura, spedizione
  • Pulizia log e cache
  • Reindicizzazione dati
  • Attivazione di regole promozionali
  • Sincronizzazione con moduli esterni (es. gateway pagamento)

🧩 1. Verifica se i cron sono attivi

Apri la tua shell o terminale nella root di Magento 2 e lancia:

bash
php bin/magento cron:install php bin/magento cron:run

Oppure verifica:

bash
php bin/magento cron:status

Se non ci sono errori, vuol dire che i cron job di base sono configurati.


🔧 2. Aggiungi i cron nel pannello del server

Su server con cPanel/Plesk

  1. Accedi a Cron Job o Gestione Cron.
  2. Aggiungi le righe cron per l’utente corretto (di solito username o php user).

Esempio comando cron classico:

swift
*/5
* * * * /usr/bin/php /home/tuoutente/public_html/bin/magento cron:run |
grep -v "Ran jobs by schedule" >>
/home/tuoutente/public_html/var/log/magento.cron.log

Questo comando esegue:

  • Ogni 5 minuti
  • Il file cron:run
  • Salva l’output nel log magento.cron.log

⚙️ 3. Quali cron configurare

Magento richiede 3 cron job separati:

  1. cron:run → esegue i job di base
  2. update/cron.php → per gli aggiornamenti di moduli e composer
  3. setup:cron:run → operazioni di setup e deploy

Esempio entry completa in crontab -e:

swift
*/5
* * * * php /var/www/html/bin/magento cron:run | grep -v "Ran jobs by
schedule" >> /var/www/html/var/log/magento.cron.log */5 * * * *
php /var/www/html/update/cron.php >>
/var/www/html/var/log/update.cron.log */5 * * * * php
/var/www/html/bin/magento setup:cron:run >>
/var/www/html/var/log/setup.cron.log

🔍 4. Controlla se funzionano

  • Vai in Admin > System > Cron Schedule
    (Devi abilitare il modulo Magento_Cron)
  • Verifica che non ci siano job in pending da troppo tempo.
  • Controlla i log cron (var/log/magento.cron.log).

🛑 Errori comuni da evitare

❌ Usare wget o curl per triggerare cron via HTTP: inefficiente e insicuro.

❌ Eseguire i cron come root o utente sbagliato: i file generati potrebbero avere permessi errati.

❌ Non loggare l’output: se c’è un errore, non sai cosa è successo.


🗂️ Consiglio extra

Su server con traffico elevato, valuta di usare supervisord o systemd timer per cron persistenti: più affidabili di cron tradizionale per ambienti Magento enterprise.


🔚 Conclusione

Configurare correttamente i cron job su Magento 2 è fondamentale per:
✔️ Ordini aggiornati correttamente
✔️ Email inviate puntuali
✔️ Cache e indici sempre aggiornati
✔️ Nessun blocco di funzioni vitali


🛟 Serve una mano con i cron job di Magento?

Contattami: posso aiutarti a configurare, monitorare e ottimizzare cron job su hosting condivisi o server dedicati, per evitare blocchi improvvisi o ordini persi.

Se ti è piaciuto questo articolo riguardo Come configurare cron job su Magento 2 per evitare ordini bloccati e cache obsolete condividilo sui social:
Dal 2010 supportiamo le aziende nella pianificazione e nello sviluppo di strategie mirate per una presenza efficace e professionale sul web e sui social media. Ecco tutto quello che possiamo fare per la tua attività.

Articoli correlati