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

大家好,我是烤鸭:


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

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

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

真是会赚钱啊。


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


(一)开通服务

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


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


创建域名



(三)查看域名配置

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



四(添加域名解析)

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


五(验证)

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

还不懂的看官方文档吧。

https://help.aliyun.com/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", "smtpdm.aliyun.com");   //阿里云smtp服务器地址p.put("mail.smtp.auth", "true");p.put("mail.smtp.name", "测试");p.put("mail.smtp.socketFactory.class", "javax.net.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@qq.com ", "","","");} catch (Exception e) {e.printStackTrace();}}
}



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/413023.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[css] 举例说明css有哪些简写的属性和属性值?

[css] 举例说明css有哪些简写的属性和属性值&#xff1f; border: solid 1px red;border-style: solid; border-width: 1px; border-color: red;animation: fadeIn .5s forward ease-in .2s infinite;animation-name: fadeIn; animation-duration: 0.5s; animation-fill-mode:…

JS重写Alert方法

var _alert window.alert; window.alert function(){ console.log(arguments); _alert(arguments); }

Pat乙级1011题:A+B和C

题目&#xff1a;给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C&#xff0c;请判断AB是否大于C。我写的代码&#xff1a; del abc(self,a,b,c,i):if ab>c: print("Case #X: true"%i)else:print("Case #X: false"%i)return 0if __name__"__ma…

springboot版的微信公众号,订阅号

大家好&#xff0c;我是烤鸭&#xff1a; 这是一篇微信公众号入门的文章&#xff0c;如果是个人的话&#xff0c;只能申请未认证的订阅号。如果是公司的话&#xff0c;想申请啥都是可以的。 这篇文章说的就是个人订阅号。 环境: centos 7.3 springboot 1.5 需要&#xff…

[css] 请说说颜色中#F00的每一位分别表示什么?为什么会有三位和六位的表示呢?

[css] 请说说颜色中#F00的每一位分别表示什么&#xff1f;为什么会有三位和六位的表示呢&#xff1f; 颜色可以使用红-绿-蓝&#xff08;red-green-blue (RGB)&#xff09;模式的两种方式被定义&#xff1a;十六进制符号 #RRGGBB 和 #RGB "#" 后跟6位十六进制字符&a…

[css] 请使用css写一个多级的下拉菜单

[css] 请使用css写一个多级的下拉菜单 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv"…

Javascript报错Failed to execute ‘querySelectorAll‘ on ‘Document‘: ‘#123456‘ is not a valid sele

Javascript报错&#xff1a;Failed to execute ‘querySelectorAll’ on ‘Document’: ‘#123456’ is not a valid selector 解决方式(除开特殊符号,第一个字符必须是字母)&#xff1a; 第一种&#xff1a; 将ID前面加字母&#xff0c;例如&#xff1a;document.querySelect…

pycharm创建django项目linux部署

大家好&#xff0c;我是烤鸭&#xff1a; pytho部署web项目比java简单一点&#xff0c;虽然springboot内置了tomcat。 环境&#xff1a; pycharm专业版python3.6 1.安装python python下载&#xff1a;https://www.python.org/downloads/ 我使用的3.6版本 2.配置环境变量 path目…

【USACO15DEC】最大流Max Flow

题面 FJ给他的牛棚的N(2≤N≤50,000)个隔间之间安装了N-1根管道&#xff0c;隔间编号从1到N。所有隔间都被管道连通了。 FJ有K(1≤K≤100,000)条运输牛奶的路线&#xff0c;第i条路线从隔间si运输到隔间ti。一条运输路线会给它的两个端点处的隔间以及中间途径的所有隔间带来一个…

[css] 用css给一个元素加边框有哪些方法?

[css] 用css给一个元素加边框有哪些方法&#xff1f; :scope {border: 3px solid black;box-shadow: 0 0 0 1px black; /*不影响布局,无限叠加*/outline: 1px solid black; /*不支持圆角*/background-image: url("data:image/svgxml,%3Csvg xmlnshttp://www.w3.org/2000/…

