DevOps

javax.mail.MessagingException: 501 Syntax: HELO <hostname> 오류

Steven J.S Min 2015. 11. 5. 08:31

메일에서 501과 관련된 오류는, 메일 smtp 와 함께 메일의 환경설정 ( email.yml )파일에 domain을  추가하여 발송하도록 되어있는데 이때  domain을 설정하는 과정에서 문제가 생기면 발생하는 오류이다.


따라서 간단히 

  • /etc/hosts 파일에 도메인정보(또는 IP)를 설정해주거나
  • $ hostname [도메인명 | 서버IP]

를 해주면 되겠다.


root@prod.app1a:~# hostname  10.213.12.100 rpc.prod.uss.technology

root@prod.app1a:~#

 

또는 아래와 같이 /etc/hosts 파일에 직접 기술해주면 된다.

root@prod.app1a:~# vi /etc/hosts


127.0.0.1   localhost localhost.localdomain

10.213.12.100 rpc.prod.uss.technology

~

~

~

~

-- INSERT --



본인의 경우 Application 서버는 VPC안의 Private Subnet 영역에 있는데 Private IP를 설정해주는 것만으로도 해결이 되었다.


다음 익셉션트래이스 메시지이다.

javax.mail.MessagingException: 501 Syntax: HELO <hostname>

at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1634)

at com.sun.mail.smtp.SMTPTransport.helo(SMTPTransport.java:1070)

at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:458)

at javax.mail.Service.connect(Service.java:313)

at javax.mail.Service.connect(Service.java:172)

at javax.mail.Service.connect(Service.java:121)

at javax.mail.Transport.send0(Transport.java:190)

at javax.mail.Transport.send(Transport.java:120)

at uss.framework.email.EmailServices.sendEmail(EmailServices.java:221)

at uss.framework.email.EmailServices.sendEmailForAttchements(EmailServices.java:265)

at uss.common.controller.CommonController.emailSend(CommonController.java:687)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

      생략....