windows 2008 SMTP 설정 관련

CDO SMTP를 쓰려면 iis6 가상서버를 설치해야한다.
프로그램추가/제거에서 SMPT 서버 설치 2개 선택하고 설치하면 됨.


c:\inetpub\mailroot
디렉토리에 읽기/쓰기 권한을 부여 해야만 CDO 메일이 발송된다.


windows 2008 에서는 사용자 계정 컨트롤이라는게 존재하므로
각각의 경우에 맞는 계정들에게  읽기/쓰기 권한을 줘야 한다.


권한을 주지 않았을 경우는 ‘액세스가 거부되었습니다’ 와 같은 오류가 발생했다.


예를 들자면,


작업스케쥴에 등록해서 vbs 같은것을 돌릴때는
mailroot 디렉토리에 해당 작업 실행 계정 권한을 추가하고


ASP와 같은 웹 스크립트를 돌릴때는
mailroot 디렉토리에 IIS_IUSRS‎ 계정 권한을 추가하라는 것이다.


또한, 아래의 VBS 소스 중 pickup 디렉토리 지정하는부분이 내 경우엔 꼭 필요해져 버렸다.
지정하지 않았을 경우 ‘pickup 디렉터리 경로가 필요하지만 지정되지 않았습니다’ 오류가 발생했다



‘*************************************************************************
‘* CDO 메일 발송
‘*————————————————————————
‘* mail_from = “홍길동<hong@kil.com>”
‘* mail_to (여러사람일 경우는 , 로 구분)
‘* mail_html = “” : “text” : “html”
‘*************************************************************************
Function mail(mail_from, mail_to, mail_subject, mail_body, mail_html, mail_charset, mail_attach)
 On Error Resume Next ‘// 오류 잡기


 Dim objMessage, objConfig, Flds


 SET objMessage = CreateObject(“CDO.Message”)
 SET objConfig = Createobject(“CDO.Configuration”)


 ””””””””” Setting the SMTP Server ””””””””””””
 Dim schema : schema = “http://schemas.microsoft.com/cdo/configuration/
 SET Flds = objConfig.Fields
 With Flds
  .Item(schema & “sendusing”) = 1 ‘// SMTP 위치? 1=로컬 : 2=외부
  .Item(schema & “smtpserver”) = “localhost” ‘// 서버 주소
  .Item(schema & “smtpserverport”) = 25   ‘// 서버 포트
  .Item(schema & “smtpconnectiontimeout”) = 30 ‘// 접속시도 제한시간
  ‘.Item(schema & “smtpauthenticate”) = 1  ‘// SMTP 접속 인증방법 설정
  ‘.item(schema & “sendusername”) = “id@domain” ‘// SMTP 서버에 인증 ID
  ‘.item(schema & “sendpassword”) = “******”  ‘// SMTP 서버에 인증 암호
  ‘.Item(schema & “smtpusessl”) = 1
  .Item(schema & “smtpserverpickupdirectory”) = “C:\inetpub\mailroot\Pickup”
  .update
 End With


 SET objMessage.Configuration = objConfig


 With objMessage
  .From = mail_from
  .To = mail_to
  .CC = “”
  .Subject = mail_subject


  If mail_charset = “” Then mail_charset = “ks_c_5601-1987”


  If LEFT(mail_body, 7) = “http://” Then
   .CreateMHTMLBody mail_body
   ‘echo(mail_body)
  ElseIf LEFT(mail_body, 7) = “file://” Then
   .CreateMHTMLBody mail_body
  Else
   .BodyPart.Charset = mail_charset


   If mail_html = “text” Then
    .TextBody = mail_body
   ElseIf mail_html = “html” Then
    .HTMLBody = mail_body
    .HTMLBodyPart.Charset = mail_charset
   End if
  End if


  If isset(mail_attach) Then
   .AddAttachment mail_attach
  End if


  .DSNOptions = 14
  ‘.Fields(“urn:schemas:mailheader:return-receipt-to”) = “id@domain
  ‘.Fields(“urn:schemas:mailheader:disposition-notification-to”) = “id@domain
  .Fields.update
  .Send ‘// 메일 보내기
 End With


 SET objConfig = Nothing
 SET objMessage = Nothing


 If Err <> 0 Then mail = Err.Description Else mail = “” ‘// 오류 발생하면 오류상세를 반환
End Function
</hong@kil.com>


코멘트 쓰기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.

다음의 HTML 태그와 속성을 사용할 수 있습니다:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



배송정보
배송조회를 하시려면 송장번호를 클릭하세요
배송조회
상품명
주문번호
택배사
송장번호