cron - minutos - ejecutar script php automaticamente windows
Cómo ejecutar un script php todos los días (2)
cada minuto:
* * * * * /path/script.php
cada 24 horas (cada medianoche):
0 0 * * * /path/script.php
Se esta referencia sobre cómo funciona crontab: http://adminschoice.com/crontab-quick-reference , y esta práctica herramienta para compilar cron jobx: http://www.htmlbasix.com/crontab.shtml
Posible duplicado:
Trabajo de Cron en Ubuntu para php
Me estoy ejecutando y servidor de ubuntu y quería ejecutar un script php todos los días. Investigué un poco y descubrí que cron es la mejor manera de hacerlo, sin embargo, aquí es donde me quedé atascado, mucha de la información en internet sobre cron es muy difícil de entender y entender.
Así que quería ejecutar un simple script php una vez al día, el script que hice para probar simplemente borra un registro de una base de datos, pero el script real hará mucho más.
Traté de configurar una tarea a través de plesk que se proporciona a través de mi servicio de alojamiento web, pero no pareció ejecutarse cuando yo quería, utilicé 1 por minutos, 22 por horas, * por día, * por semana y * por mes y pensé que esto se ejecutaría todos los días a las 22:01.
Tengo los directorios en mi servidor: cron.hourly cron.daily cron.weekly cron.monthly
Pensé que podría volcar el archivo allí y se ejecutaría, por ejemplo, todos los días, pero supongo que tengo que hacer un script cron para llamar a un script php ¿verdad?
Si tuviera que ir por el camino de poner un archivo en la carpeta cron.daily, ¿cómo lo haré?
Además, si hay algún paso que deba seguir en el lado php, por favor avíseme.
Muchas gracias por su tiempo.
Hay algunas maneras de configurar el trabajo cron. Suponiendo que tiene acceso de shell, puede hacer crontab -e
desde la consola y definir el trabajo allí, es decir, así:
1 22 * * * command
que activaría el command
(lo que sea) a las 22:01 todos los días (aunque no estoy seguro de por qué configuró los minutos en 1
lugar de 0
). Para iniciar el script PHP desde allí, deberá instalar php-cli
y luego invocarlo de esa manera:
1 22 * * * <path>/php -q script.php
También puede llamar a bash script aquí, configurar todo como rutas, etc. y luego llamar a su script php forma bash - a veces es más simple hacerlo de esa manera en lugar de crear demasiado tiempo la línea de comando para cron. Y es más simple actualizarlo más tarde. también, puede convertir su script php en script bash-runnable estableciendo su bit de ejecución ( chmod a+x script.php
) y agregando línea de shell como primera línea en su script:
#!/usr/bin/php -q
<?php
...
Si su script tiene demasiadas dependencias y prefiere llamarlo a través de la web, puede usar wget
para imitar un navegador. entonces tu command
sería:
/usr/bin/wget --delete-after --quiet --spider <URL-TO-YOUR-SCRIPT>
El manual de wget puede ser accedido por man wget
o wget -h
, o está en este sitio web . Alternativamente, puede usar HEAD
desde el paquete perl-www, pero requiere perl, mientras que wget es una herramienta independiente. Si usa HTTPS con --no-check-certificate
agregue --no-check-certificate
. Y también puede configurar .htaccess
y limitar el acceso web a su script cron a localhost / 127.0.0.1