【发布时间】:2016-09-18 06:12:26
【问题描述】:
我已经尝试了所有可能在互联网上找到的东西,但我所做的一切都没有任何区别。我正在尝试在我的 linux 机器上使用 sendmail 发送电子邮件。更大的情况是,当节点服务器上的进程失败或崩溃时,我需要发送电子邮件,我的公司没有选择 smtp,所以我正在研究通过 nodemailer 使用 sendmail。不用说它不能正常工作。我没有收到错误,但邮件永远不会通过,所以我决定更基本,只是通过终端测试 sendmail,我根本无法发送任何邮件。我已经进入 /etc/mail 目录并编辑了 sendmail.mc 和 submit.mc 文件以获得完全合格的域名,我在网上找到了一个快速教程,上面说将以下内容添加到 sendmail.mc 文件中。 .
Dmbar.com
define('confDOMAIN_NAME', '$w.$m')dnl
所以我添加了它,然后运行“sendmailconfig”命令来更新应用程序,然后为了安全起见,我运行了“/etc/init.d/sendmail restart”命令来重新启动 sendmail 守护程序。 然后我运行 sendmail 命令来测试发送这样的电子邮件......
sendmail -t < email.txt
email.txt 的内容只是...
to:realemail@gmail.com
from:myemail@mydomain.com
subject: Test email
test test etst
是的,“realemail@gmail.com”不是它的发送位置,该行中有一封真实的电子邮件,并且“myemail@mydomain.com”也不是文件中的内容,而是替换为一个实际的电子邮件地址。
仍然没有邮件通过。当我调出“sendmail -bp”命令时,我会得到类似...
u4KJaAJF030710readqf* -1 Fri May 20 12:36 <****@***********>
(Deferred: Connection refused by alt4.gmail-smtp-in.l.google.)
<realemail@gmail.com>
是的,我用 ***** 替换了发件人,但可以肯定地说它使用的是 computeruser@computername,而不是邮件文件中的 from,也不是 .mc 文件中定义的 DOMAIN_NAME。
我真的迷路了,我做的任何事情似乎都无关紧要,我无法让这个发送电子邮件,我真的需要这个运行。我整天都在网上搜索,我发现的一切要么是将该定义行添加到 sendmail.mc 文件中,要么只是关于如何实际发送邮件的简单命令,我找不到任何有助于为什么这不发送任何电子邮件。但是,我可以跳到 PHP 页面并使用“邮件”PHP 功能成功发送电子邮件,所以我知道我的系统能够正确发送电子邮件。 我乞求任何帮助,电子邮件不是我的强项,因此非常感谢任何帮助。谢谢。
【问题讨论】:
标签: linux email terminal sendmail