我遇到了一个用于发送垃圾邮件的未知PHP脚本的问题。该网站使用PHPMailer,后者又使用sendmail。
如何使用PHPMailer(及其内容)记录哪些PHP脚本正在发送电子邮件?
在php.ini中使用mail.log = /var/log/phpmail.log
会很容易,但如果网站使用PHPMailer则不行吗?
答案 0 :(得分:2)
您可以在PHPMailer的debug_backtrace()
方法中使用函数send()
:
http://php.net/manual/de/function.debug-backtrace.php
在这里,您可以进行所需的记录(我建议记录到文件)
注意:编辑库文件不是一个好习惯。也许你想从PHPMailer扩展一个类,在这里添加你的附加逻辑,并使用它。
class MyPhpMailer extends PHPMailer {
public function send() {
$callinfo = print_r(debug_backtrace(), true);
//Logging $callinfo...
parent::send();
}
}