我选择了这个脚本,因为它有一个CAPTCHA和文件上传/附件。 http://www.html-form-guide.com/contact-form/php-contact-form-tutorial.html/comment-page-2#comments
我知道它已经过时了,脚本编写者不会在他们的网站上支持它。
表格位于HostGator的网址(当然是假的,只是使用它)“abcinc.com”。公司/网站所有者在Exchange Server 2013上发送电子邮件,并使用“abc.com”作为邮件。
表单创建的电子邮件 - 我在Google / Gmail帐户中收到该电子邮件。我已经在这个服务器上使用了这个脚本,可以让其他六个人(不同的网站组织)接收它们(使用Google / Gmail,Hostgator邮件)。
此客户端无法通过“abc.com”在其Exchange Server(2013)上接收这些电子邮件(是的,我的表单中的电子邮件地址正确无误)。
我只是想学点东西。这就是我在这里的原因。我不是一个php程序员,我不是一个cPanel,Exchange Server或任何类型的邮件/服务器demi-god。我所知道的是我选择了一个脚本并对其进行了修改,在HostGator上进行了托管,并且相信当使用表格时HostGator发送的邮件是电子邮件地址的形式。
Exchange技术支持人员给我写了这个:
我需要知道您用来发送电子邮件的SMTP服务以及是否 您可以使用ABC.com的真实电子邮件地址 从表单发送电子邮件。
请查看下面的文章并尝试镜像设置 尽你所能。另外,请给我们一个实际的电子邮件地址 如果可能,abcinc.com发送电子邮件。我可以为它创建一个新的 如果您愿意,您或您可以使用现有的。你做完之后 这些更改或如果您有任何疑问,请与我联系 我们可以做最后的测试。
这是一个包含通常用于网络的所有设置的KB 应用程序和其他设备能够使用我们的服务器发送 如果Web应用程序正在执行发送部分,请查看是否 有可能显示的任何日志 如何配置您的打印机,扫描仪,复印机,Web脚本或SMTP应用程序以使用Exchange帐户 http://hosting.intermedia.net/support/kb/viewKBArticle.asp?id=2167
以下是您帐户的具体设置。注意:这是一个 Exchange 2013服务器。(我这里没有包含设置)
因此,在试图通读我的大脑爆炸后。当我恢复时,我登录HostGator支持问他们......难道我不知道我想问他们什么。
他们告诉我给他们我的cPanel IP。
然后我问Exchange Server的人是否可以给我一个他们认识的脚本。是啊,我做了。 : - \
所以我的问题是 - 是什么让Exchange Server不接收这些电子邮件?
大多数情况下,我可以比10分钟前受到更多的教育。
〜凯
PS / EDITED
我回来补充说,我只是尝试了另一种(基本)形式,他们收到了它。
从未访问Exchange Server的表单中,这是标题信息:
To: jill@abc.com
Subject: Contact form submission from Kaye
X-PHP-Script: www.abcinc.com/estimates.php for 76.3.118.189
Date: Fri, 13 Sep 2013 15:37:30 -0500
From: Kaye <nobody@www.abc.com>
Reply-To: kaye@mydomain.com
Message-ID: <be82ada010a752b86440e86e5c24ca0a@www.abcinc.com>
X-Priority: 3
X-Mailer: PHPMailer (phpmailer.sourceforge.net) [version 2.0.4]
MIME-Version: 1.0
Content-Type: multipart/alternative;
在确实有效的表单中,它使用用户在表单中输入的实际电子邮件作为FROM电子邮件地址 - 而不是服务器。这可能是Exchange Server的问题吗?
function GetFromAddress()
{
if(!empty($this->from_address))
{
return $this->from_address;
}
$host = $_SERVER['SERVER_NAME'];
$from ="nobody@$host";
return $from;
}
答案 0 :(得分:2)
大多数托管Exchange提供商都包含过滤器,用于检查与发件人地址关联的域的SPF记录或MX记录。由于www。[your-domain] .com(因为“www。”)很可能既没有SPF也没有MX记录,因此托管的Exchange提供商的SPAM阻止程序将邮件标记为垃圾邮件,因为它无法验证消息来自的IP地址实际上与www。[your-domain] .com-或者(更可能)www。[your-domain] .com没有MX或SPF记录合法关联与之关联,因此服务器假定消息必须是垃圾(因为为什么没有为电子邮件配置的域名是否发送电子邮件?)。 [your-domain] .com可能有这些记录,但不一定涵盖“www”。子域。
我之前根据自己的亲身经历处理了此问题,并发现Google Apps会处理各种托管Exchange提供商不会处理的邮件。有些托管的Exchange提供商甚至不会让您看到被阻止的内容(例如GoDaddy),因此很难进行故障排除。
现在,在您编辑的帖子中,您提到该脚本现在正在发送“来自”用户输入的地址并且这有帮助。你认为这有帮助是正确的。即使发送IP地址与发件人域名不匹配,接收服务器也可能有一个策略来接受没有特定原因的消息(例如黑名单条目或完全缺少域名的MX / SPF记录) ,即使IP与域名不匹配。
这些标题......
From: Kaye <nobody@www.abc.com>
Reply-To: kaye@mydomain.com
...有缺陷,因为接收服务器主要关注“来自”地址。回复地址虽然可能有效,但不会增加邮件的可信度,如果“发件人”地址无效或列入黑名单,邮件服务器将不会花时间查看邮件。
此标题......
Message-ID: <be82ada010a752b86440e86e5c24ca0a@www.abcinc.com>
......无论如何都不会产生任何影响,尽管有“www”。在里面。 Message-ID只需要是唯一的,其他任何事情都不重要。