복붙노트

[SPRING] 봄 부팅 - SMTP 호스트에 연결할 수 없습니다 : smtp.gmail.com, 포트 : 25, 응답 : 421

SPRING

봄 부팅 - SMTP 호스트에 연결할 수 없습니다 : smtp.gmail.com, 포트 : 25, 응답 : 421

나는 Gmail을 사용하고 있습니다. smtp 호스트는 봄 부팅 및 JavaMail 발신자와 함께 메일을 보냅니다.

내 메일 속성 :

 spring.mail.host = smtp.gmail.com
 spring.mail.username = XXX@gmail.com
 spring.mail.password = XXX

 spring.mail.properties.mail.smtp.auth = true
 spring.mail.properties.mail.smtp.socketFactory.port = 465
 spring.mail.properties.mail.smtp.starttls.enable = true
 spring.mail.properties.mail.smtp.socketFactory.class = javax.net.ssl.SSLSocketFactory
 spring.mail.properties.mail.smtp.socketFactory.fallback = false

오류 받기 :

Failed message 1: javax.mail.MessagingException: Could not connect to SMTP host: smtp.9business.fr, port: 25, response: 421] with root cause

내가 465 번 포트를 사용한다고해도 왜 그가 25 번 포트를 가리키고 있습니까?

해결법

  1. ==============================

    1.등록 정보 파일에서 mail.smtp.starttls.required가 false로 비활성화되었습니다.

    등록 정보 파일에서 mail.smtp.starttls.required가 false로 비활성화되었습니다.

    spring.mail.properties.mail.smtp.starttls.enable = true spring.mail.properties.mail.smtp.starttls.required = false

  2. ==============================

    2.그 특성들을 어디에서 얻었는지 나는 확신하지 못합니다. 구성 할 수있는보다 일반적인 스프링 부트 속성은 다음에서 찾을 수 있습니다.

    그 특성들을 어디에서 얻었는지 나는 확신하지 못합니다. 구성 할 수있는보다 일반적인 스프링 부트 속성은 다음에서 찾을 수 있습니다.

    http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

    아마 spring.mail.port를 사용해야합니다. spring.mail 네임 스페이스에서 사용할 수있는 속성은 다음과 같습니다.

    host
    port
    username
    password
    defaultEncoding (default: "UTF-8")
    

    그러나 고유 한 JavaMailSender를 작성하는 경우 SMTP 포트를 설정하는 등록 정보는 mail.smtp.port입니다. JavaMailSender를 다음과 같이 bean으로 설정했습니다.

    @Value(value = "${mail.smtp.host}")
    private String smtpHost;
    
    @Value(value = "${mail.smtp.port}")
    private String smtpPort;
    
    @Bean
    public JavaMailSender mailSender() {
        JavaMailSenderImpl sender = new JavaMailSenderImpl();
    
        Properties p = new Properties();
        p.setProperty("mail.smtp.auth", "false");
        p.setProperty("mail.smtp.host", smtpHost);
        p.setProperty("mail.smtp.port", smtpPort);
        sender.setJavaMailProperties(p);
    
        return sender;
    }
    
  3. ==============================

    3.사실 나는 무엇이 잘못되었는지를 발견했습니다. 둘 중 하나는 내 서버의 포트이고 다른 하나는 gmail 서버 중 하나입니다.

    사실 나는 무엇이 잘못되었는지를 발견했습니다. 둘 중 하나는 내 서버의 포트이고 다른 하나는 gmail 서버 중 하나입니다.

    spring.mail.properties.mail.smtp.socketFactory.port = 25
    mail.smtp.port= 465
    
  4. from https://stackoverflow.com/questions/28064904/spring-boot-could-not-connect-to-smtp-host-smtp-gmail-com-port-25-response by cc-by-sa and MIT license