PHP mail() 在更新到 OSX Mountain Lion 后不再有效

2022-08-30 13:50:30

我昨天刚刚将OS X更新为Mountain Lion,但php功能不再起作用。mail()

在更新之前,PHP功能工作正常,Apple邮件工作正常。更新后,Apple邮件工作正常,但PHP功能不起作用。mail()mail()

Webserver: XAMPP 1.7.3

我用这段代码来测试这个函数:mail()

if (mail($to, $object, $content, "From: ". $from)) 
{ 
    echo 'send '; 
} 
else 
{ 
    echo "not send"; 
}

它显示:not send

有什么我必须改变的吗?比如什么的还是别的什么?php.ini

提前致谢。


答案 1

最后我找到了解决方案。查看error_log(/Applications/XAMPP/xamppfiles/logs/error_log)后,出现错误:sendmail:fatal:chdir /Library/Server/Mail/Data/spool:没有这样的文件或目录

在您的终端上执行以下操作:

sudo mkdir -p /Library/Server/Mail/Data/spool
sudo /usr/sbin/postfix set-permissions
sudo /usr/sbin/postfix start

然后php mail()工作!

参考资料: https://apple.stackexchange.com/questions/54051/sendmail-error-on-os-x-mountain-lion


答案 2

如上所述创建假脱机文件夹后,我按照本文OS X提示中的说明配置了postfix

我还必须编辑我的php.ini发送邮件路径才能有一些额外的开关,特别是

sendmail_path=/usr/sbin/sendmail -t -i

推荐