1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 阿里云服务器发送邮件失败?连接超时?25端口被封?

阿里云服务器发送邮件失败?连接超时?25端口被封?

时间:2021-04-13 22:22:37

相关推荐

阿里云服务器发送邮件失败?连接超时?25端口被封?

大家好,我是烤鸭:

之前用阿里云服务器的时候发送126企业邮箱,用的smtp方式,但是一直超时。百思不得其解。因为在本地环境是可以的。

原来是阿里云服务器限制了25端口。问了126邮箱那边的技术客服,只支持25端口。

问了阿里云的售后,他们说25端口不开放。可以考虑463端口或者他们的邮箱服务。

真是会赚钱啊。

之后研究了一下,还是可以的。

(一)开通服务

阿里云的服务器可以直接开通邮件服务,每天200封免费。

也没什么麻烦的。直接开通了。

(二)创建域名

(三)查看域名配置

点开上图的配置:(由于我的已经验证通过了,所以状态是验证通过)

四(添加域名解析)

打开控制台的云解析DNS,按照上图的配置4个逐一添加即可。

五(验证)

等几分钟再回到之前的域名列表页面,点击验证即可。

还不懂的看官方文档吧。

/knowledge_detail/36723.html

六(创建发件邮箱)

七(代码实现java)

package com.mys.my.app.util;import com.adobe.xmp.impl.Base64;import net.sf.json.JSONObject;import javax.mail.Message;import javax.mail.Message.RecipientType;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import java.util.Date;import java.util.HashMap;import java.util.Map;import java.util.Properties;public class SendMail {String username = "xxxxxxx"; //由哪个邮箱发送邮件,就是在邮箱控制台创建的发信地址String name="测试";String password = "xxxxxx"; //发信地址的SMTP密码private Message getMessage() {Properties p = new Properties();p.put("mail.smtp.host", ""); //阿里云smtp服务器地址p.put("mail.smtp.auth", "true");p.put("mail.smtp.name", "测试");p.put("mail.smtp.socketFactory.class", ".ssl.SSLSocketFactory");p.put("mail.smtp.socketFactory.port", "465");p.put("mail.smtp.port", "465");MyAuthor auth = new MyAuthor(username, password);Session session = Session.getDefaultInstance(p, auth);Message message = new MimeMessage(session);return message;}public void sendVerify(String url,String stu_email, String randomNum,String mobile, String singn) throws Exception{//拼接验证邮箱地址address = url + address;Message message = getMessage();System.out.println("sendVerify:"+message);//设置自定义发件人昵称 String nick=javax.mail.internet.MimeUtility.encodeText("测试"); //设置发件人message.setFrom(new InternetAddress(nick+" <"+username+">"));//设置收件人message.setRecipient(RecipientType.TO, new InternetAddress(stu_email));System.out.println("stu_email:"+stu_email);//设置发件时间message.setSentDate(new Date());//设置标题message.setSubject("测试");//拼接接口参数Map<String,String> map=new HashMap<String,String>();map.put("randomNum", randomNum);map.put("mobile", mobile);map.put("email", stu_email);map.put("singn", singn);JSONObject paramsJson=JSONObject.fromObject(map);System.out.println("paramsJson:"+paramsJson);//对参数进行encodeString base64Params=Base64.encode(paramsJson.toString());System.out.println("base64Params:"+base64Params);String m="<div style='margin:10px auto;padding:10px;max-width:800px;font-size: 14px;'>测试测试测试测试</div>";//设置发送正文message.setContent(m, "text/html;charset=gb2312");System.out.println(message.getSentDate());//发送邮件Transport.send(message);}public static void main(String[] args) {SendMail send=new SendMail();try {send.sendVerify("","xxxxxxx@ ", "","","");} catch (Exception e) {e.printStackTrace();}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。