从 PHP 发送邮件

从 PHP 发送邮件

我在我的所有项目中都使用了此代码并且运行良好:

mail("[email protected]", "Subject", "message");

现在,我正在开发 php,如果我使用此代码,则消息不会被发送,但它可以从终端正常运行。

我是否遗漏了什么?

[更新]

我从终端发送邮件如下:

echo "Test email" | mail -s "My Subject" [email protected]

答案1

使用 PHP 发送格式正确的电子邮件非常困难,尤其是当您想使用附件等更高级的功能时。并且发送带有不良标题或内容的垃圾邮件的风险很高。

我真的建议你使用 SwiftMailer (http://swiftmailer.org/),这是一个用于发送电子邮件的优秀 PHP 库。

答案2

将 Header 字段包含如下内容:

$to = "[电子邮件保护]"; $subject = "测试邮件"; $message = "您好!这是一封简单的电子邮件。"; $from = "[电子邮件保护]"; $headers = "发件人:" . $from; mail($to,$subject,$message,$headers); echo "邮件已发送。";

答案3

如果您使用的是具有 SELINUX 强制执行的系统,那么您可能需要告诉 SELINUX 让 php 发送邮件。

setsebool -P httpd_can_sendmail=1

相关内容