Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Shared Hosting y VPS (http://www.forosdelweb.com/f19/)
-   -   Sobre cron jobs en CPanel (http://www.forosdelweb.com/f19/sobre-cron-jobs-cpanel-320770/)

tripa 28/07/2005 15:08

Sobre cron jobs en CPanel
 
Quiero configurar un cron jobs en el cpanel, para que ejecute un archivo .php
¿Como defino la ruta del mismo?

Por otro lado, el archivo va paginando las tareas, para lo cual necesita ir recargándose cada x tiempo. Esto lo hace el mismo script sólo, el problema es que, al ejecutarlo mediante un cron job, no puedo recargarlo como si lo hiciera desde un browser, como con header location o js.

Gracias

Apolo 28/07/2005 18:26

Cita:

Iniciado por tripa
Quiero configurar un cron jobs en el cpanel, para que ejecute un archivo .php
¿Como defino la ruta del mismo?

Puedes probar directamente con:

php -f public_html/nombrearchivo.php

o

php -f public_html/ruta/del/archivo/nombrearchivo.php

si es que lo tienes dentro de algún directorio.

También puedes usar WGET (dependiendo de las opciones que brinde tu proveedor):

wget -nv -O /dev/null http://www.dominio.com/archivo.php >/dev/null 2>&1

(todo en una misma línea)

Saludos,

MinervaH 29/07/2005 05:40

Por si te sirve de ayuda, te copio lo que se muestra como ayuda en nuestros paneles de control, para PHP y CGI:

Cita:

Para activar documentos PHP escribe el comando con la sintaxis siguiente o modifica el ejemplo en función de tus necesidades:
GET http://tudominio.com/ruta_al_documento/documento.php> /dev/null

Para activar documentos CGI escribe el comando con la sintaxis siguiente o modifica el ejemplo en función de tus necesidades:
GET http://tudominio.com/cgi-bin/ruta_al_documento/documento.cgi> /dev/null

nicolaspar 29/07/2005 06:15

Estoy con el mismo problema (http://www.forosdelweb.com/f18/recargar-php-con-cron-320449/), y realmente, no se que significa el "> /dev/null".

me han dicho de recargar el proceso con un comando at, llamandolo desde php, pero no se de que estan hablando cuando se refieren a esto.
Si alguien puede ser mas especifico, se agradese.

Apolo 29/07/2005 07:52

Hola,

Veo que necesitamos mayor nivel de detalle. :-)

Lo primero, como ocurre en casi todas las situaciones, es acudir al proveedor de hosting y/o al sys admin (administrador del servidor) para:

Consultar si PHP está instalado como módulo de Apache o como CGI

Consultar si el servidor soporta curl, fetch, lynx o wget

Esto es importante, pues de entrada nos define qué métodos podremos usar para nuestro Cron y no perdemos tiempo ensayando con cuál nos va a funcionar.

Ahora bien, si el proveedor de hosting y/o el sys admin no es capaz de brindarte esta respuesta, o incluso indicarte cómo configurar una tarea Cron en su servidor, mejor te vas buscando otro...

nicolaspar, en cuanto a tus inquietudes, he leido tu otro tema, pero en realidad no entiendo qué es lo que quieres hacer. No sé programación y tampoco sé cómo funciona el tema ese de la "paginación", pero si puedo decirte que:

La tarea Cron puedes configurarla para que se ejecute con la periodicidad que quieras, incluso cada minuto.

Del ejemplo que puse, el primer > /dev/null es para evitar que efectivamente se "descargue" el archivo, puesto que wget funciona, para efectos prácticos, como un browser (navegador).

El segundo >/dev/null 2>&1 es para evitar que se genere un correo electrónico como resultado de la ejecución del Cron.

Saludos. :arriba:

Apolo 29/07/2005 08:00

Bueno, me faltó decir que es recomendable leer documentación al respecto. Una simple búsqueda por Google o Yahoo o cualquier otro buscador devolverá interesantes resultados al consultar "crontab", "cron" o "cron jobs". ;-)

También se puede acudir a otras opciones si el propio servidor no permite la ejecución de tareas Cron. Aquí dejo algunos enlaces:

http://www.webbasedcron.co.uk/
http://www.cronjobs.org/
http://www.webcron.org/
http://www.visualcron.com/
http://www.bitfolge.de/pseudocron-en.html

Saludos. :arriba:

nicolaspar 29/07/2005 08:05

Apolo, mil gracias por la respuesta, y desde ya que les envie al hosting la consulta sobre lo que estas exponiedo.

Con el tema puntual mio, lo que yo necesito por asi decirlo, es abrir el php, y darle un "refresh" al script, si asi lo necesitase desde el codigo....Seria, para darte un ejemplo, abriendolo desde el browser, como una pagina que se actualiza sola, o como si le hicieras F5 Constantemente....
Para esto se le envian headers al browser indicandole esta acción, pero como no tengo esta "interface" (el browser), no se como decirle al php que se "re cargue", (o rellame, o rehaga ) el proceso en otra instancia....Todo para que preguntaras?, y es para no enviar 10000 mails a la cola del smtp con la misma instancia, y para que no me caduque el tiempo de ejecucion del script php.

Cuando tenga una respuesta del host (hoy viernes dudo que resuelva algo), la posteo.

De todas maneras, lo mas viable que he econtrado es generar este cron repetidamente cada 1 hora (por decir un tiempo), y harcodear el paginado en 1, marcando los enviados, lo cual sería practicamente lo mismo en principios...lo unico que no me gusta de esto, es que estara corriendo en todo momento, y de la otra manera lo haria solo a partir de las 2 de la mañana (por decir hora hora) y hasta que termine (como mucho 1 media hora corriendo estaria...), asegurandome que completara el proceso de ese dia al menos.


PD: Espero que se haya explicado bien...muchas veces no es facil lograr esto:(

nicolaspar 29/07/2005 08:20

Cita:

Iniciado por Apolo
Bueno, me faltó decir que es recomendable leer documentación al respecto. Una simple búsqueda por Google o Yahoo o cualquier otro buscador devolverá interesantes resultados al consultar "crontab", "cron" o "cron jobs". ;-)

También se puede acudir a otras opciones si el propio servidor no permite la ejecución de tareas Cron. Aquí dejo algunos enlaces:

http://www.webbasedcron.co.uk/
http://www.cronjobs.org/
http://www.webcron.org/
http://www.visualcron.com/
http://www.bitfolge.de/pseudocron-en.html

Saludos. :arriba:

:si:, he leido algo, pero en si lo que necesito es muy puntual (o tal vez es lo que creo), y tampoco he tenido mucho tiempo de investigar.
De estos links algunos ya los habia visto, como ser cronjobs.org, y es muy interesante!!!.

Muchas gracias de nuevo por tu interes!


PD: Eso que me han dicho del comando at de linux...sabes algo al respecto...no he encontrado nada con "at"...a no ser que sea una abreviacion, si no lo es, es como buscar "as" en google :borracho: ?

MinervaH 29/07/2005 08:27

Cita:

Iniciado por nicolaspar
PD: Eso que me han dicho del comando at de linux...sabes algo al respecto...no he encontrado nada con "at"

Creo que no te va a servir, se usa para especificar el momento de ejecución de una tarea, pero no es repetitivo, para eso están los crons. Por aquí tienes más información:
http://learn.clemsonlinux.org/wiki/At

nicolaspar 29/07/2005 08:42

Tal vez si me sirva...o sea, desde el script php se cuando deberia y cuando no re llamar al mismo script, entonces, la idea que tengo/me dieron, es cuando necesite hacerlo, es cambiar el momento de dicha tarea (supone que esta ejecutando a la hora 2, le cambiara la hora a 2:30), y de no necesitar reejectuarla, la setearia a su horario original....
Todo teoria, ya veremos y lo comentare, muchas gracias!

tripa 30/07/2005 12:45

Cita:

Iniciado por Apolo
Consultar si el servidor soporta curl, fetch, lynx o wget

Apolo, me podrías comentar que hacen esas funciones, y como se utilizan?


Por otro lado, que es lo que hace el "-nv -O /dev/null" que das como ejemplo al usar WGET?

Muchas gracias

Apolo 30/07/2005 17:32

Cita:

Iniciado por tripa
Cita:

Iniciado por Apolo
Consultar si el servidor soporta curl, fetch, lynx o wget

Apolo, me podrías comentar que hacen esas funciones, y como se utilizan?

No son funciones... son como herramientas, o pequeños programas. Como dije anteriormente con respecto a wget, son como pequeños navegadores (browsers).

Con mucho gusto te dejo algunos enlaces para que te documentes al respecto:

http://es.wikipedia.org/wiki/Wget (español)
http://es.wikipedia.org/wiki/Lynx (español)
http://en.wikipedia.org/wiki/CURL (inglés)
http://rpmfind.net/linux/RPM/sourcef....0-1.i386.html (inglés)



Cita:

Iniciado por tripa
Por otro lado, que es lo que hace el "-nv -O /dev/null" que das como ejemplo al usar WGET?

También, con mucho gusto, te proporciono un enlace para que te documentes al respecto:

http://www.die.net/doc/linux/man/man1/wget.1.html

En realidad, para todo esto, deberías acudir al administrador de tu servidor... y esto es especialmente válido para todos aquellos que creen que cPanel es el dios-todopoderoso y que no se necesita una sólida experiencia previa como sys admin... (esta opinión viene de alguien que NO es sys admin)

Saludos. :arriba:

nicolaspar 01/08/2005 06:58

Solucionado....Muchas gracias a todos!!!

Solucion:
http://www.forosdelweb.com/showthrea...=320449&page=1

Apolo 01/08/2005 08:18

¡Felicitaciones!

Me alegra mucho saberlo. :arriba:

Saludos,

JuanD08 18/02/2008 04:41

Re: Sobre cron jobs en CPanel
 
Gracias! ahora yo no entiendo mucho :S. donde dice "Comando para correr" pongo
php -f public_html/nombrearchivo.php

o

php -f public_html/ruta/del/archivo/nombrearchivo.php

Ahora si yo quiero recibir una notificacion (email) cada vez q ejecuta ese archivo, como hago?

Desde ya gracias!. Saludos

raul_romero 16/07/2008 15:18

Respuesta: Re: Sobre cron jobs en CPanel
 
Cita:

Iniciado por JuanD08 (Mensaje 2289172)
Gracias! ahora yo no entiendo mucho :S. donde dice "Comando para correr" pongo
php -f public_html/nombrearchivo.php

o

php -f public_html/ruta/del/archivo/nombrearchivo.php

Ahora si yo quiero recibir una notificacion (email) cada vez q ejecuta ese archivo, como hago?

Desde ya gracias!. Saludos



Hola amigo, estuve investigando por aqui y por alla, finalmente halle las solucion a mis problemas que es parecido al tuyo...

Te puedo ayudar con lo siguiente:

Pimero En comando para correr yo coloque lo siguiente y me ha resultado:

Si tu pagina PHP esta en la raiz (public_html), colocas:
/usr/local/bin/php -q -f /home/user/public_html/pagina.php

Si tu pagina PHP esta en una carpeta tienes que colocar toda la ruta:
/usr/local/bin/php -q -f /home/user/public_html/ruta_del_archivo/pagina.php

En cualquiera de los caso cambias user, por el usuario correspondiente.

Ahora lo del email, en la mayoria de los cpanel's lo puedes colocar en donde dice:

Please enter an email address where the cron output will be sent

Supongo que el texto va a variar de acuerdo al hosting donde este alojado tu pagina web.

Espero te sirva...


Saludos...

stravaganzza 04/02/2009 14:06

Respuesta: Re: Sobre cron jobs en CPanel
 
Cita:

Iniciado por raul_romero (Mensaje 2494318)
Hola amigo, estuve investigando por aqui y por alla, finalmente halle las solucion a mis problemas que es parecido al tuyo...

Te puedo ayudar con lo siguiente:

Pimero En comando para correr yo coloque lo siguiente y me ha resultado:

Si tu pagina PHP esta en la raiz (public_html), colocas:
/usr/local/bin/php -q -f /home/user/public_html/pagina.php

Si tu pagina PHP esta en una carpeta tienes que colocar toda la ruta:
/usr/local/bin/php -q -f /home/user/public_html/ruta_del_archivo/pagina.php

En cualquiera de los caso cambias user, por el usuario correspondiente.

Ahora lo del email, en la mayoria de los cpanel's lo puedes colocar en donde dice:

Please enter an email address where the cron output will be sent

Supongo que el texto va a variar de acuerdo al hosting donde este alojado tu pagina web.

Espero te sirva...


Saludos...


Super miles de gracias, despues de tanto buscar.... Me has dado la solucion a mi problema =) :aplauso::corazon:


La zona horaria es GMT -6. Ahora son las 03:30.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.