应用程序想从localhost发送电子邮件

时间:2010-09-09 11:15:29

标签: php email smtp wamp

我正在开发一个php应用程序,需要测试发送电子邮件的功能。问题是我正在使用开发环境(Windows上的wamp)所以我猜我无法访问smtp或邮件服务器。

看起来我可能需要安装一个单独的应用程序来充当我的邮件服务器。最简单的方法是什么(我正在使用wamp上的Windows),还有另一种替代方法,比如公共服务器用于开发人员的测试(免费,因为我可能只使用它10次,直到电子邮件功能被调整)。然后我想我需要更改为我的开发环境本身的设置?任何人都可以对此有所了解。

由于

5 个答案:

答案 0 :(得分:3)

XAMPP附带Mercury来处理电子邮件。如有必要,它可以通过SSL与SMTP服务器通信,对我来说效果很好。

答案 1 :(得分:2)

您需要一个SMTP服务器。我使用PostCast服务器,这是免费的,并且需要它。

答案 2 :(得分:1)

您是否尝试创建假的GMail帐户,然后通过其SMTP服务器发送电子邮件?这是一个例子 - 对我来说工作正常。

http://phpmailer.worxware.com/index.php?pg=exampleagmail

答案 3 :(得分:0)

您是否尝试过PHP功能

mail($to, $subject, $body, $headers)

http://php.net/manual/en/function.mail.php

答案 4 :(得分:0)

XAMPP附带一个“假的”sendmail程序。如果您使用XAMPP,您可以使用sendmail :(忽略“仅适用于Unix”警告;它在Windows上运行正常)

[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 = me@example.com

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = "C:/xampp/sendmail/sendmail.exe -t -i"

Sendmail应该有一个sendmail.ini;它应该配置为:

# Example for a user configuration file

# Set default values for all following accounts.
defaults
logfile "C:\xampp\sendmail\sendmail.log"

# Mercury
#account Mercury
#host localhost
#from postmaster@localhost
#auth off

# A freemail service example
account ACCOUNTNAME_HERE
tls on
tls_certcheck off
host smtp.gmail.com
from EMAIL_HERE
auth on
user EMAIL_HERE
password PASSWORD_HERE

# Set a default account
account default : ACCOUNTNAME_HERE

当然,将ACCOUNTNAME_HERE替换为任意帐户名称,将EMAIL_HERE替换为有效的电子邮件(例如Gmail或Hotmail),并将PASSWORD_HERE替换为您的电子邮件的密码。现在,您应该能够发送邮件了。请记住重新启动Apache(从控制面板或批处理文件)以允许对PHP的更改起作用。