3

我有用于接收电子邮件的谷歌应用程序。我在 info@[my-domain.com] 上收到人们的询问,该电子邮件托管在 google 上。

有时,我希望我的 Rails 设置可以从我自己的服务器发送电子邮件,这很好用。但是当我想发送到我自己域上的电子邮件地址时,例如 info@my-domain.com,postfix 会看到 my-domain.com 并尝试在本地发送。

我知道这很正常,但我希望将这些电子邮件发送到谷歌应用程序,而不是尝试在本地发送。

我知道有一个用于别名的 postfix 配置文件,但是在这里,电子邮件地址是相同的,只需要告诉 postfix 不要尝试在本地发送。

有什么办法可以做到这一点?

4

3 回答 3

3

听起来您设置了两个邮件服务器作为向您的域发送电子邮件的主要目的地:Google Apps 和您的 postfix 服务器。您不能这样做,因为正如您所发现的,邮件有时会发送到一台服务器,有时会发送到另一台服务器。

大概您希望 Google Apps 成为主要目的地。也就是说,您域的邮件应该发送到 Google 服务器,而不是您的服务器。您需要重新配置 postfix,使其不是您域的邮件服务器。

编辑/etc/postfix/main.cf文件并查找mydestination行。从该行中删除您的域。

我通常不使用后缀,但我认为如果该行看起来像这样,你会很好:

mydestination = $myhostname localhost.$mydomain localhost

假设您的服务器名称是“test1”,您的域是“example.com”。以下地址将在本地交付:

info@test1
info@localhost.example.com
info@localhost

但是发送到 info@example.com 的邮件会转到 Google Apps,因为 postfix 未配置为仅接受“example.com”的邮件。

于 2009-04-27T17:41:58.020 回答
0

我通过这样做http://souptonuts.sourceforge.net/postfix_tutorial.html来解决它。基本上通过您的一个谷歌域帐户而不是本地发送该邮件。

于 2009-04-27T17:18:48.497 回答
0

正如 Barry Brown 建议的那样,通过从 postfix 框上的 $mydestination 中删除它来告诉 postfix my-domain.com 不是本地的,或者如果这不切实际,则在 Postfix 中使用虚拟别名来重写该特定地址(info@my- domain.com) 到您要将其交付到的 google 托管地址。

Postfix 中的虚拟别名不仅仅适用于虚拟别名地址类;它们是一种通用的队列前地址重写机制。Sendmail 样式的别名(取决于您的发行版,/etc/aliases 或 /etc/postfix/aliases)由本地投递代理使用,并且仅适用于本地地址类。当然,您可以使用 sendmail 样式的别名将“信息”的邮件转发到 some-address@your-google-hosted-domain。

postfix.org 上的文档非常好。尝试

http://www.postfix.org/STANDARD_CONFIGURATION_README.html

http://www.postfix.org/ADDRESS_CLASS_README.html

http://www.postfix.org/ADDRESS_REWRITING_README.html

http://www.postfix.org/VIRTUAL_README.html

于 2009-05-05T06:13:07.157 回答