将传入的电子邮件传输到Windows IIS SMTP上的脚本?

前端之家收集整理的这篇文章主要介绍了将传入的电子邮件传输到Windows IIS SMTP上的脚本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个在Windows IIS上运行的Web应用程序.这个应用程序有一个数据库,其中每个项目都有一个唯一的密钥(1,2,3 ……),以及一个电子邮件地址列表(以及其他内容).

我希望用户使用标识该项目的电子邮件地址向服务器发送电子邮件,然后让服务器将消息中继到该项目的电子邮件地址.例如,如果用户向以下地址发送电子邮件

item-75@myserver.example.com

然后服务器将收到电子邮件并将其传递给脚本.该脚本将在数据库查询项目75以获取电子邮件地址列表,然后重新发送电子邮件.

我可以在使用sendmail的unix系统上轻松完成此操作,但我不知道是否可以在Windows系统上完成类似的设置(或者是否需要其他软件).

(这听起来像你想要实现像craigslist这样的功能).

IIS SMTP服务可以发送电子邮件,也可以接受电子邮件.

这是你想要做的.

配置IIS SMTP服务以接受域的电子邮件(您可以在域SMTP下的IIS SMTP服务的属性中配置它).说域名“myserver.example.com”

然后,在DNS服务器中,配置指向“myserver.example.com”的MX记录.

现在,当电子邮件发送到您的IIS SMTP服务器时,它实际上将被放置在您的mailroot / drop文件夹中(您也可以在IIS SMTP服务属性中更改此文件夹).

现在您正在接受电子邮件,下一步是编写一个脚本,该脚本将:

1)解析电子邮件.

2)相应地修改它们(你只想更改“到”地址吗?).

3)如果要重新发送电子邮件,则需要相应地修改它们.
您需要添加一个X-Sender标头,用于标识发送电子邮件的电子邮件地址,以及一个X-Receiver标头,用于接收该电子邮件的每个收件人.以下是修改后的示例电子邮件

X-Sender: me@mywebsite.com
X-Receiver: recip1@theirdomain.com
X-Receiver: recip2@theirdomain.com
From: "jim bob" <jim@example.com>
To: <item-75@myserver.example.com>
Subject: test
MIME-Version: 1.0
Content-Type: text/plain;
Message-ID: <024f01c9e130$b3eca500$0401a8c0@local>


test

获得此修改后的内容后,您需要将其写入mailroot / pickup目录中的文件.请务必使用唯一的名称.

IIS SMTP服务将通过,接收电子邮件并将其中继,使用X-Sender作为MAIL FROM地址发送电子邮件,并将其发送到每个X-Receiver标头中列出的每个电子邮件地址.

4)将此脚本作为计划任务运行.另一个选择是将其构建为Windows服务,或者实现类似filesystemwatcher的功能,每次将电子邮件创建为文件时它都会执行.

5)所有这一切的另一个选择是实际实现一个SMTP事件接收器,但我认为这对你想要做的事情来说太过分了,并且可能会产生比它解决的更多麻烦.如果我喜欢疼痛,我只会去事件接收路线.

希望我没有像泥一样清楚.

猜你在找的Windows相关文章