我有一个可能有点愚蠢的问题,但我无法解决我的问题: 我正在开发一个应用程序,我必须向用户发送电子邮件,这就是我使用PHPMailer库的原因。我使用Google的smtp服务器测试了该应用程序,并按预期交付了电子邮件。现在我安装了mailcatcher以便在本地测试我的电子邮件,但我不知道该怎么做。 在mailcatcher的文档中写道: 通过smtp:// localhost:1025发送邮件 如何使用PHPMailer执行此操作?目前我有:
'SMTPDebug'=> 2 ,
'Host' => 'smtp.gmail.com',
'Username'=>'XXXX@gmail.com',
'Password'=>'XXXXXX',
'SMTPSecure'=>'tls',
'Port'=>587,
'From'=> 'test',
'FromName'=> 'test',
'Subject'=>'test',
'IsHTML'=>true
我需要改变什么?我尝试将主机改为smtp:// localhost:1025,但邮件未送达。 谢谢!
答案 0 :(得分:2)
这似乎是最有可能改变的两件事
'SMTPDebug'=> 2 ,
//'Host' => 'smtp.gmail.com',
'Host' => '127.0.0.1',
'Username'=>'XXXX@gmail.com',
'Password'=>'XXXXXX',
'SMTPSecure'=>'tls',
//'Port'=>587,
'Port'=>1025,
'From'=> 'test',
'FromName'=> 'test',
'Subject'=>'test',
'IsHTML'=>true
您可能还需要删除
SMTPSecure'=>'tls',
取决于聪明的邮件收集方式
答案 1 :(得分:0)
非常容易将端口设置为 1025 ,将主机设置为localhost。
'SMTPDebug'=> 2 ,
'Host' => 'localhost',
'Username'=>'XXXX@gmail.com',
'Password'=>'XXXXXX',
'SMTPSecure'=>'tls',
'Port'=>1025,
'From'=> 'test',
'FromName'=> 'test',
'Subject'=>'test',
'IsHTML'=>true
mailcatcher侦听该端口并捕获该端口上的所有电子邮件。
然后,本地脚本可以在localhost端口1025连接到SMTP。 此外,默认情况下,Web界面在端口1080处可用。"
如果连接不接受TLS,则可能必须禁用TLS才能使用mailcatcher。