突然之间(上周这工作正常),当我尝试使用
Nodemailer发送电子邮件时,我开始收到
Error sending mail: Error: connect EADDRNOTAVAIL
。
这个错误真的很模糊,我不太清楚
EADDRNOTAVAIL
是什么意思。如果有人可以阐明这个错误,那就太好了!
我已经被这个问题困扰了半天了。解决办法在这里!
Nodemailer 刚刚进行了一次重大更新,指定传输器的格式已更改。所以而不是
var smtpTransport=nodemailer.createTransport("SMTP",{host:'some host',port:25});
现在只是
var smtpTransport=nodemailer.createTransport({host:'some host',port:25});
此链接(http://www.toptip.ca/2010/02/linux-eaddrnotavail-address-not.html)似乎可能有帮助。基本上它表示您的邮件程序负载不足,它打开传出连接,耗尽可用的本地端口,并建议增加的方法。 HTH.
当有大量连接并且 net.core.somaxconn 缓冲区耗尽时,可能会出现错误。
如果服务器上有足够的资源,只需增加它: sysctl net.core.somaxconn=8000