отправка почты успешно выполняется в localhost, но не при публикации на сервере
Привет,
Я пытаюсь отправить почту из gmail, и она успешно отправляется в localhost
но когда публиковали сайт на сервере не отправляли
здесь есть помощь?
это мой код.
MailMessage mail = new MailMessage(); mail.Subject = strSubject; mail.From = new MailAddress("xyz@gmail.com"); mail.To.Add(ToEmail); mail.Bcc.Add("abc@gmail.com"); mail.Subject = strSubject; mail.Body = strBody; mail.IsBodyHtml = true; SmtpClient smtp = new SmtpClient("smtp.gmail.com", 25); smtp.EnableSsl = true; NetworkCredential netCre = new NetworkCredential("xyz@gmail.com", "myPassword"); smtp.Credentials = netCre; try { smtp.Send(mail); } catch (Exception ex) { if (ex.InnerException != null) { string exInner = ex.InnerException.ToString(); } msg = false; }
Sergey Alexandrovich Kryukov
Он будет успешно пинговать, если машина подключена к интернету? Зачем пинговать его снова?
—СА
Sergey Alexandrovich Kryukov
Одна несвязанная проблема: поймать исключение. Во-первых, вы блокируете распространение исключений, молча. Во-вторых, ваше назначение InnerException может быть неплохой идеей, но она ничего не делает; вы должны повторно создать исключение. В-третьих, как правило, довольно плохо обрабатывать исключения слишком локально.
Кстати, почему бы не использовать SMTP-сервер хостинг-провайдера? Это самое обычное дело.
—СА
Michael_Davies
Gmail обычно использует порт 465 для SMTP, вы пробовали это вместо 25.