SMTP(송신 메일 전송 프로토콜, Simple Mail Transfer Protocol)는 이메일을 송신하기 위해 사용되는 인터넷 표준 통신 프로토콜입니다. SMTP 서버는 이메일 클라이언트(예: 아웃룩, 썬더버드, 웹메일 등)에서 작성한 이메일을 수신자의 이메일 서버로 전송하는 역할을 합니다.
Google 계정에 로그인.
"보안" 섹션으로 이동.
"Google에 로그인"에서 "앱 비밀번호" 선택.
계정 비밀번호를 입력하고, "앱 비밀번호" 생성 화면으로 이동.
(또는 아래와 같이 검색을 수행하여 "앱 비밀번호" 생성 화면으로 이동.
앱 및 기기 선택 후 "생성" 클릭.
생성된 비밀번호를 기록해 둡니다.
GMass SMTP 테스트 페이지로 이동.
테스트 양식에 다음 정보 입력:
SMTP 서버: smtp.gmail.com
SMTP 포트: 587
(추천) 또는 465
> 포트 465: SSL(Secure Sockets Layer)을 통한 암호화된 이메일 전송에 사용됩니다. 초기에는 SSL용 포트로 사용되었으나, 공식적으로는 더 이상 SMTP에 사용되지 않습니다. 그러나 여전히 많은 서버와 클라이언트가 이 포트를 지원합니다.
> 포트 587: TLS(Transport Layer Security)를 통한 이메일 전송에 사용되는 표준 포트입니다. 현재 대부분의 SMTP 서버와 클라이언트는 이 포트를 사용하여 안전하게 이메일을 전송합니다.
SSL 사용 여부: 예
사용자 이름: Gmail 이메일 주소
비밀번호: 생성한 앱 비밀번호 (공백을 제외한 16글자)
"테스트" 버튼 클릭.
성공 여부 확인.
크게 오류가 없다면, 성공한것임.
settings.py
파일에서 이메일 설정 추가:EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'your_email@gmail.com'
EMAIL_HOST_PASSWORD = 'your_app_password' # 단, 공백을 제외한 16글자.
Django 뷰 또는 스크립트에서 이메일 전송 코드 작성:
from django.core.mail import send_mail
def send_test_email():
send_mail(
'제목',
'본문 내용',
'your_email@gmail.com',
['recipient@example.com'],
fail_silently=False,
)