Linux
從 PHP 獲取使用 mail() 發送的郵件日誌(sendmail?)
在某些伺服器更改後,我們的 PHP 配置遭到破壞,這導致客戶端的大型郵件列表部分超時,大約有 4,000 個或更多地址。我們希望盡可能避免發送重複郵件,並且我們擁有原始郵件列表。
郵件是使用 PHP 的
mail()
函式發送的,該函式使用sendmail
,表示它正在使用Exim
. 我看過命令:sendmail -bp
這給了我一個顯示已發送的郵件列表。這個列表不是很大,並且可能是準確的(這意味著腳本在只發送了大約一百封電子郵件後就超時了)
sendmail -bp
獲得此列表的最佳方式是什麼?**編輯:**我在或 via中找不到任何
mail.log
文件,但 WHM 似乎對此有一些資訊。/var/log/mail.log``locate mail.log
在基於 Debian 的系統上,exim 將數據記錄在
/var/log/exim4/mainlog
.您可能會發現eximstats工具可用於從該日誌文件中解析和剔除有用資訊。
sendmail -bp
(andmailq
) 僅列出郵件隊列:已排隊但尚未發送的郵件。它不包括那些已成功傳遞的消息。您應該檢查
/var/log/mail.log
(和其他日誌文件)——它們幾乎總是有每次傳輸的記錄。