sendmail是否需要域名才能运行?

时间:2012-11-28 09:37:48

标签: sendmail php

我有运行WordPress的VPS,并尝试安装sendmail以启用WordPress使用的php mail()函数。没有收到WordPress的电子邮件,所以我创建了一个包含邮件功能的测试php文件,向我发送测试邮件。 运行时,这个php文件挂起大约30秒,然后加载没有错误消息。 我检查了我的邮件日志,看到了其中的一些:

Nov 27 22:21:01 sergeserver sm-msp-queue[5866]: unable to qualify my own domain name (sergeserver) -- using short name
Nov 27 22:37:19 sergeserver sendmail[5903]: My unqualified host name (sergeserver) unknown; sleeping for retry

这可能是邮件功能不起作用的原因吗?正如标题中所解释的,我的服务器还没有域名。我今天晚上将我的域名指向服务器,但同时使用VPS的IP进行开发。

我确保我的php.ini包含sendmail路径行

更新: 我用postfix替换了sendmail,因为我在这里更容易设置。 我已将主机名sergedenimes.com放在我的主机和主机名文件中 邮件功能仍然无法正常工作。以下是一些最新的日志:

Nov 28 21:20:01 sergedenimes postfix/qmgr[2878]: 1834F2C1EE: from=<smmsp@sergedenimes.com>, size=689, nrcpt=1 (queue active)
Nov 28 21:20:02 sergedenimes postfix/local[3171]: 1834F2C1EE: to=<root@sergedenimes.com>, orig_to=<root>, relay=local, delay=1.1, delays=0.03/0.02/0/1, dsn=2.0.0, status=sent (delivered to command: procmail -a "$EXTENSION")
Nov 28 21:20:02 sergedenimes postfix/qmgr[2878]: 1834F2C1EE: removed
Nov 28 21:23:06 sergedenimes postfix[3216]: error: to submit mail, use the Postfix sendmail command
Nov 28 21:23:06 sergedenimes postfix[3216]: fatal: the postfix command is reserved for the superuser

1 个答案:

答案 0 :(得分:1)

服务器的FQDN需要完全限定(因此名称为:完全限定的域名)。即使它是完全错误的,出于测试目的,将其设置为sendmail中的可解析的内容以及sendmail的PHP默认域。

而且,如果你的服务器没有IP地址,你就会遇到比sendmail错误更严重的问题 - 让服务器认为它在互联网上而不是在它上面! : - )