【问题标题】:Impossible to use mail() function in PHP with my config无法在我的配置中使用 PHP 中的 mail() 函数
【发布时间】:2013-10-28 19:09:20
【问题描述】:

我想在本地使用 mail() 函数,但出现此错误:

警告:mail() [function.mail]: 无法连接到 'localhost' 端口 25 的邮件服务器,请验证 php.ini 中的 'SMTP' 和 'smtp_port' 设置或使用 ini_set() ;

这里是相关的 php.ini :

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.free.com
;http://php.net/smtp-port
smtp_port = 25

和 sendmail_from = "我的电子邮件地址"

有人知道这可能来自哪里吗?

编辑:好的,我终于知道了。 smtp 不是 smtp.free.com 而是 smtp.free.fr .... 无论如何,感谢您对每个人的帮助。

【问题讨论】:

  • 你是在 Windows 机器上吗,因为那是那些特定 php.ini 设置适用的唯一地方。如果您使用的是 unix-ish 机器,则需要安装本地邮件服务器/mta。
  • 您是否在本地计算机上设置了邮件服务器?
  • @andrewsi 他正在尝试使用smtp.free.com
  • 您可能编辑了错误的 PHP.ini。查看phpinfo() 的输出并确认您正在编辑当前正在使用的PHP.ini。
  • @TanguyLemoine 你应该解决你的问题,表明你的配置没有生效。这才是真正的问题。

标签: php email connect mail-server


【解决方案1】:

可能想在"smtp.free.com" 周围使用引号,因为它是一个字符串。

【讨论】:

  • 虽然如此,但 PHP 的 INI 解析器通常并不关心...。当然,除非文件中存在未闭合的引号。
【解决方案2】:

我将假设这是通过网络服务器运行的(我认为是 IIS 或 Apache - 考虑到您使用的是 Windows)。

如果是这种情况,那么您的设置通常只有在您重新启动网络服务器后才会生效。

【讨论】:

  • 是的,我在 Apache 2.2 上,我已经重新启动了网络服务器,我遇到了同样的问题。
猜你喜欢
  • 2013-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-13
  • 1970-01-01
  • 2018-07-02
相关资源
最近更新 更多