asp-classic - 如何防止 Outlook.office.com 在电子邮件中显示消息源

标签 asp-classic iis-8 windows-server

我们的俱乐部董事正在使用 online.outlook.com 作为消息传递的网络邮件解决方案,我注意到一些奇怪的事情,虽然从 Thunderbird 等邮件客户端发送给董事的消息看起来不错,但从我们的在线网络表单发送的任何电子邮件看起来一团乱。

例如...

Contact = 192.168.0.2 via /contact.asp? 
 ID=7&Subject=Text+format&Name=John&Email=john%40example.com&Message=Click+inside+calendar+to+add+event%2C+move+or+resize+existing+events%2C+select+multiple+days%2C+etc.&g-recaptcha-response=03AGdBq26BbA8M9TkyW521mNLZ6nksqV4EdzajclTJ653GsN4E3opCUKEdrt5hA1orva_V3OF7TghktsatMauhu1Oue6TzMF2xO1wPssI7PCOiwMKcdVGWEprbRkaBxKhyJWo52vFNiuN3cO8xobvydyNcbKyYqPNWn0dZVwhN2Tav4WRQWOp5x1-0lANfpVBtVz8RaxoeAMii5e97tgCbGb06y0VjusA6zYappXDl__E95Zm5Lxm7TakVGhWx-SzRpFsmJJB3aCP1TvsEJIDMn3NN31OZA2SpsvblGywTdAUYQoy7VaWghjgcOoOdCZ2y-oE06l2p5OZ5q1Et_w4SClcrouAjL4rge-i8EIucpYJHKJZtPPoDTT9HPlc4h0T0Hab8frxxeB280O22kPicnYo7lAkU_3TCoj39eYEfyv1s40F5m9opfVF5p36mMRRVcpasp6EXjlwVf8FM6fAgqaMYGd6S6_u1vw&Submit=Submit
-------------------------------------------------------------
Name: John
Email: <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="7913161117391c01181409151c571a1614" rel="noreferrer noopener nofollow">[email protected]</a>
Subject: Text format
-------------------------------------------------------------

Dear John

Click inside calendar to add event, move or resize existing events, select multiple days, etc.

不应显示“姓名:John”上方的所有内容,并且从 Thunderbird 发送电子邮件时也不会显示。

我在邮件页面上使用的代码看起来像......

Set ObjSendMail = CreateObject("CDO.Message")
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... /sendusing") = 2 'Send the message using the network (SMTP over the network).
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... smtpserver") = strMailServer
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... thenticate") = strSmtpAuthenticate
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... ndusername") = strSmptAuthUser
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... ndpassword") = strSmptAuthPass
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... serverport") = 25
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... smtpusessl") = False 'Use SSL for the connection (True or False)
ObjSendMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/config ... iontimeout") = 60
ObjSendMail.Configuration.Fields.Update
ObjSendMail.To = strName & " <" & strEmail & ">"
ObjSendMail.Subject = strSubject
ObjSendMail.From = strFromName & " <" & strFromEmail & ">"
ObjSendMail.ReplyTo = strSender & " <" & strSenderEmail & ">"
ObjSendMail.BodyPart.Charset = "UTF-8"
ObjSendMail.TextBody = strEmailBody
ObjSendMail.TextBodyPart.Charset = "UTF-8"
On Error Resume Next
ObjSendMail.Send
Set ObjSendMail = Nothing 

页面的字符集设置为 UTF-8。

What it looks like in Outlook

有人以前见过这种情况并知道如何防止它吗?

最佳答案

我遇到了类似的问题,花了几天时间试图解决它。最后修复起来很简单,但很难理解为什么会这样。但我终于可以发送电子邮件正文中不包含 header 数据的电子邮件。

我发现我的所有页面都使用包含函数集合的相同 include.asp。当我禁用任何使用服务器变量(例如...)时,我解决了问题

strCheckIPnumber = Request.ServerVariables("REMOTE_ADDR")

我不想丢失这些服务器变量,因此我将它们的集合设置为有条件的,以便电子邮件的网络表单可以排除它们。

关于asp-classic - 如何防止 Outlook.office.com 在电子邮件中显示消息源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72550404/

相关文章:

asp.net - IIS 8 需要哪些 NTFS 权限?

asp.net - IIs 8 将 URL 从 http 重定向到 https

c# - 如何检查是否从服务器访问了exe

curl - 如何在 asp classic 中使用 cURL 发布数据?

sql - 经典的asp存储过程参数

asp.net - 将 ASP.NET 网站与 Web 服务器同步?

python - 无法运行 python 脚本

docker - 如何在启动时启动 Docker 守护程序(Windows 服务)而无需登录?

sql-server - Excel转储需要很长时间

asp-classic - ASP检查请求方法