1. Requisitos previos
Acceso a cPanel > Cron Jobs.
La ruta de tu script (en los ejemplos,
/home/usuario/cron.tudominio.com/check.php).
2. Instrucciones paso a paso
Revisar los avisos por correo y el error_log
1. En Cron Jobs, configura el email de notificación: ahí llegará la salida de cada ejecución.
2. Comando básico de ejemplo:
/usr/local/bin/ea-php84 /home/usuario/cron.tudominio.com/check.php
3. Si falla, revisa el error_log en /home/usuario/.
Guardar los errores de PHP en un log
4. Cambia el comando para mostrar errores y guardarlos en un archivo:
/usr/local/bin/ea-php84 -d display_errors=On -d log_errors=Off
/home/usuario/cron.tudominio.com/check.php >>
/home/usuario/cron.tudominio.com/cron_error.log 2>&1
5. Abre cron_error.log tras la siguiente ejecución.
Depurar un cron con cURL
6. Usa el modo detallado y guarda el resultado en un log:
curl -vL https://cron.tudominio.com/check.php >>
/home/usuario/cron.tudominio.com/curl_debug.log 2>&1
7. Abre curl_debug.log para ver IP, cabeceras, SSL y código HTTP.
8. Cuando funcione, pasa al modo silencioso:
curl -sL https://cron.tudominio.com/check.php
Dejar de recibir correos
9. Añade al final del comando:
>/dev/null 2>&1
Qué significa cada parte
Parte | Significado |
-d display_errors=On | Muestra errores solo en esta ejecución. |
>> archivo.log | Añade la salida al final del archivo. |
2>&1 | Envía también los errores al mismo destino. |
>/dev/null | Descarta la salida (no hay correos). |
curl -v / -L / -s | Detallado / seguir redirecciones / silencioso. |
3. Resultado esperado
Sabes por qué fallaba tu tarea cron y la tienes funcionando sin correos innecesarios.
4. Solución de problemas
Si: ¿Cómo compruebo que el cron se ejecuta a su hora?
file_put_contents('/home/usuario/cron.tudominio.com/log_ejecucion.txt', date('Y-m-d H:i:s') . " - Cron OK\n", FILE_APPEND);Solución: Añade al inicio de tu script PHP una línea que registre la fecha:
Si: No recibo correos aunque el script se ejecuta.
Solución: Solo llega un correo si el script imprime algo (echo, print o un error).
5. Resumen y siguientes pasos
Has depurado tu tarea cron.
Siguiente paso: Tareas cron ejecutándose
