我已经将 sendmail 设置为仅从我们的 php web 应用程序发送邮件。只要我们不将邮件发送到与 web 应用程序相同的域,这就可以正常工作。
例如
我们的应用程序 = www.ourapp.com 发送邮件功能完美,除了[电子邮件保护]“
我不知道这是否相关,但我们的目标电子邮件托管在 Google Apps 上。Sendmail 队列为空,日志文件始终显示邮件已发送
我们正在运行 CentOS 作为我们的操作系统
答案1
在 sendmail 中是可行的,但使用 ssmtp 之类的工具会更快。与您的情况密切相关的一个示例是这里。
sendmail 按照配置不会将电子邮件发送到您的 Google Apps 托管电子邮件帐户,因为它认为应该在本地处理您域的电子邮件。它说邮件已发送,这意味着它们在机器本地传递。检查您的 /var/mail 内容。
答案2
该域名是否在 /etc/mail/local-host-names 中?如果是,sendmail 将假定它是该域名的最终目的地并尝试本地传送。
将域从 local-host-names 中取出,重建 sendmail 配置,然后重新加载 sendmail,应该没问题。如果您不希望任何邮件在本地发送,即如果您希望所有邮件都发送到您的 google apps 帐户,那么您可能希望 /etc/mail/local-host-names 为空(甚至不是 localhost),然后确保创建指向您域中完全合格地址的正确角色别名。
另外请确保您的 MX 记录指向谷歌(不太可能是问题所在,但也值得仔细检查)
答案3
这个问题在 1-2 天后就解决了。这可能只是 DNS 更新问题,我们已经获得了更新的数据,但也许我们测试过的邮件服务器仍然有旧的 DNS 缓存。
感谢大家的帮助