【发布时间】:2017-10-26 18:01:12
【问题描述】:
我正在使用 Java Email Sender 以 Java 发送电子邮件。我正在使用 VelocityEngine 发送 HTML 电子邮件。
在我的本地计算机上一切正常!电子邮件已发送。
但是当我将代码部署到测试服务器(没有域相关,只有 IP)时,与 gmail 的连接失败。
我在 spring-config.xml 中有我的电子邮件设置
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="mail.domain.com" />
<property name="port" value="25" />
<property name="username" value="mymail@domain.com" />
<property name="password" value="*xxxxxx" />
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.starttls.enable">false</prop>
<prop key="mail.smtps.ssl.checkserveridentity">true</prop>
<prop key="mail.smtps.ssl.trust">*</prop>
</props>
</property>
</bean>
当我尝试从服务器发送电子邮件时,我收到错误消息:
org.springframework.mail.MailSendException: Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: mail.domain.com, port: 25;
然后它说,这是一个超时.. 但我的问题是我是否需要从电子邮件服务器禁用任何安全性,或者它是否与 tomcat 相关
【问题讨论】:
-
你真的使用
mail.domain.com作为服务器主机名吗? -
不...我使用正确的电子邮件和服务器...本地它可以工作,它发送我想要的电子邮件,但问题出在服务器上...
-
您确定可以从您的测试服务器访问 SMTP 服务器吗?也许有防火墙或类似的东西。
-
这听起来像是正确的理由......但奇怪的是我的机器正在工作......
-
这就是可能涉及防火墙的原因。