问题是,我遇到了这个PHP mail()
问题,当我在shell(php -a
)上时,我可以完美地运行代码,而在同一代码(完全是同样,我能够在shell上加上PHP标记运行)只是无法从.PHP脚本文件内部运行。
这是我的代码:
$sender = 'sender@example.com';
$recipient = 'recipient@example.com';
$subject = "php mail test";
$message = "php test message";
$headers = 'From:' . $sender;
mail($recipient, $subject, $message, $headers)
因此,通过在shell上运行此代码,我得到了发送的电子邮件,而通过作为脚本运行,我所得到的只是来自mail()
的空返回(既不正确,也不假)
发生了什么事?
我的php.ini:
[mail function]
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path = /usr/sbin/sendmail -t -i
sendmail_path = /usr/sbin/ssmtp -t -i
在以下情况下使用此方法检查邮件回复:
if(mail($recipient, $subject, $message, $headers))
{
echo("E-mail sent!");
}
else{
echo("Something went wrong :/");
}
我正在使用ssmtp作为MTA。