我无法相信我以前从未注意到这一点,但似乎CFMail不会发送到未在目标邮件服务器上明确设置的电子邮件地址。
这意味着如果我使用'info@somedomainorother.com'并设置了捕获域中的所有电子邮件,CFMail将不会发送到'test@somedomainorother.com'。
这给我带来了大量的问题,因为我正在使用CFMail发送订单确认,成员激活以及其他各种各样的零碎。
无论您对使用收集地址的看法如何,都不能否认人们使用它们因此,在任何情况下,如果用户在我的某个网站中输入化妆地址,他们就不会收到他们的电子邮件。
必须,只需要解决这个问题 - 任何人都可以帮忙吗?
对于refernece,发送到catchall地址时日志中显示的消息是“Invalid Addresses”。
编辑:这是我正在使用的CFMail语法 -
<cfmail to="#Arguments.sEmailAddress#" from="#Application.sAppEmailAddress#" subject="Stock reminder confirmation: #Local.qGetProductDetails.sProductName# - #Application.sCompanyName#" type="HTML" server="#Application.sAppEmailServer#" username="#Application.sAppEmailAddress#" password="#Application.sAppEmailPassword#">
转换为:
<cfmail to="thisisatest@somedomainorother.com" from="application@mydomainname.com" subject="Stock reminder confirmation: Some product - My Company" type="HTML" server="mail.mydomainname.com" username="application@mydomainname.com" password="XXXXXX">
所有适用于info@somedomainorother.com但不适用于randombunchofcharacters@somedomainorother.com。
当然需要注意的是,在所有其他方面,catch-all工作正常,来自邮件客户端的测试电子邮件工作正常。
答案 0 :(得分:8)
它不关心电子邮件有效性的ColdFusion,它是SMTP服务器。 CF只关心格式良好的电子邮件地址。
如果您启动了一个到您的邮件服务器的telnet会话并尝试使用相同的地址,我相信它会有相同的结果。
SMTP连接的调试提示: http://www.talkingtree.com/blog/index.cfm/2004/11/22/debug-smtp
答案 1 :(得分:2)
我可以看到您的CFMAIL代码设置吗?只要电子邮件地址格式正确,CFMAIL就不会关心。
答案 2 :(得分:2)
Urgh!
原来这是服务器的问题。出于某种原因,服务器范围内的电子邮件帐户已经停止正常工作。在给我的托管服务提供商发送电子邮件之后,一切正常,没有代码更改。
他们对导致这个问题的原因有些保守,我仍然可以使用电子邮件客户端将邮件发送到地址......
感谢任何情况下的帮助。 ;)