sendgrid 메일 발송이 안됩니다 ㅠㅠ
884
20 asked
7개월 전에 이 기능을 구현을 했고, python shell 로 메일보내서 1 확인 후 메일 확인, 실제로 회원가입 후 메일 발송되는 것까지 확인을 했습니다.
sendgrid 회원가입은 구글 계정으로, sender 계정 이메일은 naver 이메일로 하였었구요. send_grid_api_key 값은 잘 지정해주었습니다 ㅜㅜ 아직도 python shell 에서 메일을 보내보면 1이 잘 뜨는데 메일이 발송되지 않습니다.. 스팸메일함 전체메일함 다 확인했는데도 안되네요 ㅜㅜㅜㅜ
혹시 몰라서 sender authentication 부분 첨부합니다 ㅜㅜ
class User(AbstractUser):
class GenderChoices(models.TextChoices):
MALE = "M", "남성" #전자는 DB에 저장되는 값, 후자는 실제 보여지는 값
FEMALE = "F", "여성"
sns_url = models.URLField(blank=True)
bio = models.TextField(blank=True)
phone_number = models.CharField(max_length=13, blank=True,
validators=[RegexValidator(r"^010-?[1-9]\d{3}-?{4}$")])
gender = models.CharField(max_length=1, blank=True, choices=GenderChoices.choices)
avatar = models.ImageField(blank=True, upload_to="accounts/avatar/ $Y/%m/%d")
def send_welcome_email(self):
subject = render_to_string("accounts/welcome_email_subject.txt", {
"user": self,
})
content = render_to_string("accounts/welcome_email_content.txt", {
"user": self,
})
sender_email = settings.WELCOME_EMAIL_SENDER
send_mail(subject, content, sender_email, [self.email], fail_silently=False)
# SEND GRID 설정
SENDGRID_API_KEY = os.environ.get("SENDGRID_API_KEY")
EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = 'apikey'
EMAIL_HOST_PASSWORD = SENDGRID_API_KEY
EMAIL_PORT = 587
EMAIL_USE_TLS = True
WELCOME_EMAIL_SENDER = "신상정보라가렸습니다!!@naver.com"각각 models.py 와 common.py 입니다 ㅜㅜ
Answer 3
0
ADMINS = [
('제 이름', '아이디@naver.com')
]
...
# SEND GRID 설정
SENDGRID_API_KEY = os.environ.get("SENDGRID_API_KEY")
EMAIL_HOST = 'smtp.naver.com'
EMAIL_HOST_USER = '네이버아이디'
EMAIL_HOST_PASSWORD = '네이버비밀번호'
EMAIL_PORT = 465
EMAIL_USE_TLS = True
WELCOME_EMAIL_SENDER = "아이디@naver.com"
def send_welcome_email(self):
subject = render_to_string("accounts/welcome_email_subject.txt", {
"user": self,
})
content = render_to_string("accounts/welcome_email_content.txt", {
"user": self,
})
sender_email = settings.WELCOME_EMAIL_SENDER
send_mail(subject, content, sender_email, [self.email], fail_silently=False)이렇게 햇는데 계속
이와 같은 오류가 뜹니다 !! ㅠㅠㅠㅠ
제가 맞게 설정한 건가요? 감사합니다 .. ㅠ
0
안녕하세요. 아래 답변에도 썼지만
네이버 smtp 메일에서는 EMAIL_USE_TLS =True 설정은 지우시고, EMAIL_USE_SSL = True 설정으로 해주세요.
저도 EMAIL_USE_TLS = True 설정으로 해보니, kwonjiwoo 님과 동일한 오류가 발생하네요. EMAIL_USE_SSL = True 설정으로 바꾸시면 해결이 되실 듯 합니다.
화이팅입니다. :-)
0
+) 그리고 EMAIL_HOST_PASSWORD 를 네이버 계정 패스워드로 해야 하나요?
그럼 여기서는 sendgrid api key 를 사용하지 않는 것인지 궁금합니다..
그리고 SEMAIL_USE_TLS 대신 EMAIL_USE_SSL 설정을 해주어야 하는 건가요..
계속 연결이 안되는 오류가 뜨는데 왜이러는지 모르겠네요 ㅠㅠ
0
네이버 smtp 에서는 use tls 설정 대신에 use ssl 설정만 해주시면 됩니다.
제가 방금 테스트해본 settings 입니다. EMAIL_HOST_PASSWORD 에는 네이버 암호를 지정하시면 되는 데, 네이버 계정에 2차 인증이 걸려있으신 경우에는 https://nid.naver.com/user2/help/myInfoV2?m=viewSecurity&lang=ko_KR 페이지를 통해, 별도의 로그인 암호를 할당받아서 지정하셔야 합니다.

아래처럼 애플리케이션 비밀번호를 할당받아서, 생성된 84B***** 암호를 지정하시면 되구요.

그래도 잘 해결이 안 된다면, 프로젝트 전체 코드를 제 메일 help@pyhub.kr 로 보내주시면, 코드를 확인해드리겠습니다. 제게 네이버 메일 비밀번호가 노출될 수 있으니, 다른 비밀번호로 변경 후에 코드를 알려주시는 것이 좋겠죠.
확인해보시고 댓글 부탁드립니다. 많이 답답하시겠지만, 같이 차근차근 해결해보시죠. 화이팅입니다! :-)
0
안녕하세요.
SendGrid 정책이 깐깐하게 변경되어, 네이버 이메일로 가입이 안 되는 경우가 발생하고 있습니다. // SendGrid를 사용하지 않더라도 네이버 메일서버에서도 SMTP를 지원하니까 이를 활용해보실 수 있습니다.
아래 링크의, 강의 설명 하단에 네이버 메일 SMTP를 활용하는 방법에 대해서 설명을 해두었으니, 참고해보시겠어요?
화이팅입니다.
안녕하세요.
0
44
1
[OneToOne Field Demo] get_user_model() 메서드를 활용해야 하는 이유?
0
267
1
useEffect 훅에서 else 유무에 따른 결과
0
207
1
useAxios 훅의 dependency array 설정
0
241
1
useEffect에서 변수 업데이트 관련 질문
0
378
1
rest_framework.generics.CreateAPIView의 model 속성 유무
0
262
1
bootstrap4
0
464
4
리뉴얼 강의가 오픈이 되면 기존 강의는 더이상 못보는걸까요
1
357
1
admin form에서 앞선 필드 선택 후 다른 필드 select widget 구성하는 방법
0
568
3
useState는 필수일까요?
0
256
1
python manage.py makemigrations instagram 시 created_at default 오류가 발생합니다.
0
589
4
Django allauth를 사용한 소셜 로그인 시 에러
0
648
1
프로젝트명 변경 뒤, 디버그툴바+디버그모드 사용 시 에러
0
548
2
useLocalStorage() 함수 사용여부
0
223
1
django에 LOGIN_URL = '/accounts/login/'의 의미?
0
443
1
리듀서의 의미 재확인
0
423
1
simple-jwt Refresh Token 사용 노하우
0
894
2
docker compose 를 통한 배포 관련 오류 문의
0
664
1
파이썬 속도 장고 관련 궁금한게 있습니다.
0
357
1
is_like_user
0
227
1
related_name 오류
0
267
1
re_path 오류
0
252
1
re_path url
0
243
1
No post matches the given query
0
653
2

