작성
·
441
답변 4
2
하... 해결했습니다..
제 shell이 zsh더라구요...
shell 종류가 문제될거라곤 생각하지도 못했습니다..
stackoverflow에 아무리 찾아봐도 bash, zsh 어느 쉘을 쓰는지에 따라 환경변수 저장하는 곳이 달라지는지 안알려주던데...
감사합니다 선생님!
1
보내주신 메일 잘 받았습니다.
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
안녕하세요.
SendGrid 에러로 골치가 많이 아프셨겠습니다. :-(
우선 환경변수를 통한 SENDGRID_API_KEY 키 설정에서 이슈가 있을 수도 있습니다.
키에 쌍따옴표가 포함이 된다는 지, 키설정이 되었다고 생각하지만 터미널을 새롭게 띄우는 과정에서 키 설정이 안 된 상황에서 서버를 띄우셨을 수도 있습니다.
장고 쉘에서는 from django.conf import settings 후에 settings.SENDGRID_API_KEY 하시면 출력결과가 어떻게 되시나요?
그리고, 노란 장고 에러화면에서도 settings 내역을 확인하실 수 있는 데요. 여기에서도 SENDGRID_API_KEY 설정값을 확인해서 알려주시겠어요?
키 유출을 막기 위해서, me@askcompany.kr 이메일로 보내주실 수 있으실까요?
가급적 텍스트 복사보다 내역에 대한 스크린샷을 보내주시면 제가 좀 더 정확하게 확인해볼 수 있을 듯 합니다.
화이팅입니다. :-)
0
정중한 앵무새님 안녕하세요!
혹시 이 SMPT 에러 해결하셨다면, 어떤게 원인이였고, 어떻게 고치셨는지 알 수 있을까요?