Mutt a través de PHP, no se pudo enviar el mensaje

Mutt a través de PHP, no se pudo enviar el mensaje

Estoy ejecutando un pequeño servidor LAMP en ubuntu. En algún momento, necesito un script php para enviar un correo electrónico usando Mutt. Utilizo una llamada al sistema desde el script php como este

mutt -s $file1 -a threedplot.jpeg -a velocityvstime.jpeg -a elossperstep.jpeg -a input.txt -a output.txt -- $email < /var/www/html/emailmessage.txt

Donde todas las variables y archivos están definidos adecuadamente (Esta línea está en runner.sh). Cuando ejecuto el comando desde la línea de comando como usuario de ubuntu, no hay problema y se envía el correo electrónico. Pero cuando php intenta ejecutarlo con una llamada al sistema,

$last_line = system("./runner.sh Queued/", $retval);

solo dice "No se pudo enviar el mensaje". Sospecho que esto se debe a que PHP se ejecuta en el usuario www-data, que puede no tener los permisos adecuados. ¿Hay alguna manera de agregar el usuario www-data para que tenga acceso completo a Mutt? Gracias

Respuesta1

tu problema es que cuando mutt intenta enviar el mensaje, también intenta guardarlo en una carpeta de enviados. Como se ejecuta como usuario web/usuario www/usuario de Apache o similar, esto falla. La solución es utilizar un archivo de configuración de perro callejero local (especificado con -F en su línea de perro callejero) y asegurarse de que set copy=noesté en ese archivo de configuración.

gracias a kenene enarchivo de formulario de ubuntu para esto.

información relacionada