2012-07-15 96 views
0

在我的服務器上,發送帶有MODx(2.2版)的電子郵件失敗。它可能適用於SMTP,但原則上它應該不使用SMTP,因爲下面的腳本可以工作。MODx電子郵件不工作

腳本:

<?php 
$to = "[email protected]"; 
$subject = "Test mail"; 
$message = "Hello! This is a simple email message."; 
$from = "[email protected]"; 
$headers = "From:" . $from; 
mail($to,$subject,$message,$headers); 
echo "Mail Sent."; 
?> 

你能幫我找到這個不當行爲的原因和/或解決這個問題?

編輯

要回答以下問題:

我不嘗試發送任何花哨的電子郵件給網站用戶。我只是想通過電子郵件重置登錄名和密碼等非常基本的東西。我試過quickemail進行調試。輸出是:

System Settings (used if property is missing): 
emailsender System Setting: [email protected] 
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: [email protected] 
fromName: [email protected] 
replyTo: [email protected] 
emailSender: [email protected] 
allowHtml: 1 
Message Body: Default Message 
Send Failed 
Mailer error info: Could not instantiate mail function. 
Server Debug Information: 

我想我已經使用MOD-Mail的核心安裝。這不正確嗎?

我的郵件服務器使用qmail。我只是嘗試了上面的腳本,沒有$from價值,它的工作。但是,MODx仍然無法發送電子郵件。

+1

要顯示的任何錯誤? – j0k 2012-07-15 16:17:56

+1

您使用什麼軟件包發送電子郵件? [formit?註冊?]也許從發件人電子郵件地址不填充,一些郵件服務器可能不會那樣。 – 2012-07-15 17:23:31

+0

也 - 給modMail一個旋轉看看你是否可以用它發送郵件:http://rtfm.modx.com/display/revolution20/modMail – 2012-07-15 17:24:57

回答

0

您將需要檢查MODx使用的默認設置是否與您的服務器PHP mail()配置的默認設置匹配。

MODx使用的PHP郵件類是core/model/modx/mail/phpmailer/class.phpmailer.php。如果它們不匹配,我不建議改變類,而是使用SMTP可以啓用和下系統在鏌鋣管理器中配置>系統設置

信息:默認情況下,鏌鋣將使用/usr/sbin目錄電子郵件/ sendmail -oi -f。這很常見,但不適用於所有的Web服務器。

+0

他沒有使用MODx郵件類。 – OptimusCrime 2012-07-16 08:36:43

+1

這聽起來像他正在發送郵件*通過* MODx,它使用的是MODx郵件類... – Gibbs 2012-07-16 09:47:49

+0

hm我找不到任何不匹配的設置。至少還有/ usr/sbin/sendmail文件存在。我可以進一步調查嗎? – speendo 2012-07-16 19:25:13

-1

當您使用mail函數時,您正在使用本機(標準)PHP郵件類。

Modx revo有它自己的,但你根本沒有使用這個類。這是默認安裝,所以它應該工作。閱讀這篇維基文章的使用類:http://rtfm.modx.com/display/revolution20/modMail

但是,如果發送電子郵件不起作用,這與Modx無關,並且據我所知,您的代碼是有效的。這是一個服務器/ PHP設置問題。

+1

我認爲你誤解了這個問題。他發佈的腳本*確實可行。問題是通過MODx發送郵件不會。 – Gibbs 2012-07-16 10:07:49