Foros del Web » Administración de Sistemas » Software para Servers »

cronjob en DirectAdmin

Estas en el tema de cronjob en DirectAdmin en el foro de Software para Servers en Foros del Web. Hola Buenas tardes. Tengo un problema con mi servidor, y es que tengo un boletín que dejo enviando por la noche con phpList, y el ...
  #1 (permalink)  
Antiguo 05/12/2011, 13:08
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
cronjob en DirectAdmin

Hola Buenas tardes. Tengo un problema con mi servidor, y es que tengo un boletín que dejo enviando por la noche con phpList, y el tema se para a las 00:00 horas. No se por qué motivo se para, pero me dicen que ponga un cronjob en el panel de mi hosting, que es DirectAdmin, para que el proceso comience de nuevo a las 00:15 horas. Lo estoy probando, y no se cómo hacerlo, pues ponga lo que ponga no funciona. Esto me esta desesperando un poco. Os cuento lo que hago, a ver si me podeis echar un cable, por favor:


Al principio en la zona de command escribía esto, que funciona si lo pegas en un navegador:

Código:
http://www.midominio.com/phplist/admin/index.php?page=processqueue&login=admin&password=123456
Tambien estas variaciones:

Código:
/home/midominio/domains/midominio.com/public_html/phplist/admin/index.php?page=processqueue&login=admin&password=123456
Código:
/home/midominio/public_html/phplist/admin/index.php?page=processqueue&login=admin&password=123456
He probado con coma simple al principio y al final (esta coma ' )

y claro, poniendo hora minuto, dia de la semana, dia del mes, todas las variaciones posibles.....

por favor, echadme un cablecillo....
  #2 (permalink)  
Antiguo 07/12/2011, 05:32
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

Muy extraño que el proceso se detenga así nada más. Yo diría que lo primero es averiguar por qué está ocurriendo eso.

Muy extraño también que tu proveedor de hosting no te ayude con ese tema ni con el de la configuración de tu tarea cron. ¿En dónde tienes contratado el servicio?

Si estás poniendo sólo eso que citas, entonces por supuesto no te va a funcionar. Es decir, debes poner el respectivo comando. Si vas a utilizar el URL, entonces debes llamarlo, por ejemplo, con un "wget".

Ejemplo:
wget -O http://www.midominio.com/phplist/admin/index.php?page=processqueue&login=admin&password=1 23456

Si vas a utilizar la ruta absoluta, entonces debes llamar a "php" para que procese ese fichero.

Ejemplo:
php -q /home/midominio/domains/midominio.com/public_html/phplist/admin/index.php?page=processqueue&login=admin&password=1 23456

Pero esos son sólo ejemplos. Tu proveedor de hosting debería decirte qué es lo más adecuado en tu caso y de acuerdo con la configuración específica del servidor en el que está tu cuenta de hosting. También ellos te deben decir si la ruta absoluta es la correcta, porque veo que estás ensayando dos rutas distintas (tus ejemplos 2 y 3).

Por último, no sé si esto te servirá. No estoy seguro de que phpList vaya a procesar ese comando de manera correcta y que el envío continúe desde el último mensaje enviado.
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #3 (permalink)  
Antiguo 07/12/2011, 06:43
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
Respuesta: cronjob en DirectAdmin

Mil gracias por la respuesta. Tambien probé con:

php /home/midominio/domains/midominio.com/public_html/phplist/admin/index.php?page=processqueue&login=admin&password=1 23456

pero es diferente del que tu me dices, que es php -q / y todo lo demas. Esto de php -q es así, o ¿puede haber variaciones?

Acerca del hosting, he puesto la duda en el foro de directadmin, pero no me contesta nadie. El hosting lo lleva una empresa de informaticos que no saben muy bien como configurar esto.

Acerca de por qué se para, me dice el informatico que es un proceso interno del servidor que no depende de el, sino de la empresa donde esta alojado, que no sabe que es, pero no puede hacer nada. Hemos probado a cambiar las copias de seguridad de horario del servidor completo (no solo de mi hosting) por si era eso, que estaban a las 00:00 horas puestas, pero se paraba igual.

Y sobre el phplist, cuando pongo mi ejemplo 1 en un navegador web funciona, por lo que phplist procesa bien el comando. De momento, creo que es lo unico que tengo claro.

Probare con el php -q que me dices. Gracias de nuevo.
  #4 (permalink)  
Antiguo 07/12/2011, 07:02
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

Cita:
Iniciado por rakeljuice Ver Mensaje
Esto de php -q es así, o ¿puede haber variaciones?
Muchas. Tienes el listado completo de opciones en la documentación de PHP:

http://www.php.net/manual/es/feature...ne.options.php


Cita:
Iniciado por rakeljuice Ver Mensaje
El hosting lo lleva una empresa de informaticos que no saben muy bien como configurar esto.
Cambia de proveedor entonces, donde sí tengas soporte. ¿Te imaginas cuando tengas un problema gordo de verdad?


Cita:
Iniciado por rakeljuice Ver Mensaje
Acerca de por qué se para, me dice el informatico que es un proceso interno del servidor que no depende de el, sino de la empresa donde esta alojado, que no sabe que es, pero no puede hacer nada.
Por lo que comentas, puede ser que el admin del servidor tiene configurado algún script para terminar todo proceso que lleve ejecutándose X tiempo. Esto lo hacen sobre todo los proveedores baratos, para poder meter más cuentas en cada servidor.


Cita:
Iniciado por rakeljuice Ver Mensaje
Y sobre el phplist, cuando pongo mi ejemplo 1 en un navegador web funciona
Entonces prueba con la primera opción que te di: wget -O
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #5 (permalink)  
Antiguo 07/12/2011, 09:41
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
Respuesta: cronjob en DirectAdmin

Cita:
Iniciado por Apolo Ver Mensaje
Cambia de proveedor entonces, donde sí tengas soporte. ¿Te imagnas cuando tengas un problema gordo de verdad?
Gracias por el consejo. Estoy aqui porque anteriormente a proveedores tipo hostalia, y ninguno me deja instalar un phplist para enviar boletines, y a mano no los voy a enviar uno a uno. Estos informaticos tienen un servidor dedicado, contratado a una empresa, para alojar webs sencillas de sus clientes a los que hacen alguna web, pero nada complicado, y yo estoy en él como un cliente más. Si me puedes recomendar un proveedor donde poder instalar phplist o un programa similar y que den facilidades para usarlo y buen soporte, soy todo oidos.


Cita:
Iniciado por Apolo Ver Mensaje

Entonces prueba con la primera opción que te di: wget -O
Gracias. Lo he probado y nada. Es muy desesperante porque no tengo ni pajolera idea de por donde tirar...
  #6 (permalink)  
Antiguo 07/12/2011, 12:32
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

Bien, en lugar de poner sólo php -q o wget -O, prueba con la ruta completa, por ejemplo:

/usr/local/bin/php -q

Y para el caso de wget, no sé cómo será en DirectAdmin. Tendrías que pedirle al admin del servidor que ejecute este comando:

which wget

En servidores con cPanel suele ir así:

/usr/bin/wget -O

Pero también es posible que ese comando no esté disponible para tu usuario/cuenta de hosting en ese servidor. Nada pierdes con probar, de todas maneras.
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #7 (permalink)  
Antiguo 07/12/2011, 15:24
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
Respuesta: cronjob en DirectAdmin

Nada de nada. He encontrado en los foros de directadmin cómo invocar el which get y me queda:

Código:
wget "http://www.midominio.com/phplist/admin/index.php?page=processqueue&login=admin&password=123456"
y tambien he probado como dices

Código:
 /usr/local/bin/wget -O http://www.midominio.com/phplist/admin/index.php?page=processqueue&login=admin&password=123456

pero tampoco me funciona. He probado con multiples combinaciones, con la ruta absoluta completa, no completa, con index.php, sin index.php.... sin aburrir, pero ya no se por donde tirar....

Gracias por tu interés y ayuda, Apolo.
Si se te ocurre algo más, dimelo, por favor.

Última edición por rakeljuice; 07/12/2011 a las 15:47
  #8 (permalink)  
Antiguo 07/12/2011, 15:48
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

No está de más repasar lo básico:

¿Cómo estás comprobando que no funciona? ¿Desde la consola de comandos vía SSH?

Y supongo que has modificado la hora de ejecución de la tarea cron, porque como tengas:

15 0 * * *

Entonces tendrás que esperar todo un día, a que sean las 00:15 para poder comprobar si funciona o no.
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #9 (permalink)  
Antiguo 07/12/2011, 16:24
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

Por otra parte, en los foros de phpList alguien comenta una opción que le funcionó:

Cron Job with PHP cgi - batch mode - using wget issues

Y no sé si ya leíste la documentación de phpList, que tiene varios detalles a tener en cuenta:

phplist Documentation : SetupCronJob

Y también:

Tutorial - crontab queue processing with php-cgi

how to make phpList work with Cron Jobs

phpList : Cron job examples
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #10 (permalink)  
Antiguo 09/12/2011, 11:54
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
Respuesta: cronjob en DirectAdmin

Hola, Apolo. Gracias por tus respuestas.

Compruebo que no funciona por dos medios:
- tengo mails no válidos que me vienen devueltos.
- Y porque entro en phplist y va diciendo los mensajes enviados, y si el numero de enviados deja de aumentar, pues es que se ha parado.

Así de rudimentario.

No tengo ni idea de qué es la consola SSH, no soy programador. He entrado en el panel de DirectAdmin y no hay consola SSH..... esto esta disponible para los hostings? o solo para el administrador del servidor? Pero si ahí puedo ver por qué se para el sistema a las 00:00 investigaré a ver si me entero.

Ayer conseguí enviarle la orden al programada mediante curl "aqui toda la url" segun me recomendó un amigo al que pregunté, como alternativa al wget, y el comando funciona cuando yo paro manualmente el proceso y mediante este curl lo vuelvo a iniciar. Ahora lo he dejado configurado para ver si esta noche a las 00:20 funciona igual de bien, tras la parada del servidor.

Gracias por preocuparte por si he configurado bien la hora, sí, lo he hecho.

Gracias también por pasarme links sobre el tema. Como no soy programador (lo más que hago es html5 y algo de actionscript en flash), de php no tengo ni idea, y en los foros viene todo en ingles, la verdad es que me he leido bastantes cosas allí, pero que me hayan servido.... poco. Deje una pregunta también en el foro hace tiempo, pero nadie respondió.

Siempre aprendiendo...

Mil gracias de nuevo.

Última edición por rakeljuice; 09/12/2011 a las 11:59
  #11 (permalink)  
Antiguo 09/12/2011, 17:13
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

Bien, supongo que sí te funcionará. De hecho, la opción de curl era una de las mencionadas en uno de los enlaces que te mencioné, el de "Cron job examples".

Suerte!
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #12 (permalink)  
Antiguo 09/12/2011, 17:50
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
Respuesta: cronjob en DirectAdmin

Pues sí. Acabo de hacer la prueba y ha funcionado, pero.... con una curiosa variante que se me ha ocurrido, pues el procesado de cola de mensajes directo no va, no se porqué. Lo que ha funcionado: configuro a las 0:30 que suspenda el envio, a las 0:32 que lo vuelva a iniciar, y a las 0:34 que procese la cola de mensajes. Todo con curl. Y funciona!!

Perdona la molestia, Apolo, pero me puedes orientar sobre la SSH? Sobre donde empezar a mirar? He buscado en la red y me parece todo chino, para entendidos, como los links que me pasabas. Aunque ahora, después de esta experiencia de dias, creo que puedo entender mejor lo que leo.

Muchas gracias.
  #13 (permalink)  
Antiguo 09/12/2011, 18:04
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Respuesta: cronjob en DirectAdmin

Cita:
Iniciado por rakeljuice Ver Mensaje
Apolo, pero me puedes orientar sobre la SSH?
Pregunta a tu proveedor si tienes acceso por SSH.

Pero si quieres comprobarlo por tu cuenta, bájate un software como Putty:

http://the.earth.li/~sgtatham/putty/.../x86/putty.exe

Lo abres, pones el nombre de tu dominio y haces clic en "Open".

Cuando la ventana de fondo negro te pida el nombre de usuario y luego la clave, utiliza los mismos datos con los que accedes vía FTP. Y si te deja entrar, entonces es porque tienes acceso. Y desde allí podrás probar cosas y ejecutar comandos Linux.
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #14 (permalink)  
Antiguo 10/12/2011, 08:01
 
Fecha de Ingreso: marzo-2005
Mensajes: 370
Antigüedad: 19 años, 1 mes
Puntos: 1
Respuesta: cronjob en DirectAdmin

gracias !!

Etiquetas: cronjob, directadmin, dominio, ip, php, servidor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:46.