이메일 에러에서 시작된 옛 프로젝트 뜯어 고치기
꽤나 오랫동안 잠들어있던 나의 첫 프로젝트 filmUs...
프로젝트를 끝내고 나서는 자소서와 포트폴리오 만들기에 급급했고, 쫓기듯 호다닥 취업했던 첫 회사의 어마어마한 근무시간에 프로젝트의 오류를 고칠 생각도 못했었다.
이제서야 조금 정신이 들어 AWS에 배포했더니 갑자기 안되었던 내가 공들여 개발했던 이메일 전송 기능을 고치기로 마음을 먹었다.
(당시에는 블로그에 글을 쓰게 될 줄 몰라 캡쳐화면은 없다😂)
예전에 처음 에러가 났을 때는 로그를 제대로 확인하지 않고 냅다 검색부터 했었다.
그리고 검색 결과를 보며 '왜 로컬에서는 잘 되던게 AWS에서는 제대로 안되지?' -> 'AWS에서는 Java Mail이 안되나?' -> 'AWS SES(Simple Email Service)를 써야하네..' 하고 단정지어 버렸었다.
이런 생각을 했던게 불과 반년도 지나지 않았는데 그래도 그동안 발전이 있었는지 이번에는 로그를 뜯어볼 생각부터 들었다. 에러 로그를 천천히 확인해보니 이메일 서버에 접근하는 과정에서 오류가 발생하는듯 보였다.
해당 부분에서 파라미터에 pw={null}로 인해서 로그인이 안되고 접근이 안되었던 것인데 이메일과 비밀번호는 정확했다. 그리고 로컬에서도 같은 에러가 발생하고 있었다.
혹시나 하고 google 설정을 확인해보니 Java Mail을 사용할 때 필수적인 '보안 수준이 낮은 앱 허용'이 꺼져있었고... 다행히 해당 기능을 다시 설정하니 로컬에서는 작동이 잘 되었다!
서버에 배포하는 과정에서는 과거의 EC2 인스턴스에 배포한 과정이 내가 실무에서 사용하는 방식과 너무나도 달라서 잠시 당황했지만
이제 메일에 담길 경로도 localhost:8080에서 운영중인 서버의 경로로 바꿔주고 AWS에 배포하려고 하는데 내가 실무에서 사용하던 인스턴스에서 Tomcat을 관리하던 방식과 너무나도 달라서 다시 아무것도 모르던 내가 검색하듯 검색하며 배포까지 마치고 정상작동을 확인했다!
배포하고 확인해보니 과거의 나는 tomcat9을 설치하는 방식으로 진행했고 그럴 경우 아래의 경로에 war 파일을 두면 된다.
/var/lib/tomcat9/webapps/
서버 구동과 정지는 아래 명령어를 입력하면 된다!
sudo service tomcat9 stop
sudo service tomcat9 start
이렇게 이메일 문제는 해결했고..
여러 이유를 근거로 조만간 EC2 인스턴스를 한번 정리하면거 깔끔하고 내가 알기 쉬운 방법으로 새로 생성하고 배포를 해야할 것 같다.
생각보다 큰 공사가 될 것 같지만 이러면서 또 배우는거지.. ㅎ
Author And Source
이 문제에 관하여(이메일 에러에서 시작된 옛 프로젝트 뜯어 고치기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@shawnhansh/이메일-전송-문제-해결저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)