Мы наследовали классический сайт ASP от агентства по дизайну, которое просто хотело, чтобы мы сделали поиск и замену для изменения хостов SMTP. Без проблем, мы - магазин PHP, но можем повернуть наши руки к большинству вещей.
На дальнейшем расследовании было обнаружено, что мы должны пройти проверку подлинности с новым сервером SMTP.
Немного поиска с помощью Google приводит нас полагать, что он использует ASPMail 4, и согласно документам он не делает аутентификации.
http://www.serverobjects.com/comp/Aspmail4.htm
Мы просто погуглили "SMTPsvg. Почтовая программа" от этого вызова:
Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
Я корректен в своих предположениях, что вышеупомянутое является ASPMail 4, и APSMAil не делает аутентификации?
Что я могу использовать для аутентификации с сервером SMTP, если я должен заменить Aspmail?
Как сказано, используйте CDO.
set config = CreateObject("CDO.Configuration")
sch = "http://schemas.microsoft.com/cdo/configuration/"
with config.Fields
.item(sch & "sendusing") = 2 ' cdoSendUsingPort
.item(sch & "smtpserver") = application("smtpserver")
.item(sch & "smtpserverport") = application("smtpserverport")
.item(sch & "smtpauthenticate") = 1 'basic auth
.item(sch & "sendusername") = application("sendusername")
.item(sch & "sendpassword") = application("sendpassword")
.update
end with
with CreateObject("CDO.Message")
.configuration = config
.to = ...
.from = ...
.subject = ....
.HTMLBody = ....
call .send()
end with
Документацию по каждому полю объекта конфигурации можно найти здесь !
Да Верно. Почему бы тебе не перейти на CDO? Эта статья может вам помочь.
Убедитесь, что хостинг-провайдер поддерживает .Net Framework 2.0 (большинство из них поддерживает), в таком случае переименуйте файл .asp в .aspx, удалите код, отправляющий электронное письмо, и напишите простой код:
http: // www .systemwebmail.com / faq / 3.8.aspx
С уважением
Томас
Согласно документам здесь ASPMail 4.x просто не поддерживает аутентификацию. Похоже, вам придется переключиться на другой компонент SMTP на основе COM.