programing

web.config에서 SMTP 설정을 구성하는 방법

easyjava 2023. 5. 9. 23:11
반응형

web.config에서 SMTP 설정을 구성하는 방법

상속된 웹 사이트의 전자 메일 문제를 해결하려고 하는데 코드(즉, 컴파일된 파일만)에 액세스할 수 없습니다.이 사이트는 다른 SMTP 서버를 가진 새 웹 서버에서 호스팅되어야 합니다.

코드의 비트를 압축 해제하면 아래와 같은 코드 스니펫의 방법으로 이메일이 전송되고 SMTP가 smtpMail로 설정되는 것을 볼 수 있습니다.SmtpServer="localhost"이지만 새 웹 서버의 SMTP 서버는 "relay.tagadab.com "입니다. 어떻게 하면 web.config에서 이를 구성하여 localhost가 "relay.tagadab.com "로 지정되도록 할 수 있습니까?

Imports Microsoft.VisualBasic, System.Web.Mail

Shared Sub SendMail(ByVal ToAdd, ByVal FromAdd, ByVal Message, ByVal Subject)

    Dim msgMail As New MailMessage()

    msgMail.To = ToAdd
    msgMail.From = FromAdd
    msgMail.Subject = Subject
    msgMail.Headers.Add("X-Mailer", "ASP.NET")

    msgMail.BodyFormat = MailFormat.Text
    msgMail.Body = Message
    'SmtpMail.SmtpServer = "mail.the-radiator.com"
    SmtpMail.SmtpServer = "localhost"
    SmtpMail.Send(msgMail)

End Sub

이 섹션을 web.config에 추가했지만 차이가 없습니다.

<system.net>
    <mailSettings>
        <smtp>
            <network host="relay.tagadab.com" port="25" />
        </smtp>
     </mailSettings>
</system.net>

값을 설정함으로써<mailSettings>web.config의 섹션을 새로 시작할 수 있습니다.SmtpClient클라이언트는 이러한 설정을 사용합니다.

https://learn.microsoft.com/en-us/dotnet/api/system.net.mail.smtpclient.-ctor?view=net-6.0#system-net-mail-smtpclient-ctor

Web.Config 파일:

<configuration>
 <system.net>
        <mailSettings>
            <smtp from="yourmail@gmail.com">
                <network host="smtp.gmail.com" 
                 port="587" 
                 userName="yourmail@gmail.com" 
                 password="yourpassword" 
                 enableSsl="true"/>
            </smtp>
        </mailSettings>
</system.net>
</configuration>

C#:

SmtpClient smtpClient = new SmtpClient();
smtpClient.Send(msgMail);

그러나 인증이 필요한 경우 사용자 이름과 암호에 대해 보다 안전한 구성 공급자를 사용하고 네트워크 인증 정보 개체로 설정하는 것이 좋습니다.

C#:

SmtpClient smtpClient = 
    new SmtpClient(_configuration.SmtpHost, _configuration.SmtpPort);
smtpClient.Credentials = 
    new NetworkCredential(_configuration.EmailUsername, _configuration.EmailPassword)
smtpClient.Send(msgMail);

저는 클린트 이스트우드에게 답변할 담당자가 부족하며, 웹.config 파일에 대해 수락된 답변이 맞습니다.코드 차이를 위해 이 값을 에 추가합니다.

mailSettings가 Web.config에 설정되어 있으면 SmtpClient 및 를 새로 설치하는 것 외에는 다른 작업을 수행할 필요가 없습니다.전송합니다. 참조할 필요 없이 연결 자체를 찾습니다.다음에서 C#을 변경할 수 있습니다.

SmtpClient smtpClient = new SmtpClient("smtp.sender.you", Convert.ToInt32(587));
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("username", "password");
smtpClient.Credentials = credentials;
smtpClient.Send(msgMail);  

대상:

SmtpClient smtpClient = new SmtpClient();
smtpClient.Send(msgMail);

메일을 원격 서버로 회송하도록 IIS를 설정합니다.자세한 내용은 IIS 버전에 따라 크게 다릅니다.IIS 7.5의 경우:

  1. IIS 관리자 열기
  2. 필요한 경우 서버에 연결
  3. 서버 노드를 선택합니다. ASP의 오른쪽에 SMTP 옵션이 표시됩니다.NET 섹션
  4. SMTP 아이콘을 두 번 클릭합니다.
  5. "SMTP 서버로 전자우편 배달" 항목을 선택한 후 서버 이름, 자격 증명 등을 입력합니다.

내 web.config 이메일 설정 스크린샷

이것은 예타 포럼 이메일을 보내는 웹.config 파일의 실제 코드이며 스타터 트랙 헬프 데스크에서 사용하는 것과 동일한 코드입니다.

언급URL : https://stackoverflow.com/questions/19233108/how-to-configure-smtp-settings-in-web-config

반응형