java格式化html代码

/*** 格式化html代码* param model* param html* return*/RequestMapping("/formatHtml.dhtml")ResponseBodypublic M formatHtml(Model model,String html) {if(StringUtils.isNotBlank(html)) {try {Document doc Jsoup.parseBodyFragment(html);html doc.body()…

利用Android Studio快速搭建App

大家好&#xff0c;我是烤鸭: 给大家分享一个简单的用Android Studio快速搭建app 工具&#xff1a;Android Studio 64位 专业版 插件:Datepicker Timepicker okhttp 实现需求&#xff1a;界面上选择时间&#xff0c;发get/post请求到后台&#xff0c;获取选择的时间。1.修改And…

[css] 相邻兄弟选择器、后代选择器和子选择器三者有什么区别?

[css] 相邻兄弟选择器、后代选择器和子选择器三者有什么区别&#xff1f; 后代选择器与子选择的关系&#xff1a;后代选择器>子选择器。 后代选择器&#xff1a;包括父元素的子元素以及孙子元素&#xff08;代表符号&#xff1a;空格&#xff09;子选择器&#xff1a;包括父…

CompletableFuture的多线程和异步监听实现

大家好,我是烤鸭&#xff1a;今天给大家说的是多线程并发的异步监听的情况。这里不得不说一下CompletableFuture这个类&#xff0c;普通我们执行多线程的时候只需要另外启动一条线程。 说一下线程的3种方式&#xff1a;extends Thread&#xff0c;implements Runnable&#xff…

DCF:A Dataflow-Based Collaborative Filtering Trainging Algorithm

Abstratct:描述了当前协同过滤算法两大技术alternating least square(ALS,最小二乘法)和gradient descent(GD)的确定&#xff1a;原文&#xff1a;Existing collaborative filtering techniques are implemented with either alternating least square algorithm or gradient d…

[css] 举例说明你对相邻兄弟选择器的理解

[css] 举例说明你对相邻兄弟选择器的理解 divp{ //相邻兄弟选择器 background: red; } 符合两个条件就会被选中&#xff1a; 1.紧邻在另一个元素后面 2.两者父元素相同个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢…

HashMap jdk1.7和1.8概述

大家好&#xff0c;我是烤鸭&#xff1a;这是一篇关于HashMap的概述和底层原理的介绍。算是网上很多帖子的综合和我自己的一点想法。HashMap在jdk1.8以前是数组链表。在jdk1.8以后是数组链表红黑树。一点点分析数据结构。1. Map中的entry对象: static class Node<K,V> im…

springboot整合redis修改分区

转载的地址&#xff1a;https://blog.csdn.net/m0_37659871/article/details/81024068#commentBox springboot整合redis修改分区 问题由来 最近使用springboot整合redis&#xff0c;一个系统动态数据源连接不同数据库&#xff0c;缓存使用的redis&#xff0c;那么就需要将不同…

[css] 你是怎么设计css sprites(精灵图)的?有哪些技巧?

[css] 你是怎么设计css sprites&#xff08;精灵图&#xff09;的&#xff1f;有哪些技巧&#xff1f; 首先肯定不会去用PS量&#xff0c;那太费时间了~ 没有webpack以前&#xff0c;用Gulp的gulp.spritesmith插件&#xff0c;这里附上配置源码/* gulpfile.js */ const gulp …

iOS沙盒文件夹及获取路劲方法

iPhone沙盒中有四个文件夹&#xff0c;分别是&#xff1a;documents、tmp、app、library. 1、Documents &#xff1a;用户生成的文档或数据&#xff0c;或者应用不能重新新创建的数据&#xff0c;存储在/Documents目录下&#xff0c;并且会被自动备份到iCloud&#xff1b; 2、A…