Missed Schedule – Programmazione mancante – come ti sistemo il cron di WordPress


Come tutti sanno WordPress ha un sistema di schedulazione dei post, permette cioè di pubblicare un articolo in differita. Questo sistema per molti blogger è fondamentale vista la carenza di tempo da dedicare alla scrittura dei post. Io stesso ne faccio largo uso, tanto che mi capita di non sapere quando un mio post è stato scritto e me lo ritrovo davanti come appena pubblicato.

Alle volte wordpress, soprattutto dalla versione 2.7, ha problemi con la schedulazione, infatti il post potrebbe risultare schedulato ma al momento della schedulazione viene fuori una scrittina “missed schedule” o “programmazione mancante” per le versioni in italiano.

In molti hanno sofferto del problema, Napolux con dei problemi di accesso al file wp-cron.php oppure  Merlinox (hostato da me) che ha sostituito wp-cron.php e cron.php con quelli della versione 2.6.5.

A questo punto voglio raccogliere una serie di soluzioni tutte valide per tutti i casi.

Per prima cosa direi di controllare i permessi di accesso al file wp-cron.php (come è successo per Napolux), per fare questo basta aprire il browser e digitare www.tuodominio.ext/cartellablog/wp-cron.php 

Se vi viene restituito un qualsiasi valore diverso da “200 ok” vale a dire 404, 403, 302, 301 o un qualsiasi messaggio d’errore, allora sicuramente abbiamo dei problemi di accesso al wp-cron. Dovrebbe restituire una pagina bianca completamente vuota.

Un volta verificato che wp-cron.php è raggiungibile ed il problema persiste possiamo passare alla seconda operazione: controllare l’orario del nostro server, infatti nella versione 2.7 il cron.php controlla anche che l’orario non  sia scostato di molto  dall’orario ufficiale. Cerchiamo quindi di “aggiustare” l’orario del blog.

Il terzo passo da fare è quello di controllare che il DNS della macchina su cui appoggia il blog risolva corrrettamente l’url del blog cioè se stesso(questo è il caso di Merlinox, mio  e di Maestroalberto).
Infatti WordPress ha bisogno di sapere chi è e come puntare a se stesso, se il DNS non risolve il nome o va in timeout wordpress non è in grado di lanciare wp-cron sul blog incriminato.
Basta cambiare DNS con uno più veloce, magari nella stessa infrastruttura di rete o dentro ad uno degli apparati dello stesso datawan.

Il quarto passo, ultima spiaggia, è quello di impostare sul nostro server i nomi dei blog che stanno sulla macchina, basta editare il file /etc/hosts per le macchine linux e %WinDir%\system32\drivers\etc\hosts associando l’ip della macchina con il nome del blog. 

Raccomando a tutti di NON sostituire la versione 2.7.x di wp-cron.php e cron.php con la versione 2.6.5, giustamente al prossimo aggiornamento di release l’operazione sarebbe da rifare.

Missed Schedule – Programmazione mancante – come ti sistemo il cron di WordPress ultima modifica: 2009-03-24T08:30:13+00:00 da Enrico

5 Comments.

  1. Mi inchino con ossequio alla sapienza e al ritorno del maestro! Ciao fratellone.

  2. Macchè maestro!
    Dai su! :)

  3. Scusa. Allora niente maestro: mito!

  4. Grande guida, grazie!
    Stavo riscontrando anch’io il problema da un paio di giorni, un problema di permessi, risolto.
    Aggiunto al feed ;) A presto!