在基于PHP的SMTP客户端中设置DomainKeys/DKIM [英] Setting up DomainKeys/DKIM in a PHP-based SMTP client

查看:193
本文介绍了在基于PHP的SMTP客户端中设置DomainKeys/DKIM的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

似乎有一些很棒的库可以在C#/.NET上对电子邮件进行DomainKeys签名,但是我很难找到对PHP的相同支持.也许我找的地方不对?

It looks like there are some great libraries out there to do DomainKeys signing of emails on C#/.NET, but I'm having a really hard time finding the same kind of support for PHP. Maybe I'm not looking in the right place?

我发现的唯一一个是 http://php-dkim.sourceforge.net/;它看起来难以置信,而且仅支持PHP4.考虑到PHP的流行程度以及DomainKeys对于将电子邮件分类为非垃圾邮件的重要性,我希望有更好的工具.你知道吗您还建议其他技巧吗?

The only one I found is http://php-dkim.sourceforge.net/; it looks incredibly hacky and supports PHP4 only. Considering how popular PHP is, and how critical DomainKeys are for email classification as non-spam, I'd expect better tools; do you know of any? Any other tricks you'd recommend?

其他信息:我正在使用外部SMTP提供程序,因为我每天需要发送数千封电子邮件.

Extra info: I'm using an external SMTP provider because I need to send out thousands of emails per day.

推荐答案

我建议在MTA级别上提供DKIM支持,以便默认情况下对给定域的所有服务器生成的电子邮件进行签名. (除非您有充分的理由不对域中所有服务器生成的电子邮件进行签名).

I'd recommend DKIM support at the MTA level so all your server generated email for a given domain is signed by default. (unless you have a really good reason to not sign all server generated email for a domain).

我使用dkim-milter和sendmail(在我的情况下为CentOS 5.2)在LAMP上获得DKIM设置的最佳起点是

The best starting point in my googling to get DKIM setup on LAMP with dkim-milter and sendmail (on CentOS 5.2 in my case) was Jeff Atwood's post about sending emails through code.

我同意他的观点,您应该解决的前两件事是反向PTR记录和DKIM签名.

I would agree with him that the first 2 things you should address are reverse PTR record and DKIM signing.

也很重要:

  1. 发送电子邮件的邮箱的IP地址尚未被列入黑名单.
  2. 确保postmaster@emailsendingdomain.com是有效的邮箱
  3. 如果您的服务器生成的电子邮件需要显示为来自其他地方(例如,联系表单需要来自表单中提供的名称/电子邮件),则这是我使用的通过电子邮件发送IP地址黑名单检查器.

    这5件事可以解决您95%的电子邮件传递性问题.

    Those 5 things will solve perhaps 95% of your email deliverability issues.

    Fedora指南/dkim-milter/postfix 也很好.

    我用于我的应用程序的PHP邮件库是具有DKIM支持(仅PHP 5)的PHPMailer 5.1,但是在进行研究之后,我决定在sendmail级别实现是更好的解决方案.如您所见,即使PHPMailer 5.1的作者也不建议在PHP邮件库级别使用DKIM是最好的解决方案 http://dkim.worxware.com/.

    The PHP mail library I use for my app is PHPMailer 5.1 which has DKIM support (and is PHP 5 only), but after doing the research, I decided implementing at the sendmail level was a better solution. As you can see, even the author of PHPMailer 5.1 does not suggest DKIM at the PHP mail library level is the best solution http://dkim.worxware.com/.

    祝你好运.

    这篇关于在基于PHP的SMTP客户端中设置DomainKeys/DKIM的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