php无法发送电子邮件

时间:2013-05-30 07:23:35

标签: php

我正在尝试从php发送电子邮件,这是我的配置和代码:

 smtp_port = 25
 SMTP = 'my ip address'

mail('me@gmail.com', 'subject', 'message', 'FROM : headerInfo');

我不知道我错过了什么,这不是发送电子邮件。

编辑:

我没有收到错误。$result = mail(); echo $result;没有打印任何内容。

垃圾邮件中没有邮件。

服务器不是本地主机,文件在远程服务器上,但我不知道它是否是SMTP服务器。

我如何联合阻止ISP?

我检查了日志:

致命:绑定0.0.0.0端口25:已在使用的地址

我该如何解决?

3 个答案:

答案 0 :(得分:1)

您正在使用默认的php.ini设置来发送电子邮件。它可能是:

  • 您没有邮件服务器(如果您在localhost或那个上运行) IP地址没有邮件服务器)
  • 端口25被您的ISP阻止(您可以要求取消阻止)

答案 1 :(得分:0)

如果一切顺利,你必须再次检查你的smtp并检查你的php邮件页面。它必须上传到不在localhost系统上的服务器上。

答案 2 :(得分:0)

  1. 首先检查sendmail_path变量是否设置正确。您可以在页面中的echo phpinfo()中看到它。典型值为/usr/sbin/sendmail -t -i

  2. 如果要在函数的第4个参数中发送额外的标题,请尝试将其删除并发送。在邮件功能中使用不正确的标头是一种非常常见的情况。检查您的服务器中是否安装了阻止您的电子邮件的垃圾邮件过滤器。

  3. 如果您有权访问,请检查您的邮件日志文件,以查看邮件是否被邮件服务器阻止或尚未到达服务器。如果您的电子邮件没有在日志中输入,则表示您的PHP代码或php配置存在问题。如果它在日志中,您可以看到它未交付的原因。 邮件日志文件的典型路径为/var/log/maillog

  4. 检查您是否在localhost上运行,或者该IP地址没有邮件服务器。