![]() |
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 |
Cita:
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, |
Por si te sirve de ayuda, te copio lo que se muestra como ayuda en nuestros paneles de control, para PHP y CGI: Cita:
|
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. |
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: |
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: |
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:( |
Cita:
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: ? |
Cita:
http://learn.clemsonlinux.org/wiki/At |
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! |
Cita:
Por otro lado, que es lo que hace el "-nv -O /dev/null" que das como ejemplo al usar WGET? Muchas gracias |
Cita:
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:
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: |
Solucionado....Muchas gracias a todos!!! Solucion: http://www.forosdelweb.com/showthrea...=320449&page=1 |
¡Felicitaciones! Me alegra mucho saberlo. :arriba: Saludos, |
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 |
Respuesta: Re: Sobre cron jobs en CPanel Cita:
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... |
Respuesta: Re: Sobre cron jobs en CPanel Cita:
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.