我目前已设置一个 Web 应用程序来通过 WebFaction 发送电子邮件,但我遇到了以下间歇性连接失败:
Errno::ECONNREFUSED: Connection refused - connect(2)
我想暂时转到同一台服务器上发送邮件 - 在运行应用程序的情况下切换电子邮件提供商有哪些潜在陷阱,您应该采取哪些措施来确保电子邮件能够发送到提供商?
我知道需要做一些事情,例如设置备份 mx 记录、设置 spf 记录等等,但我不确定每个步骤有多重要。
我使用 Ubuntu 8.10 作为我的服务器操作系统,我正在使用沃克林将电子邮件请求分离为单独的流程。
C
答案1
一个可能的解决方案是从使用 webfaction 切换到使用 Google Mail SMTP 服务器来发送邮件。
由于 Google 服务器可靠且免费,因此您不会遇到任何问题。
以下是具体操作:
- 在域上安装 Google Apps。
- 设置 SPF 记录等(阅读文档)。
- 现在您可以通过 Google SMTP 邮件服务器自由发送邮件。
- 该邮件将显示为来自您的域(它将具有正确的 @mydomain.com)。当然,您可以尝试使用 Google 邮件服务器而不在您的域上安装 Google Apps,但 Google 会将“发件人”电子邮件地址更改为您的 gmail 地址。
一段时间以来,这个解决方案对我来说效果很好。另外,你还可以使用 gmail 从你的域名发送公司消息,而不必在电子邮件地址末尾附加 @gmail.com,这看起来不太专业。
答案2
答案3
您不需要设置备份 MX 记录,这仅适用于传入邮件。正如 Sam 所说,SPF 记录至关重要,验证您的 ISP 和防火墙不会阻止流量也很重要。您还需要确保您的 ISP 具有良好的反向 DNS 条目(又称 PTR),用于电子邮件似乎来自的 IP 地址(“似乎来自”和“服务器的 IP 地址”之间的关键区别,取决于您的防火墙!),该条目解析为主机名,如“mail.your-domain.com”。如果没有这个,许多域名都会拒绝您的电子邮件,因为大多数 ISP 为您提供默认的 PTR 记录(如 client-001-005.isp.com),就 DNS 而言,它看起来像一个被僵尸网络控制的客户。最后,在进行切换之前,请验证您的 IP 地址不在任何垃圾邮件黑名单上!过去,我曾不愉快地发现,在我之前拥有我的静态 IP 地址的个人/公司已经被列入了许多黑名单,因此当我通过新帐户获得 IP 时,我无法发送邮件!
杰杰
答案4
如果您希望邮件在后台发出,请使用在后台使用 Sendmail 的程序。
Sendmail 是大多数 Linux 发行版的一部分。它是一个发送邮件的二进制文件。它的优点是控制权立即返回到网页,并且 Sendmail 会将所有内容排队以在自己的时间内发送。
不久前我写了一个购物车,购物完成后会发送电子邮件。我使用了 phpmailer,然后又使用了 Sendmail。自从我改用 Sendmail 而不是 SMTP 服务器以来,一切都运行良好。