You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring配置远程SMTP却连接本地服务器?问题排查求助

问题原因及解决方法

核心原因

出现连接本地127.0.0.1:25的情况,本质是配置未被正确加载或被覆盖,导致Spring Mail默认使用本地SMTP服务器。


排查与解决步骤

1. 核对application.properties配置项

确保配置使用Spring Mail的官方前缀spring.mail.*,以下是针对Brevo SMTP的正确配置示例:

# 核心SMTP配置
spring.mail.host=smtp-relay.brevo.com
spring.mail.port=587
spring.mail.username=你的Brevo注册邮箱/账号
spring.mail.password=你的Brevo SMTP专用密钥(不是账号登录密码)

# 必需的SMTP连接属性
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.connectiontimeout=5000
spring.mail.properties.mail.smtp.timeout=5000
  • 重点检查:是否拼写错误(比如把host写成server、漏写spring.前缀);端口是否设为587而非25;starttls.enable是否开启(Brevo 587端口要求TLS加密)。

2. 检查配置类是否硬编码本地服务器

如果自定义了JavaMailSender配置类,确认没有硬编码localhost,且正确读取配置文件的值:

@Configuration
class MailConfig {

    @Bean
    fun javaMailSender(
        @Value("\${spring.mail.host}") host: String,
        @Value("\${spring.mail.port}") port: Int,
        @Value("\${spring.mail.username}") username: String,
        @Value("\${spring.mail.password}") password: String
    ): JavaMailSender {
        val mailSender = JavaMailSenderImpl()
        mailSender.host = host
        mailSender.port = port
        mailSender.username = username
        mailSender.password = password

        val props = Properties()
        props["mail.smtp.auth"] = "true"
        props["mail.smtp.starttls.enable"] = "true"
        mailSender.javaMailProperties = props
        return mailSender
    }
}
  • 避免直接写死mailSender.host = "localhost",必须通过@Value或@ConfigurationProperties注入配置值。

3. 排查配置覆盖问题

检查是否有其他配置源覆盖了application.properties的设置:

  • 环境变量:比如SPRING_MAIL_HOST被设为localhost;
  • 系统属性:启动应用时通过-Dspring.mail.host=localhost传入;
  • 其他配置文件:比如application.yml或多环境配置文件(如application-prod.properties)中的冲突配置。

4. 验证Brevo SMTP权限

确认你的服务器IP已添加到Brevo的SMTP白名单(部分服务商要求),且SMTP密钥是正确生成的专用密钥(可在Brevo后台的"SMTP & API"页面获取)。


内容的提问来源于stack exchange,提问作者GPorubanTKK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 12:33:19