我正在使用phpmailer发送电子邮件。我需要知道如何隐藏或屏蔽发件人电子邮件地址
答案 0 :(得分:15)
您可以指定任何发件人电子邮件地址,因为SMTP本身并不对发件人电子邮件地址提出任何要求。
如果您使用的实际SMTP服务器对电子邮件地址(例如不允许公司域外的发件人电子邮件的公司服务器)施加限制,则无法解决此问题,除非您当然可以影响邮件服务器配置。
<强>更新强> 您在评论中说,您希望使用gmail发送电子邮件,其中发件人的地址不是Gmail地址。没有办法做到这一点。
答案 1 :(得分:4)
这是您在这里遇到的罕见情况...如果您没有邮件服务器,您仍然可以告诉PHPMailer从其他地址发送,只需设置From
对象的PHPMailer
属性到你想要的地址。可是等等!如果您的服务器不存在,客户端无法验证该帐户,那么您的邮件将更有可能被删除(在更仁慈的情况下转移到垃圾邮件)。如果你试图模仿第三方邮件,我将永远帮助你。
注意:您的邮件服务器可能有效,但客户仍然无法验证它,因此您将邮件发送到垃圾邮件或删除,以便有一些内部解决此问题...检查在下面的“必读”。
另一方面,如果您已经有一个邮件服务器,那么告诉PHPMailer您要使用它,将Host
和Port
属性设置为您的域名并接受端口。如果您想要使用不同服务器的帐户,请务必正确设置Username
和Password
属性,您可能还需要设置SMTPAuth = true;
和SMTPSecure = 'ssl';
在服务器上。 [注意:Username
和From
可能不同]
现在,如果您想使用Gmail中的帐户,您可以轻松地在Gmail中设置别名以作为另一个帐户发送[转到设置 - &gt;帐户和导入 - &gt;发送邮件为 - &gt; (单击)从另一个地址发送邮件],如果您有邮件服务器但是无法在线使用,则需要启动服务器,以便您可以收到Gmail生成的验证码以验证您的帐户。检查推荐的读取PHP侧配置详细信息。
最后,如果对于一些罕见的环境,你不能告诉PHPMailer使用你的邮件服务器,但你确实有一个,并且那个能够收到邮件...你可以使用AddReplyTo('me@mymailserver.com', 'My Name');
客户将理解,在这种情况下,对消息的任何回复必须(除非用户明确定义)指向“me@mymailserver.com”。
免责声明1 :我与mymailserver.com没有任何关系,任何与实际域名的匹配都不是故意的,只是巧合。
免责声明2 :对于使用我在此处提及的方法造成的任何损害,我不承担任何责任,例如(但不限于)您的邮件帐户被禁止。
必读: [通过代码发送邮件时编码恐怖] http://www.codinghorror.com/blog/2010/04/so-youd-like-to-send-some-email-through-code.html
推荐阅读:
[PHPMailer Tutorial] http://www.askapache.com/php/phpfreaks-eric-rosebrocks-phpmailer-tutorial.html
[PHPMailer教程] http://web.archive.org/web/20100819041054/http://www.askapache.com/php/phpfreaks-eric-rosebrocks-phpmailer-tutorial.html
[PHPMailer和Gmail] http://mediakey.dk/~cc/send-email-using-php-phpmailer-and-gmail/
不需要(也不是一个好方法)隐藏或掩盖任何东西。
答案 2 :(得分:2)
我假设您已经知道如何使用您正在谈论的课程。
你可能有一些发送电子邮件的变量,比如
var $From = "someguy@whatever.com";
您可以在该电子邮件地址中键入任何内容。 Gmail不关心从哪里发送电子邮件。
不,这种声音非常合理。
还有一件事:Gmail需要一个Gmail帐户来转发邮件。没问题,它不可见。
答案 3 :(得分:0)
您想“将公司电子邮件地址显示为发件人”,但您“没有(原文如此)有任何电子邮件服务器”?
有人可以通过您公司的电子邮件地址向您发送电子邮件吗?如果是这样,请使用托管您电子邮件的服务器发送。
如果你真的没有公司的电子邮件地址,那么我建议你获得一个像companyname@gmail.com这样的gmail地址,然后从中发送。否则,该电子邮件将对许多收件人显示为垃圾邮件。
现在,如果您要发送电子邮件的人实际注册到您的邮件列表,那么您可以使用Constant Contact等第三方应用程序来进行广播。
如果他们没有,那么我建议你根本不发送电子邮件。
答案 4 :(得分:0)
在邮件标题中,您可以同时拥有Sender:
和From:
标题,在大多数邮件客户端中,该标题仅显示为From
或在某些情况下显示为Sender
代表From
,使用这种方式是一种很好而且干净的方式,可以发送From
一个不同的邮件地址,然后发送到实际的Sender
邮件服务器
答案 5 :(得分:-3)
这是非常非法的。
var $From = "someguy@whatever.com";
是您尝试隐藏电子邮件地址的唯一选择。但无论你的电子邮件是什么,都会刻上IP。知道自己在做什么的人仍然可以将电子邮件追溯到源。