ejecutar cron desde cpanel

Programar tareas cron (cron jobs) desde cPanel

Las tareas Cron permiten automatizar determinados comandos o secuencias de comandos en la cuenta de cPanel de tu alojamiento web.

Puedes definir que un comando o una secuencia de comandos se ejecuten a una hora determinada dentro de un intervalo especificado.

Por ejemplo, podrías configurar tareas programadas y eliminar los archivos temporales semanalmente para liberar espacio de disco.

O por ejemplo, si gestionamos una Web de eventos deportivos.

Podríamos ejecutar un script los días de los partidos para que nuestra Web se conecte a otra que ofrece un servicio de actualización de los marcadores en tiempo real y poder así ofrecer los resultados en nuestra Web prácticamente en directo.

En servidores Linux estas tareas se denominan crontab.

1. Accedemos a Tareas Cron

Para gestionar nuestras tareas cron iremos al acceso de Cpanel – Tareas Cron

cron cpanel

 

2.- Correo electrónico

Podemos ingresar nuestro correo electrónico para recibir notificaciones, cuando se ejecute el cron (no es lo más recomendado ya que dependiendo de la periodicidad podemos recibir correos frecuentes.

correo de verificacion cron

3.- Agregar tarea cron

En el siguiente apartado «Agregar una nueva tarea Cron» es donde indicaremos a cPanel el momento en que deseamos sea ejecutado nuestro nuevo script (día del mes o día de la semana).

Observamos que el primer desplegable contiene «Configuraciones comunes» que podemos usar en casos sencillos.

Por ejemplo vienen algunas configuraciones tipo: cada segundo, cada hora (hourly), diario (daily), semanal (weekly), mensual (monthly) o anual (yearly o annually).

Es sumamente fácil insertar los valores adecuados en los campos MINUTO, HORA, DÍA, MES Y DÍA DE SEMANA, desplegando las «Configuraciones comunes» y seleccionando la opción que más se ajuste a nuestras necesidades.

Veamos el siguiente ejemplo:

Requerimos se ejecute el cron de moodle cada 5 minutos entre las 17 y las 24 horas los siguientes días: miércoles, jueves, sábados y domingos, entonces realizamos:

  • Cada 5 minutos: esto es sencillo. Según el desplegable tenemos que introducir en el campo MINUTO: «*/5»
  • Entre las 17 y las 24 horas. En este caso debemos insertar en HORA lo siguiente: «*/17,18,19,20,21,22,23,0»
  • Diariamente (más adelante le diremos qué días exactamente). Introducimos en DÍA lo siguiente: «*»
  • Cada mes: en este caso sólo tendremos que insertar: «*»
  • Los miércoles, jueves, sábados y domingos. En este caso introduciremos en el campo «DÍA DE SEMANA»: «3,4,6,0»(de lunes a domingo: 0-6 siendo 0 el domingo).

Bien, hasta aquí ya tenemos nuestro calendario organizado. Para que nuestro script sea ejecutado los miércoles, jueves, sábados y domingos, cada 5 minutos. Empezando desde las 5 de la tarde hasta las 12 de la noche. Sólo nos resta introducir en la línea «Comando» la instrucción apropiada que cPanel ejecute nuestro script.

Vamos a suponer que tenemos el archivo «cron.php» (nuesto script) instalado en nuestra plataforma Moodle. Por lo tanto la sentencia a insertar sería la siguiente:

php -f /home/mi-usuario-cpanel/public_html/aulavirtual/admin/cron.php >/dev/null 2>&1

(sin olvidar sustituir «mi-usario-cpanel» por nuestro usario real)

De esta forma, se ejecutarán, pero no recibiremos notificaciones en nuestra dirección de correo electrónico.

Lo ideal será recibir las notificaciones para comprobar que se está ejecutando, pero esto dependerá de la periodicidad que le demos al trabajo automatizado ya que si la frecuencia de ejecución es muy alta recibiremos muchas notificaciones en nuestro buzón de correo.

4.- Casos de como ejecutar el cron

A continuación te mostramos algunos ejemplos de los cronjobs que puedes usar en tus distintos cms usando: php, curl o wget:

  • Para ejecutar un archivo php de manera interna:
php -q /home/tusuariocpanel/public_html/carpeta/crons/cron.php >/dev/null 2>&1
  • Ejecutar un cron usando curl para ejecutar una url externa al directorio de cPanel:
/usr/bin/curl --user-agent cPanel-Cron "https://tudominio.com/archivo.php?token=xxxxxxxx"
  • Usar wget para descargar un archivo de una url externa:
wget -q -O /dev/null "https://www.tudominio.com/directorio/archivo.php" > /dev/null 2>&1

 

Comparte:

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on skype
Skype
Share on telegram
Telegram
Share on whatsapp
WhatsApp
Share on email
Email

Te puede interesar:

Deja una respuesta