我在内网网页中有以下 vb.net 代码:
Sub SendEmail()
MMsg = New MailMessage
MMsg.BodyFormat = MailFormat.Html
MMsg.From = "intranet@internal_company_name.com"
MMsg.To = "someone@internal_company_name.com"
MMsg.Subject = "subject goes here"
MMsg.Body = "body goes here"
SmtpMail.SmtpServer = "smpt server goes here"
SmtpMail.Send(MMsg)
End Sub
只要MMsg.To
仅包含公司内部电子邮件地址,即MMsg.To = "someone@internal_company_name.com;someone_else@internal_company_name.com"
. 当我尝试将外部公司电子邮件添加到 MMsg.To 时,即在内MMsg.To = "someone@internal_company_name.com;someone@extermal_company_name.com"
网网页上提交表单时,我收到以下错误消息:
服务器拒绝了一个或多个收件人地址。服务器响应为:550 5.7.1 Unable to relay for someone@extermal_company.com
但是,内部电子邮件已成功接收,并在表单上处理了所有内容。这只是外部公司没有收到的外部电子邮件,以及当用户按下提交按钮时出现在用户屏幕上的错误。
我对此进行了搜索,一些解决方案建议我将localhost ip地址和Intranet服务器ip地址添加到Intranet上的iis中。我已经这样做了,它没有任何区别。不确定我是否应该在这样做之后重新启动 iis,就像在 linux 服务器上对 apache 进行更改时必须重新启动 apache 一样?
还是因为我们有一个真正的 smtp 服务器,它与实际的 Intranet 服务器是分开的,而我试图将 IP 地址添加到 Intranet 服务器中 iis 中的某个虚拟 smtp 服务器?
还是完全不同的东西?