在自定义 exim 安装中使用 php mail() 函数

Use php mail() function with custom exim installation

我在非标准路径中安装了 exim。

如何配置 php 以便 mail() 使用它?

解决方法是改变php.ini中"sendmail_path"变量的值:

sendmail_path="/my_custom_path/exim -t -i"

exim 在命令行参数方面与 sendmail 兼容

保证exim4后确实运行没有问题。

sudo service exim4 status
sudo /etc/init.d/exim4 status
注意.: 注意命令行的结果。如果它有任何问题,它会警告你。

 * Stopping MTA for restart
 * Restarting MTA
ALERT: exim paniclog /var/log/exim4/paniclog has non-zero size, mail system possibly broken

您可以编辑文件

/etc/php5/apache2/php.ini
并添加行
sendmail_path = "/my_custom_path/exim -t"
而无需选项 -i which will cause problems.

因此,键入要测试的

echo "Testing." | mail -s Test example@gmail.com
而不是使用 PHP 函数进行测试。有太多东西(防火墙、网络:子网和安全组、PHP 设置)可能会导致您的例程出现问题,这可以更好地保证 exim4 正常工作。