实际上,如果我在 php 控制台 (php -a) 中运行邮件功能,它可以工作,但如果我在 php 脚本上执行它并从 chrome 执行它,它就不起作用。
<?php
mail('test@gmail.com', 'Subject', 'Hello!');
?>
我将 Nginx 与 PHP-FPM 和 ssmtp SMTP 服务器一起使用。
注意:调查,问题出在 Nginx 或 FPM 上,当我从终端运行脚本时它可以工作。
谢谢!
您是否在 chrooted 模式下使用 php-fpm?
如果是这样,您的 chrooted 环境可能无法使用许多系统 mail() 要求。
通常,此类 chroot 外部程序问题可以通过在 chroot 路径(设备、库)中创建传真文件系统来解决。但是对于邮件来说,这更难。通常的解决方案不是使用 php 邮件调用,而是使用 smtp 通信(例如使用 localhost)。此处列出了一些示例。
您是否尝试过安装 PEAR 并使用 PEAR 邮件?