Después de algunos cambios en el servidor, nuestra configuración de PHP se destruyó, lo que provocó que la gran lista de correo de un cliente se agotara parcialmente a través de aproximadamente 4,000 direcciones o más. Queremos evitar el envío de un correo duplicado tanto como sea posible, y tenemos la lista de correo original.
El correo se envió usando la mail()
función de PHP , que usa sendmail
, que dice que está usando Exim
. He visto el comando:
sendmail -bp
Lo que me da una lista de correo que aparece fue enviado. Esta lista no es muy grande y podría ser precisa (lo que significa que el script agotó el tiempo de espera después de enviar solo un centenar de correos electrónicos)
¿ sendmail -bp
Cuál es la mejor manera de obtener este listado?
EDITAR: No puedo encontrar ningún mail.log
archivo en /var/log/mail.log
o vía locate mail.log
, pero WHM parece tener alguna información al respecto.
Respuestas:
En sistemas basados en Debian, Exim registra datos
/var/log/exim4/mainlog
.Puede encontrar la herramienta eximstats útil para analizar y eliminar información útil de ese archivo de registro.
fuente
sendmail -bp
(ymailq
) solo enumera la cola de correo: mensajes en cola pero aún no enviados. No incluirá los mensajes que se entregaron correctamente.Debe verificar
/var/log/mail.log
(y otros archivos de registro): casi siempre tienen registros de cada transferencia.fuente
php 5.3.0 agregó 2 configuraciones que facilitan el rastreo de scripts falsos:
http://php.net/manual/en/mail.configuration.php
fuente