0

当我使用这个命令时 PHP mail() 工作正常

php -r "mail('pzuraq@gmail.com', 'Test Email', 'Test email body');" 

但是,当我尝试通过网页运行它时,它不起作用。我在 /etc/msmtprc 中使用了一个全局配置文件,虽然我正在考虑尝试复制它并将所有权授予 apache,因为显然 msmtp 对配置文件和权限很奇怪(当前用户必须拥有该文件和权限必须为 600),但这不适用于全局配置。

当我mail()在网页上运行该函数时,它返回 false 并且不会在日志中打印任何错误。

4

1 回答 1

2

关键是你有不同php.ini的 cli & apache php 可执行文件。因此,您的 cli php.ini 版本已按预期配置,但您的 apache php.ini(或者,更确切地说,您的 Web 服务器 php.ini可能未正确配置。

也就是说,命令行 php 和 web php 使用不同的配置。

于 2012-12-11T02:29:14.453 回答