【问题标题】:PhpMailer send email without username and password with WindowsPhpMailer 使用 Windows 发送没有用户名和密码的电子邮件
【发布时间】:2014-07-23 08:49:14
【问题描述】:

我可以使用 PHPmailer https://github.com/Synchro/PHPMailer 在 linux 服务器上发送电子邮件,而无需像在 PhpMailer 网站上那样输入我的电子邮件地址、密码或主机地址。我想知道是否可以在我的 Windows 本地机器上执行此操作,因为我更愿意在本地机器上进行测试。现在,我总是上传到 linux 服务器来测试我的代码。无论如何要维护我的代码并通过我的本地 Windows 机器发送电子邮件?我必须像邮件服务器一样安装吗?请推荐。谢谢。

以下是我用于发送电子邮件的 php 代码的一部分。与 PhpMailer 网站上给出的示例不同,我不必包含我的电子邮件地址或密码。

$mailbody = "<p>Testing email send</p>";
//Create a new PHPMailer instance
$mail = new PHPMailer();

$mail->setFrom('nodeffect@gmail.com', 'nodeffect');

$mail->addReplyTo('nodeffect@gmail.com', 'nodeffect');

$mail->addAddress(example@yahoo.com, Somename);

$mail->Subject = 'Email Testing';

$mail->msgHTML($mailbody);

$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!';

【问题讨论】:

  • 如果你想从你的本地主机发送邮件,你应该安装一个 smtp 服务器
  • 请不要使用我个人 fork 中的 PHPMailer 版本 - 使用github.com/PHPMailer/PHPMailer的官方仓库
  • 如果您连接到需要身份验证的 SMTP 服务器,您只需提供密码。如果您使用的是 mail 或 sendmail 方法,则不需要它们。 Windows 通常没有本地邮件服务器,因此您需要安装一个或使用远程服务器。

标签: php email phpmailer


【解决方案1】:

您可以使用本地 SMTP 服务器/邮件传输代理,如 epipav 所述。或者,在 php.ini 的邮件部分中指定任何现有的 SMTP 服务器,然后 PHP 的 sendmail 实现将使用该服务器。

另请参阅:MTA for windows to use for PHP Sendmail

【讨论】:

    猜你喜欢
    • 2011-11-08
    • 2016-10-10
    • 1970-01-01
    • 2020-05-15
    • 2019-01-20
    • 2017-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多