无法连接到"localhost"端口25上的邮件服务器

Loo*_*oii 67 php email smtp

当我尝试用PHP发送电子邮件时,我不断收到此错误:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\dressoholic\register.php on line 50
Run Code Online (Sandbox Code Playgroud)

我的php.ini看起来像这样:

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

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = you@yoursite.com
Run Code Online (Sandbox Code Playgroud)

我正在使用笔记本电脑作为服务器..我做错了什么?谢谢.

MK.*_*MK. 30

您需要在本地运行邮件服务器.如果这是Unix,启用sendmail如果这是Windows安装简易邮件传输服务器(不确定名称是否正确)的组件.例如,对于Windows 2003,请按照以下步骤操作:http://msdn.microsoft.com/en-us/library/8b83ac7t.aspx

  • Apache不是这样做的吗? (4认同)

Rub*_*wal 20

使用php邮件功能发送邮件.但邮件功能需要SMTP服务器才能发送电子邮件.我们需要在php.ini文件中提到SMTP主机和SMTP端口.一旦成功配置SMTP服务器邮件将通过php脚本成功发送.


Sli*_*liq 19

在Windows上,几乎所有AMPP(Apache,MySQL,PHP,PHPmyAdmin)软件包都不包含邮件服务器(但几乎所有裸Linux都有!).因此,在Windows下使用PHP时,需要设置邮件服务器!

Imo是最好最简单的工具:http://smtp4dev.codeplex.com/

SMTP4Dev是一个简单的单文件邮件服务器工具,它收集它发送的邮件(因此它不会真正发送邮件,它只是保留它们用于开发).完美的工具.


Nul*_*teя 10

如果你只是在localhost上运行你的应用程序而它尚未生效,我相信使用它发送邮件非常困难.

一旦您将应用程序联机,我相信这个问题应该自动解决.但我认为ini_set()可以帮助您php.ini在运行时更改值.


Gle*_*las 8

首先,您不必在本地主机上使用SMTP,如果您从ISP提供商(允许您转发邮件)将该localhost条目更改为MTA的DNS名称,它将立即生效,因此不会搞乱你自己的电子邮件服务.只是尝试使用您的提供商SMTP服务器,它将立即工作.