使用exim4从PHP发送邮件

我pipe理的Web服务器在从PHP发送邮件时遇到问题。 此服务器使用exim4 MTA,并configuration正确。

我可以从PHP的CLI发送电子邮件,但不能从networking发送。 即如果我在命令行上执行“php mailtest.php”,电子邮件将被正确发送,但是如果我浏览到server.com/mailtest.php,mail()将返回false,并且邮件永远不会被发送。 没有出现在exim mainlog中。

任何build议,或我应该寻找的东西?

谢谢!

这听起来像你有不同版本的php.ini位于/ etc / php5 /

debian:/etc/php5# find . | grep php.ini ./cli/php.ini ./apache2/php.ini 

检查[邮件function]指令

你应该改变你的PHPconfiguration,通过exim发送邮件。

如果您使用Apache2作为networking服务器:

 ; /etc/php5/apache2/conf.d/mail.ini [mail function] sendmail_path = /usr/sbin/exim4 -t mail.add_x_header = On mail.log = syslog 

如果你使用nginx + FPM

 ; /etc/php5/fpm/conf.d/mail.ini [mail function] sendmail_path = /usr/sbin/exim4 -t mail.add_x_header = On mail.log = syslog 

然后重启你的服务:

 sudo service apache2 restart 

要么:

 sudo service php5-fpm restart