【问题标题】:Optimizing mail() for company firewalls为公司防火墙优化 mail()
【发布时间】:2011-04-06 20:17:38
【问题描述】:

我在那儿。

我正在为我的公司创建一份时事通讯 - 收件人很可能是使用公司电子邮件地址的其他公司员工。

问题是,当我使用mail() 发送邮件时,它通常会被防火墙捕获,将其标记为垃圾邮件,因为它是由网络服务器发送的。

我怎样才能优化我的功能,所以被拒绝的邮件数量会有所减少。我确定我无法达到 100%,但至少大多数收件人应该会收到他们的邮件。

目前,函数的外观如下:

mail($email, $subject, $message, '-f info@mycompany.com\r\nfrom: noreply@mycompany.com\r\nreply-to: info@mycompany.com');

【问题讨论】:

  • 您是为每位员工发送一封邮件,还是一次抄送/密送所有人?
  • 每位员工一封邮件。但就目前而言,我是唯一一个,甚至我自己的公司也会过滤掉邮件(即使它们来自他们自己的服务器......)

标签: php email spam-prevention email-validation email-headers


【解决方案1】:

我所见过的关于该主题的最佳读物是:

http://www.codinghorror.com/blog/2010/04/so-youd-like-to-send-some-email-through-code.html

希望对你也有帮助

【讨论】:

    【解决方案2】:

    您可能会更幸运地尝试找出导致您的电子邮件被困为垃圾邮件的原因,而不是坐视随机更改的标题/内容。如果您有权(或可以)访问垃圾邮件过滤器的日志,请查看导致您的邮件被屏蔽的确切原因。

    可能是来自您发送邮件的主机、主题行、列入黑名单的字词、格式错误的标头以及其他一些千奇百怪的原因。

    【讨论】:

      【解决方案3】:

      mail($email, $subject, $message, '-f info@mycompany.com\r\nfrom: noreply@mycompany.com\r\nreply-to: info@mycompany.com');

      当然应该这样写:

      mail($email, $subject, $message, 
       'From: noreply@mycompany.com\r\nReply-To: info@mycompany.com',
       '-f info@mycompany.com');
      

      如果不是,难怪您的垃圾邮件过滤器不喜欢它。

      逆向工程/绕过垃圾邮件过滤器并不容易 - 但您可以先仔细研究一下 spamassassin 如何确定哪些是垃圾邮件,哪些不是。当然,垃圾邮件过滤器没有实现贝叶斯过滤是不寻常的 - 请查看手册以了解如何正确训练它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-12-26
        • 1970-01-01
        • 1970-01-01
        • 2011-08-09
        • 1970-01-01
        • 2013-09-22
        • 2017-02-27
        • 1970-01-01
        相关资源
        最近更新 更多