Cron trabajo correo cambiar dirección del remitente


1

Tengo la configuración de trabajos cron en mi sitio web y funcionan bastante bien, pero mi problema es que la salida enviada por correo electrónico por estos trabajos cron se entrega con 'from name' como Cron Daemon. Por favor, ¿hay alguna manera de que pueda cambiar eso a algo más personal? Gracias

Del comentario del OP:

La línea de comando que ejecuta mi archivo es:

php -q /home/username/public_html/x_y_z.php. 

La salida del archivo (x_y_z_.php) se envía como correo electrónico por el trabajo cron.

linux  email 

¿Cómo los envías?
Rob

La línea de comando que ejecuta mi archivo es: php -q /home/username/public_html/x_y_z.php. La salida del archivo (x_y_z_.php) luego se envía como correo electrónico por el trabajo cron.

Sí, ¿cómo envías el correo electrónico? ¿Usas sendmail? ¿Qué comando ejecuta cron?
terdon

Respuestas:


0

El "nombre real" del usuario cron no puede cambiarse a menos que tenga acceso de root y sepa qué MTA se utiliza para enviar estos correos (sendmail, exim, postfix?), Y cada MTA tiene su propia forma de asignar nombres reales a unix usuarios (es muy probable que cron se ejecute como usuario "cron").

Su mejor opción es enviar los correos desde su script PHP en lugar de confiar en cron para hacerlo.

Una forma rápida de hacerlo con pequeños cambios en su código:

<?php

ob_start();

/* >>> your existing php code goes there */

$output = ob_get_contents();
ob_end_clean();

/* the text to be mailed is now in variable $output */

mail("reciptient@host.com", "Mail from cron job" , $output, "From: Webmaster <webmaster@example.com>\r\nReply-To: webmaster@example.com");

?>

Si la función de correo de alguna manera no funciona en su instalación de PHP, tendrá que usar bibliotecas de terceros, como PEAR :: Mail.


0

Parece que hay mucha información mala sobre esto, pero hay dos opciones que pueden funcionar sin scripts de envoltura.

Primero, en algunos sistemas puede configurar MAILFROMcomo lo hace MAILTO. man 5 crontable dirá si MAILFROMestá disponible.

De lo contrario, la otra opción es cambiar el mailnamearchivo .

sudo vi /etc/mailname

Cambialo.


0

Tuve que cambiar /etc/mail/sendmail.cfy /etc/mail/sendmail.mc, porque /etc/mailnameno se usó. Sin embargo, solo cambia el dominio del dominio, no el usuario.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.