我正在尝试创建一个电子邮件签名,该签名将根据收件人的 IP 地址所处的状态在收件人的计算机上以不同的方式显示。我想知道是否有任何已知的方法可以完成此任务?
答案1
如果您可以将图像插入托管在您控制的服务器上的电子邮件签名中,则可以让您的服务器动态生成该图像。然后,您可以根据请求它的 IP 地址对其进行更改。只要将查看器设置为显示电子邮件中的图像,就可以了。
答案2
根据您的设置... 可能有几种方法可以实现这一点... 并且您可能必须使用几种方法才能使其半可靠地工作。为了可靠地实现这一点,您必须克服几个障碍。
- 您唯一可以访问的 IP 地址是进行电子邮件交换的邮件服务器的 IP 地址。人们经常将他们的邮件托管或反垃圾邮件/病毒代理服务外包给几乎遍布世界的任何地方的第三方……因此……简单地将 IP 地址与位置关联将被证明是非常不准确的。
- 转到消息头本身可能实际上包含正确的信息......但是那里列出的地址数量之多几乎使得任何自动脚本几乎不可能正确识别实际发件人的 IP。
- IP 地址地理位置信息通常不太准确。通常他们可以追踪到 ISP 服务的区域……但有时只能追踪到整个国家。如果他们在星巴克或麦当劳使用免费 wifi 发送电子邮件怎么办?……或者通过智能手机?那你就真的倒霉了。
- 无需根据您的域名识别位置信息。也就是说,DNS 注册商的公共数据库中包含的联系信息可能完全无法识别实际所有者。它可能根本没有任何识别特征。
- 在绝大多数情况下,使用动态图像或 javascript/其他脚本语言都是愚蠢之举。大多数电子邮件客户端都会阻止下载外部图像,而不考虑发件人……所有电子邮件客户端都应阻止任何/所有形式的脚本。
老实说,最好的办法是建立一个已知客户电子邮件地址的数据库,并将您的位置信息放入其中并根据需要进行更新。从那里,您通常可以在电子邮件客户端级别或邮件服务器本身向电子邮件添加签名……等等……
这不是一个简单的任务……这也是为什么电子邮件世界中有如此多的垃圾邮件。没有人能够准确地追踪电子邮件的来源/发件人。祝你好运。