我通过亚马逊SES发送HTML电子邮件。
以下是电子邮件示例 -
嘿John doe,
山姆大叔刚申请工作需要有人发帖 craigs list.com 你在JobHouse上发布。
干杯。
现在,Gmail(可能还有其他电子邮件客户端)会向list.com
添加超链接。如何防止这种情况?
答案 0 :(得分:0)
根据我的理解,当您发送电子邮件时,如果您没有在HTML内容中创建超链接,那么您无法控制客户端如何呈现内容。如果有人使用Gmail,Outlook,Mail等查看该电子邮件,并且他们发现他们确定为“模式”,则客户端应用程序将替换这些值。
参见:http://php.net/manual/en/function.imagettftext.php
例如,您可以创建一个简单的PHP脚本,并将Web地址作为URL参数传递,并返回带有该URL的图像。然后,您可以更改HTML代码:
<img src="domain.com/path/to/your/text.php?text=craigslist.com" />
除了执行此类操作之外,您无法控制客户端应用程序呈现文本的方式。
答案 1 :(得分:0)
理论上,您可以在电子邮件生成中使用<text>yoururl.com</text>
。
虽然我不是百分之百的,如果它可以在GMail中工作,因为我目前无需测试。
答案 2 :(得分:0)
服务器端解决方案:
用零宽度空格字符围绕所有点(“。”)和 at-signs (“@”)。
示例(PHP):
$email = 'name@server.com';
$email = str_replace (
array('@', '.'),
array('​@​', '​.​'),
$email
);
或者,您可以使用单位分隔符(
)或记录分隔符(
),而不是上面的零宽度空格字符(​
)。 / p>
从视觉上看,电子邮件/网站地址似乎正常,就像替换之前一样。
注意:替换点和&amp;带有html代码(分别为.
&amp; @
)的at-signs无法解决问题。 Gmail的算法仍将字符串解释为地址。