java无法从linux服务器的一个帐户发送电子邮件

时间:2017-10-24 04:08:45

标签: java email tomcat smtp exim

我有一个托管许多网站的专用服务器。其中一人无法发送电子邮件。所有这些应用程序都有一个Tomcat / MySQL应用程序,当用户单击按钮时,它会发送电子邮件。这项工作多年没有任何问题,但是,今天一个帐户/网站停止了这样做。

在Tomcat控制台上,我遇到了这个例外:

There was an unexpected error.com.sun.mail.util.MailConnectException: Couldn't connect to host, port: mail.xxxxxxxx.com, 25; timeout -1; nested exception is: java.net.ConnectException: Connection refused (Connection refused)

端口26是在Exim邮件服务器配置中全局定义的,如果我尝试使用telnet连接,我可以从服务器对其他帐户进行连接,但是,我无法使用此特定帐户执行此操作。

所以,如果我尝试:

telnet mail.myfirstdomain.com 26 它成功连接,

但如果我尝试:

telnet mail.myotherdomain.com 26 它不起作用。

我整天都想弄清楚这个SMTP传出端口在本地配置的位置,但我还没有运气。

这是发送电子邮件的java类的代码,在所有其他网站上都是一样的,直到今天才在这个特定的网站上运行良好:

        java.util.Properties properties = System.getProperties();
        properties.put("mail.smtp.host", smtpHost);
        properties.put("mail.smtp.auth", "true");
        Session session = Session.getInstance(properties, null);

        // Construct the message
        MimeMessage message = new MimeMessage(session);

        // Set the from address
        Address fromAddress = new InternetAddress(from);
        message.setFrom(fromAddress);

        // Parse and set the recipient addresses
        Address[] toAddresses = InternetAddress.parse(to);
        message.setRecipients(Message.RecipientType.TO,toAddresses);

        // Set the subject and text
        message.setSubject(subject, "UTF-8");
        message.setText(text, "UTF-8");

        Transport trans = session.getTransport("smtp");
        trans.connect(smtpHost, mailUsr, mailPwd);
        message.addHeader("Content-Type", "text/plain;charset=UTF-8");
        message.addHeader("Content-Transfer-Encoding", "7bit");
        message.saveChanges();

        trans.sendMessage(message, message.getAllRecipients());

        trans.close();

        sentStatus = true;

在/etc/exim.conf文件中,有这一行: daemon_smtp_ports = 26:587:465:25

所以,正如你所看到的,端口26就在那里,而且正如我之前提到的那样,所有其他网站都没有问题。

我只是无法找到为此特定帐户启用端口26的位置。

任何帮助都将得到真正的赞赏。我知道有很多与这个问题有关的问题,然而,在我的特定情况下,它们都没有用。

我可以完全访问服务器,WHM,CPanel,SSH

此致!!

0 个答案:

没有答案