인프런 커뮤니티 질문&답변

정중한 앵무새님의 프로필 이미지

작성한 질문수

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

회원 가입 환영 이메일 보내기

SMTPSenderRefused at /accounts/signup/

21.12.30 22:45 작성

·

434

0

선생님...

SendGrid 이메일 발송건 에러로 8시간 끌고있는데요 ... 

아래와 같이 Single Sender Verification 받았구요,

아래와 같이 python manage.py shell에서 메일을 보낼 때는 에러가 없습니다. (실질적으로 이메일 전송은 안됐습니다)

하지만 accounts/signup 페이지에서 회원가입을 하고나면 아래와 같이 Authentication 에러가 나옵니다.. 

항상 감사드립니다..

답변 4

2

정중한 앵무새님의 프로필 이미지

2021. 12. 31. 12:16

하... 해결했습니다..

제 shell이 zsh더라구요... 

shell 종류가 문제될거라곤 생각하지도 못했습니다..

stackoverflow에 아무리 찾아봐도 bash, zsh 어느 쉘을 쓰는지에 따라 환경변수 저장하는 곳이 달라지는지 안알려주던데...

감사합니다 선생님!

1

이진석님의 프로필 이미지
이진석
지식공유자

2021. 12. 31. 09:04

보내주신 메일 잘 받았습니다.

settings에 SENDGRID_API_KEY 설정을 환경변수에서 읽어오시지않고, 하드코딩으로 지정하셨을 때, 이메일 발송이 되셨다면 SENDGRID_API_KEY 환경변수 이슈가 맞겠네요.

맥 환경이시고, SENDGRID_API_KEY 환경변수 설정을 .bash_profile에 넣으셨네요. .bash_profile 는 bash  쉘에서 구동 시에 읽어들이기도 하고, 설정에 따라 읽지않기도 합니다. 그리고 최근 macOS는 기본 쉘이 bash에서 zsh로 바뀌기도 해서요.

먼저 구동 쉘이 bash가 맞는 지도 확인해보시구요. 쉘에서 echo $SHELL 명령으로 확인하실 수 있습니다.

장고 개발서버는 쉘에서 직접 python manage.py runserver 명령으로 구동하셨죠? 장고 개발서버 구동 전에 쉘에서 다음과 같이 환경변수를 지정하시고, 확인하시고, 개발서버를 구동해봐주시겠어요?

export SENDGRID_API_KEY=키지정
echo $SENDGRID_API_KEY
python manage.py runserver

혹은 확인을 위해서, 회원가입 뷰에서 print(settings.EMAIL_HOST_PASSWORD)를 통해 설정값을 다시 한 번 더 확인해보셔도 좋겠습니다.

1

이진석님의 프로필 이미지
이진석
지식공유자

2021. 12. 30. 23:56

안녕하세요.

SendGrid 에러로 골치가 많이 아프셨겠습니다. :-(

우선 환경변수를 통한 SENDGRID_API_KEY 키 설정에서 이슈가 있을 수도 있습니다.

키에 쌍따옴표가 포함이 된다는 지, 키설정이 되었다고 생각하지만 터미널을 새롭게 띄우는 과정에서 키 설정이 안 된 상황에서 서버를 띄우셨을 수도 있습니다.

장고 쉘에서는 from django.conf import settings 후에 settings.SENDGRID_API_KEY 하시면 출력결과가 어떻게 되시나요?

그리고, 노란 장고 에러화면에서도 settings 내역을 확인하실 수 있는 데요. 여기에서도 SENDGRID_API_KEY 설정값을 확인해서 알려주시겠어요?

키 유출을 막기 위해서, me@askcompany.kr 이메일로 보내주실 수 있으실까요?

가급적 텍스트 복사보다 내역에 대한 스크린샷을 보내주시면 제가 좀 더 정확하게 확인해볼 수 있을 듯 합니다.

화이팅입니다. :-)

0

정중한 앵무새님의 프로필 이미지

2021. 12. 31. 08:51

선생님 이메일 보냈습니다! 

감사드립니다!!!

최다니엘님의 프로필 이미지

2023. 02. 06. 17:25

정중한 앵무새님 안녕하세요!
혹시 이 SMPT 에러 해결하셨다면, 어떤게 원인이였고, 어떻게 고치셨는지 알 수 있을까요?