Отправка электронных писем Sitecore через Gmail - PullRequest
1 голос
/ 16 сентября 2010

Я пытаюсь заставить Sitecore отправлять сообщения через gmail-аккаунт, но это не сработает. Это мои настройки в web.config:

  <setting name="MailServer" value="smtp.gmail.com" />
  <!--  MAIL SERVER USER
        If the SMTP server requires login, enter the user name in this setting
  -->
  <setting name="MailServerUserName" value="adress@gmail.com" />
  <!--  MAIL SERVER PASSWORD
        If the SMTP server requires login, enter the password in this setting
  -->
  <setting name="MailServerPassword" value="secret" />
  <!--  MAIL SERVER PORT
        If the SMTP server requires a custom port number, enter the value in this setting.
        The default value is: 25
  -->
  <setting name="MailServerPort" value="587" />

А это ошибка из журнала:

6068 09:14:57 ERROR Failed to send analytics report
Exception: System.Net.Mail.SmtpException
Message: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first.     u9sm3416817eeh.17
Source: System
at System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, String response)
at System.Net.Mail.MailCommand.Send(SmtpConnection conn, Byte[] command, String from)
at System.Net.Mail.SmtpTransport.SendMail(MailAddress sender, MailAddressCollection recipients, String deliveryNotify, SmtpFailedRecipientException& exception)
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at Sitecore.MainUtil.SendMail(MailMessage message)
at Sitecore.Analytics.Reports.ReportMailer.Mail(String exportedReportFileName, IEnumerable`1 recipients, String reportTitle, Boolean embedFile, Boolean deleteFile)

Я знаю, что это как-то связано с gmail, требующим какого-то безопасного соединения, но как мне заставить Sitecore это обеспечить?

Ответы [ 4 ]

2 голосов
/ 14 декабря 2017

В 8.2 обновление 4 (не знаю о предыдущих обновлениях / выпусках) есть специальная настройка для этого:

<setting name="MailServerUseSsl" value="true" />
2 голосов
/ 16 сентября 2010

Сообщение: SMTP-сервер требует защищенного соединения, или клиент не был аутентифицирован. Ответ сервера был: 5.7.0 Сначала необходимо выполнить команду STARTTLS.

Gmail требует подключения TLS. Можете попробовать заглянуть в stunnel.

В любом случае, serverfault или superuser.com, вероятно, более уместны.

1 голос
/ 16 сентября 2010

Функция SendMail в Sitecore.MainUtil не имеет возможности установить для SmtpClient.EnableSsl значение True. На данный момент, похоже, вам нужно будет найти другой SMTP-сервер для использования.

Возможно, вы захотите зарегистрировать это как запрос функции с Sitecore.

0 голосов
/ 20 сентября 2010

Я успешно подключился к GMAIL с помощью модуля Email Campaign, который имеет функцию STARTTLS.Вот мои настройки:

     <!--Set it to "true" if you want use the SMTP settings below. You should purchase the right of using the "UseLocalMTA" setting first.-->
     <setting name="UseLocalMTA" value="true" />
     <setting name="SMTP.Server" value="smtp.gmail.com" />
     <setting name="SMTP.Port" value="587" />
     <setting name="SMTP.LoginDomain" value="" />
     <setting name="SMTP.UserName" value="user@gmail.com" />
     <setting name="SMTP.Password" value="12345" />
     <setting name="SMTP.AuthMethod" value="PLAIN" />
     <setting name="SMTP.StartTLS" value="true" />
...