我正在为我的公司创建一个时事通讯 - 接收者很可能是使用公司电子邮件地址的其他公司员工。
问题是,当我使用mail()
发送邮件时,大多数邮件通常被防火墙标记为垃圾邮件,因为它是由网络服务器发送的。
如何优化我的功能,拒绝邮件的数量会以某种方式减少。我确信我无法达到100%,但至少大多数接收者应该收到他们的邮件。
目前,这是该功能的外观:
mail($email, $subject, $message, '-f info@mycompany.com\r\nfrom: noreply@mycompany.com\r\nreply-to: info@mycompany.com');
答案 0 :(得分:2)
我见过的关于该主题的最佳读物是:
http://www.codinghorror.com/blog/2010/04/so-youd-like-to-send-some-email-through-code.html
希望它也能帮到你
答案 1 :(得分:1)
您可能有更好的运气,试图找出导致您的电子邮件被捕获为垃圾邮件的原因,而不是随意改变标题/内容。如果您已经(或可以)访问垃圾邮件过滤器的日志,请查看导致您的邮件被固定的确切内容。
可以是您发送的主机,主题行,黑名单,格式错误的标题以及其他一些原因。
答案 2 :(得分:1)
邮件($ email,$ subject,$ message,' - f info@mycompany.com \ r \ nfrom:noreply @ mycompany.com \ r \ n \ n \ n \ n \ n \ n \ n:\ n \ n:info@mycompany.com');
当然应该阅读:
mail($email, $subject, $message,
'From: noreply@mycompany.com\r\nReply-To: info@mycompany.com',
'-f info@mycompany.com');
如果没有,那么您的垃圾邮件过滤器就不会喜欢它了。
反向工程/绕过垃圾邮件过滤器并不容易 - 但你可能要先仔细研究spamassassin如何决定什么是垃圾邮件,什么不是垃圾邮件。当然,有一个不实施贝叶斯过滤的垃圾邮件过滤器是不寻常的 - 请查看有关如何正确训练它的手册。