配置WAMP服务器以发送电子邮件


Answers:


205

从本地主机配置工作的电子邮件客户端是一件很麻烦的事情,我花了数小时无奈地尝试它。我确信更有经验的人可能会提供帮助,或者他们也许会同意我的看法。

如果您只想测试,这是一个在本地测试邮件的好工具,几乎不需要进行任何配置:

http://www.toolheap.com/test-mail-server-tool/

它对我立即起作用,希望对您有帮助。


16
可与wamp一起使用,而无需进行任何配置。只需使用Windows Live Mail(无需配置)打开.eml。
本杰明·克鲁兹耶

5
如果(像我一样)在调整php.ini之后来到了这个出色的解决方案,请记住默认配置:[邮件功能] SMTP = localhost smtp_port = 25
BenL 2014年

2
在Win10上使用WAMP 4为我出色地工作。谢谢韦斯利!
nickstaw

4
找不到下载链接的人,请转到此处:toolheap.com/test-mail-server-tool/users-manual.html
SolidSnake

3
对于那些想要在不禁用adblock的情况下下载此文件的人,请下载链接:toolheap.com/test-mail-server-tool/TestMailServerToolSetup.exe
唐老鸭

44

安装Fake Sendmail(下载sendmail.zip)。然后配置C:\ wamp \ sendmail \ sendmail.ini:

smtp_server=smtp.gmail.com
smtp_port=465
auth_username=user@gmail.com
auth_password=your_password

以上内容适用于Gmail帐户。然后配置php.ini:

sendmail_path = "C:\wamp\sendmail\sendmail.exe -t"

现在,重新启动Apache,这基本上就是您需要做的。


3
+1为交钥匙解决方案。至于那些谁需要的步骤的一些更详细的补充资源:blog.techwheels.net/...
Prusprus

@gianjey可以和Hotmail等其他帐户一起使用吗?还是需要注册一个Gmail帐户才能使用它?
Ryman Holmes 2014年

1
该方法似乎不再有效...假设我已经正确设置了所有内容
禁止

大家好,@Banning,我现在可以轻松地进行设置,因此它仍然有效。确保您没有在GMail帐户上配置两步身份验证。无论如何,这是一个很好的指南- blog.techwheels.net/...
露迪

1
不能相信这是第一次尝试!太不可思议了 唯一让我感到困惑的是,如果您使用的是gmail,则需要输入gmail用户名和密码,以便它可以登录到电子邮件客户端以发送电子邮件。注意:如果要执行此操作,请注册一个新的gmail帐户,因为这会增加安全风险。
威廉·霍利,2016年

5

使用开源程序调用Send Mail,您实际上可以相当轻松地通过wamp发送。我仍在进行设置,但这是jo jordan撰写精彩教程。只需不到2分钟即可完成设置。

只是尝试了一下,它就像一个魅力!一旦取消注释错误日志并发现它在pop3身份验证上停顿了,我就删除了该错误日志并很好地发送了该消息。祝你好运!


如果您使用的是Gmail帐户,则需要允许访问安全性较低的应用。为此,当您完成了此答案中链接的教程中的说明并使用打开了PHP页面时mail,您将收到Google的电子邮件,指出登录尝试被阻止。在该电子邮件中,单击“检查活动”,然后在打开的页面中单击“是,是我”,然后单击“了解更多”,然后单击“如果关闭了“缺少安全的应用程序访问权限”您的帐户”,然后点击“重新启用”,然后再打开开关。
唐老鸭

另外,在PHP中from调用时必须指定标头mail。例如,您可以做mail("to@example.com", "Subject", "Content", "From: youremailaddress@gmail.com")(这是很重要的最后一个参数)。
唐老鸭

2

您需要SMTP服务器来发送邮件。如果您有一个不需要SMTP认证的设备(也许是您的ISP?),只需在php.ini文件中编辑“ SMTP”([邮件功能])设置。

如果由于SMTP服务器需要验证而没有选择,则您将无法使用内部mail()函数,而必须使用某些支持smtp验证的第三方类。例如http://pear.php.net/package/Mail/


1

我尝试了“测试邮件服务器工具”,虽然效果很好,但是您仍然需要在某些客户端上打开电子邮件。

我发现了Papercuthttps : //papercut.codeplex.com/

对于配置很容易,因为测试邮件服务器的工具(pratically零-conf的),并且它也可以作为一个电子邮件客户端,可欣赏的消息(伟大的HTML邮件),身体(来检查HTML)和原材料(全未解析的电子邮件)。

它还具有“ 部分”视图,以拆分电子邮件中找到的不同媒体类型。

它具有超级干净友好的用户界面,良好的日志查看器,并在您收到电子邮件时向您发送通知。

我觉得它很完美,所以我只想给我2c,也许可以帮助别人。


1

Sendmail不适用于我,因此我使用了msmtp 1.6.2 w32,并且大多数都遵循DeveloperSide上的说明。这是后代设置的快速摘要:

在您的Gmail帐户下启用了IMAP访问(一个msmtp正在从中发送电子邮件)

为不太安全的应用启用访问权限。登录您的Google帐户并转到此处

编辑php.ini,查找和更改下面的每个设置以反映以下内容:

; These are commented out by prefixing a semicolon
;SMTP = localhost
;smtp_port = 25

; Set these paths to where you put your msmtp files.
; I used backslashes in php.ini and it works fine.
; The example in the devside guide uses forwardslashes. 
sendmail_path = "C:\wamp64\msmtp\msmtp.exe -d -C C:\wamp64\msmtp\msmtprc.ini -t --read-envelope-from"

mail.log = "C:\wamp64\msmtp\maillog.txt"

在与文件msmtprc.ini相同的目录中创建和编辑msmtp.exe文件,如下所示,将其替换为您自己的电子邮件和密码:

# Default values for all accounts
defaults
tls_certcheck off
# I used forward slashes here and it works.
logfile C:/wamp64/msmtp/msmtplog.txt

account Gmail
host smtp.gmail.com
port 587
auth on
tls on
from ReplaceWithYourEmail@gmail.com
user ReplaceWithYourEmail@gmail.com
password ReplaceWithYourPassword
account default : gmail

我无法在Windows上安装msmtp。我只能找到tar文件。
Oussama Essamadi

1
试试我答案中的链接,并下载msmtp-1.6.2-w32.zip sourceforge.net/projects/msmtp/files/msmtp/1.6.2
iyrin

0

我使用Mercury / 32和Pegasus Mail来获得mail()功能。如果您想要一个以域名结尾的电子邮件地址,它也可以用作邮件服务器。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.