我在我的某个网站上添加了cfmail
代码,代码在我的开发人员服务器上工作正常,但是当我将其上传到制作时,它不想工作。我检查了日志文件,CF没有向我显示任何错误或未送达的电子邮件。我还将我的代码与其他工作网站进行了比较,但我没有看到任何可能导致问题的差异。
以下是我的代码,如果您发现错误,请告诉我,并且还要记住此代码适用于与生产服务器具有相同配置的开发服务器。
<cfif sjResponse['szIsApproved'] eq '1' >
<cfmail to="#Email#" type="html"
from="#trim(replace(myStruct.sitename, " ", "", "all"))#"
subject="Your credit card has been approved for processing">
<cfmodule template="example.cfm" attributeCollection="#myStruct#">
</cfmail>
</cfif>
感谢您的帮助
答案:
from="#trim(replace(myStruct.sitename, " ", "", "all"))#"
那是我的错。我在代码中有错误的变量。 我不得不改为使用myStruct.email,而我只是看到它了
答案 0 :(得分:1)
正如Duncan所说,检查生产服务器上CF管理员的邮件服务器。
您的cfmail标记未指定“server”参数,因此它将默认为CF管理员中设置的任何内容。如果在开发服务器上的CF管理员中设置了这个,而不是生产服务器,那么这可以解释为什么它可以在dev上运行而不是prod。
答案 1 :(得分:1)
是的,请务必检查CF管理员中的邮件服务器设置。您还可以通过将邮件服务器信息放在cfmail标记中来尝试绕过这些设置。以下是cfmail的cfdocs链接:http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-7f8e.html
答案 2 :(得分:0)
检查生产服务器上CF管理员中的邮件服务器。 CF服务器可以连接到它吗?
检查您的邮件服务器日志。
答案 3 :(得分:0)
from="#trim(replace(myStruct.sitename, " ", "", "all"))#"
那是我的错。我在代码中有错误的变量。我不得不改为使用myStruct.email,而我只是看到它了