Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法连接到位于“的邮件服务器”;“本地主机”;端口25_Php_Email_Smtp - Fatal编程技术网

Php 无法连接到位于“的邮件服务器”;“本地主机”;端口25

Php 无法连接到位于“的邮件服务器”;“本地主机”;端口25,php,email,smtp,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 我的php.ini如下所

当我尝试用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
我的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

我把我的笔记本电脑用作服务器。。我做错了什么?谢谢。

您需要在本地运行邮件服务器。 如果这是Unix,请启用sendmail
如果是Windows,请安装IIs的简单邮件传输服务器(不确定名称是否正确)组件。例如,对于windows 2003,请执行以下操作:

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

如果您仅在localhost上运行应用程序,但该应用程序尚未启动,我相信使用此脚本发送邮件非常困难


一旦你把你的申请放到网上,我相信这个问题应该会自动解决。但是我认为
ini\u set()
可以帮助您在运行时更改
php.ini
中的值

PHP邮件功能可以在两种情况下发送电子邮件:

a。尝试通过unixsendmail程序发送电子邮件 在linux上,它将执行程序“sendmail”,将所有参数都放在sendmail上

b。连接到邮件服务器(使用smtp协议和来自php.ini的host/port/username/pass)并尝试发送电子邮件

如果php无法连接到电子邮件服务器,它将发出警告(您可以在日志中看到这样的工作)
要解决此问题,请在本地计算机上安装smtp服务器或使用任何可用的服务器。如何设置/配置smtp您可以在php.net上找到首先,您不必在本地主机上使用smtp,如果您将该本地主机条目更改为您的ISP提供商提供的MTA的DNS名称(ISP提供商将允许您转发邮件),它将立即工作,因此不会干扰您自己的电子邮件服务。只要尝试使用您的提供商SMTP服务器,它就会立即工作。

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

Imo最好、最简单的工具是:


SMTP4Dev是一个简单的单文件邮件服务器工具,它确实收集它发送的邮件(因此它并不真正发送邮件,它只是保存它们以供开发)。完美的工具。

将SMTP=localhost更改为SMTP=SMTP.gmail.com

您有SMTP服务器设置吗?一些问题,1。你重启服务器了吗,2。你的笔记本电脑上有邮件服务器吗。我们是SMTP监听者吗?cmd>
netstat-aon
?不,我没有运行邮件服务器,我在Windows 7上,必须找到一个邮件服务器,然后再试。。谢谢。在Windows 7上也可以吗?是的,可以在一些版本的W7上使用:Apache不是在这样做吗?请告诉我如何配置这个工具来监听我真正的电子邮件服务器