2013-07-08 112 views
0

我正嘗試通過使用CronJob通過亞馬遜SES向我的網站的用戶發送簡報/提醒。亞馬遜SES通過CRONJOB發送郵件獲取錯誤

我用下面的PHP腳本通過SES

[http://sourceforge.net/projects/php-ses/?source=navbar][1] 

include("ses.php"); 
$ses = new SimpleEmailService('id', 'key'); 
$m = new SimpleEmailServiceMessage(); 
$body="Test" 
$m->addTo($mailId); 
$m->setFrom('[email protected]'); 
$m->addReplyTo('[email protected]'); 
$m->setSubject('Reminder from Site.com'); 
$m->setSubjectCharset('ISO-8859-1'); 
$m->setMessageCharset('ISO-8859-1'); 
$m->setMessageFromString('text body',$body); 
$ses->sendEmail($m); 

完成交付但是當我通過瀏覽器訪問該文件(mailsend.php),我收到的電子郵件非常好。但是當使用由CronJob觸發的這個功能時,我收到以下錯誤:

[08-Jul-2013 11:10:11 America/New_York] PHP Warning:
SimpleEmailService::sendEmail(): 77 error setting certificate verify locations:
CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
in /home/site/public_html/files/login/ses.php on line 356

關於問題出在哪裏的想法?

+0

的cron的運行作爲PHP命令行,其中有一個不同的.ini文件,通常不同的設置。比較'php -i'(命令行)''和'phpinfo()'(瀏覽器)輸出並找出哪些設置是不同的。 –

+0

但我只有cPanel訪問服務器。我們可以檢查與cPanel訪問? – ramesh

+0

正如Marc B指出的那樣,cron作業(包括所使用的PHP版本)的總體*環境*可能與運行在Web服務器上並通過瀏覽器訪問它完全不同。在cron /命令行下運行時似乎存在某種身份驗證(「CA」)問題。您可能必須與主持人討論此問題。 –

回答

0

添加代碼

$ses->enableVerifyPeer(false); 

$ses = new SimpleEmailService('id', 'key'); 
相關問題