MODx电子邮件无法正常工作

时间:2012-07-15 15:58:31

标签: php email modx

在我的服务器上,使用MODx(版本2.2)发送电子邮件失败。它可能适用于SMTP,但原则上它也可以在没有SMTP的情况下工作,因为下面的脚本可以工作。

脚本:

<?php
$to = "someone@example.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "someonelse@example.com";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
?>

你能帮助我找出造成这种不当行为的原因和/或解决这个问题吗?

修改

回答以下问题:

我不会尝试向网站用户发送任何精美的电子邮件。我只是尝试非常基本的东西,比如通过电子邮件重置登录名和密码。

我尝试quickemail进行调试。输出是:

System Settings (used if property is missing):
emailsender System Setting: xxx@xxx.xx
site_name System Setting: MODX Revolution
Properties (from parameters, property set, or snippet default properties:
Tpl chunk name:
subject:
to:
fromName:
replyTo:
emailSender:
allowHtml: 1
message:
Final Values (actually used when sending email):
subject: Default Subject
to: xxx@xxx.xx
fromName: xxx@xxx.xx
replyTo: xxx@xxx.xx
emailSender: xxx@xxx.xx
allowHtml: 1
Message Body: Default Message
Send Failed
Mailer error info: Could not instantiate mail function.
Server Debug Information:

我想我已经在核心安装中使用了MOD-Mail。不是吗?

我的邮件服务器使用qmail。我只是在没有$from值的情况下尝试了上面的脚本,并且它有效。但仍然是,MODx无法发送电子邮件。

2 个答案:

答案 0 :(得分:0)

您需要检查MODx使用的默认设置是否与服务器PHP mail()配置相匹配。

MODx使用的PHP邮件类位于 core / model / modx / mail / phpmailer / class.phpmailer.php 。如果它们不匹配,我不建议更改类,而是使用SMTP,可以在系统&gt;下的MODx管理器中启用和配置。系统设置

信息:默认情况下,MODx使用 / usr / sbin / sendmail -oi -f 发送电子邮件。这很常见,但不适用于所有Web服务器。

答案 1 :(得分:-1)

当您使用mail - 函数时,您正在使用本机(标准)PHP邮件类。

Modx revo拥有它,但你根本就没有使用它。这是默认安装的,因此它应该正常工作。阅读此wiki文章以了解该课程的用法:http://rtfm.modx.com/display/revolution20/modMail

但是,如果发送电子邮件不起作用,这与Modx无关,据我所知,您的代码是有效的。这是一个服务器/ PHP设置问题。

相关问题