通过Gmail SMTP发送电子邮件以避免本地投递尝试?

背景

我们使用Google Apps通过我们的域example.com发送电子邮件:

 [ec2-user@example ~]$ dig MX example.com … ;; ANSWER SECTION: example.com. 300 IN MX 1 aspmx.l.google.com. example.com. 300 IN MX 5 alt1.aspmx.l.google.com. example.com. 300 IN MX 5 alt2.aspmx.l.google.com. example.com. 300 IN MX 10 aspmx2.googlemail.com. example.com. 300 IN MX 10 aspmx3.googlemail.com. … 

在同一个域上,我们有一个运行的EC2实例,使用Amazon Linux AMI(基于Centos)。 sendmail对non-ex.com地址工作正常。 但是,example.com地址会尝试在本地投递邮件,这对仅存在于Google Apps上的用户无效。 有趣的是,尽pipelocal-host-names是空的。

为了避免本地交付,我们可以设置sendmail以便通过Google的SMTP服务器发送所有电子邮件(需要authentication)? 这是个好主意吗? 还是有更好的解决scheme?

附加信息

您将您的服务器example.com命名为裸域名。 因此,许多程序(包括sendmail)都会引用你的意思,并认为本地服务器执行与该域名有关的所有事情

要解决该问题,请重命名主机。 由于这个原因以及其他原因,任何服务器都不能以裸域名命名。