2012-07-06 4 views
0

많은 이메일 주소로 이메일을 보내는 데 도움이되는 웹 사이트를 개설 할 것입니다. 이 사이트는 사용자 등록 계정을 허용합니다. 사용자가 자신의 전자 메일 주소 (예 : [email protected], [email protected])를 추가하면 보내려는 전자 메일 목록을 만들 수 있습니다. 그런 다음 보내기를 클릭하면 목록에있는 사람들에게 전자 메일이 전송됩니다.자동 이메일 보내기 신청

그래서 질문은 그의 이메일 정보를 설정하는 단계가 필요합니까? 나는 그가 그의 이메일을 위해 smtp 서버, 항구를 입력 할 수 있었다는 것을 의미했다. 예 : 그는 gmail -> [email protected]을 사용합니다. 그는 입력해야합니다

Google Gmail 수신 메일 서버 (POP3) - pop.gmail.com (SSL 사용 가능, 포트 995) 발신 메일 서버 - 해당 지역 ISP가 제공 한 SMTP 메일 서버 주소 또는 smtp.gmail을 사용하십시오. .com (TLS 사용 가능, 포트 587)

+0

Google 메일의 메일 만 사용하려는 경우 모두 동일한 SMTP를 사용합니다. 당신은 그것을 한 번만 필요로합니다. SMTP 개체를 인스턴스화 할 때 smtp.gmail.com을 사용하십시오. 또한 뚜렷한 메일을 사용하려는 경우 각 메일에 대해 smpt를 제공해야합니다. –

+0

본인의 이메일 계정을 사용하여 이메일을 보내시겠습니까? 아니면 사용자의 이메일 주소를 사용하여 전송할 예정입니까? – Talon876

+0

@ELVieejo : 모든 사용자 이메일에 distincts 이메일을 사용하려고합니다. –

답변

2

작동하지 않습니다.

1) 많은 사용자가 전자 메일 서버 세부 정보를 알 수 없습니다.

2) 많은 메일 서버는 도메인에없는 IP의 발신 메일을 허용하지 않습니다.

+0

자, 조언이 있으십니까? –

+0

예. 현실이 프로젝트가 효과가 없다고 말하면 프로젝트를하지 마십시오. 당신이 초현실적 인 것을 시도 할 때 나쁜 아이디어는 내기가되지 않습니다. SPF 및 DOmain 키는 이러한 스팸의 유형을 정확히 막기 위해 수행됩니다. – TomTom

0

웹 서버와 동일한 서버에 SMTP 서버를 설치하거나 사용하도록 설정할 수 있습니다. 사용자가 입력 할 수있는 페이지를 입력하십시오. 주소는 &입니다. 서버에서 전자 메일을 보내지 만 "보낸 사람"전자 메일 ID를 "스푸핑"하십시오. 이 방법으로 사용자는 이메일 서버 세부 정보를 입력 할 필요가 없습니다.

public void SendEmailAsync(string id, string to, string from, string subject, string message, SendCompletedEventHandler callback) 
    { 
     // Command line argument must the the SMTP host. 
     var client = new SmtpClient(ConfigurationManager.AppSettings["SmtpServer"]); 

     if (bool.Parse(ConfigurationManager.AppSettings["PickupDirectoryFromIis"])) 
     { 
      client.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis; 
     } 


     // Specify the message content. 
     var message = new MailMessage(from, to) 
          { 
           Subject = subject, 
           Body = message, 
           BodyEncoding = Encoding.UTF8, 
           SubjectEncoding = Encoding.UTF8 
          }; 

     client.SendCompleted += callback; 
     try 
     { 
      client.SendAsync(message, id); 
     } 
     catch (SmtpException e) 
     { 
      this.EventLog.WriteEntry(e.ToString(), EventLogEntryType.Error); 
     } 
    } 
+0

감사합니다. "이메일을 읽었는지 확인하는 방법"에 대한 질문이 있으십니까? ... –

+0

@ "Bac Clunky": SendGrid와 같은 외부 이메일 제공 업체에서 맡은 일. –