smtp

PHP实现用户注册后邮箱验证,激活帐号【转】

六月ゝ 毕业季﹏ 提交于 2020-03-03 17:28:08
我们在很多网站注册会员时,注册完成后,系统会自动向用户的邮箱发送一封邮件,这封邮件的内容就是一个URL链接,用户需要点击打开这个链接才能激活之前在该网站注册的帐号。激活成功后才能正常使用会员功能。 本文将结合实例,讲解如何使用PHP+Mysql完成注册帐号、发送激活邮件、验证激活帐号、处理URL链接过期的功能。 业务流程 1、用户提交注册信息。 2、写入数据库,此时帐号状态未激活。 3、将用户名密码或其他标识字符加密构造成激活识别码(你也可以叫激活码)。 4、将构造好的激活识别码组成URL发送到用户提交的邮箱。 5、用户登录邮箱并点击URL,进行激活。 6、验证激活识别码,如果正确则激活帐号。 准备数据表 用户信息表中字段Email很重要,它可以用来验证用户、找回密码、甚至对网站方来说可以用来收集用户信息进行Email营销,以下是用户信息表t_user的表结构: CREATE TABLE IF NOT EXISTS `t_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(30) NOT NULL COMMENT '用户名', `password` varchar(32) NOT NULL COMMENT '密码', `email` varchar(30) NOT NULL COMMENT '邮箱',

各大邮箱服务器与端口

拟墨画扇 提交于 2020-03-03 08:35:06
> 新浪邮箱 smtp服务器 外发服务器:smtp.vip.sina.com 收件服务器:pop3.vip.sina.com 新浪免费邮件 外发服务器:smtp.sina.com.cn 收件服务器:pop3.sina.com.cn =--------------------------------------------------- hotmail smtp-mail.outlook.com 25 465(ssl)-----25 imap-mail.outlook.com 143 993(ssl)---- 993 ===================================== > 163邮箱 smtp服务器 pop: pop.163.com smtp: smtp.163.com > QQ邮箱 smtp服务器 及端口 接收邮件服务器:imap.qq.com,使用SSL,端口号993 发送邮件服务器:smtp.qq.com,使用SSL,端口号465或587 > yahoo邮箱 smtp服务器 接:pop.mail.yahoo.com.cn 发:smtp.mail.yahoo.com > 126邮箱 smtp服务器 pop: pop.126.com smtp: smtp.126.com 新浪免费邮箱 POP3:pop.sina.com SMTP:smtp.sina.com

node第三方模块----nodemailer发送邮件

老子叫甜甜 提交于 2020-03-03 08:34:09
参考地址 https://nodemailer.com/about/ nodemailer nodemailer是一个nodejs的邮件服务模块 如何使用nodemailer 1.先安装nodemailer npm install --save nodemailer 2.使用nodemailer "use strict"; //引入第三方模块 const nodemailer = require("nodemailer"); // 创建发送邮件的对象 let transporter = nodemailer.createTransport({ //node_modules/nodemailer/lib/well-known/services.json 查看相关的配置,进行修改,如果使用qq邮箱,就查看qq邮箱的相关配置 host: "smtp.qq.com", port: 465,  //端口号为465时,值为true,其他为false secure: true, auth: { //发送者邮箱 user: '2252281518@qq.com', //pass 不是邮箱账户的密码而是stmp的授权码(必须是相应邮箱的stmp授权码) //邮箱---设置--账户--POP3/SMTP服务---开启---获取stmp授权码 pass: 'qjmtfzzsotlzecbf' } });

Node.js使用NodeMailer发送邮件

笑着哭i 提交于 2020-03-03 08:30:00
var nodemailer = require('nodemailer') var transporter = nodemailer.createTransport("SMTP", { host: "smtp.126.com", // 主机 secureConnection : true, // 使用 SSL port: 465, // SMTP 端口 auth: { user: 'xxxxxx@126.com', //邮箱登录账号 pass:'xxxxxxxxxxx' //使用邮箱里的授权码 } }); var emailOptions = { from : 'xxx <xxxxxx@126.com>', to : 'xxxxxxxx@qq.com', subject : 'test mail subject', text : 'test mail text', html : '<h1>test mail html</h1>' } transporter.sendMail(emailOptions, function(err, info) { if(err){ return console.log(err); }else{ console.log('Message sent: ' + info.message); } transporter.close(); // 如果没用

Zabbix之Python发送邮件

前提是你 提交于 2020-03-03 08:28:48
前言:继前篇zabbix邮件乱码问题解决,转码后,问题是解决了,但是又发现问题,有时候告警邮件没有邮件内容,只有标题,一直没找出原因,所以就换了Python脚本发送邮件,代码如下。 使用前当然是要先安装python了,然后是导入相关的运行库smtplib,python的smtplib提供了一种很方便的途径发送电子邮件,它对smtp协议进行了简单的封装。 #!/usr/bin/python #coding:utf-8 import smtplib from email.mime.text import MIMEText import sys # configure your own parameters here #下面邮件地址的smtp地址 mail_host = 'smtp.mail.qq.com' #用来发邮件的邮箱,在发件人抬头显示(不然你的邮件会被当成是垃圾邮件) mail_user = 'XXXX@qq.com' #上面邮箱的密码 mail_pass = 'XXXX!' #上面smtp地址的主网站地址 mail_postfix = 'mail.qq.com' def send_mail(to_list,subject,content): me = mail_user+"<"+mail_user+"@"+mail_postfix+">" msg = MIMEText

创建基于MailKit和MimeKit的.NET基础邮件服务

霸气de小男生 提交于 2020-03-03 08:12:45
邮件服务是一般的系统都会拥有和需要的功能,但是对于.NET项目来说,邮件服务的创建和使用会较为的麻烦。.NET对于邮件功能提供了System.Net.Mail用于创建邮件服务,该基础服务提供邮件的基础操作,并且使用也较为的简单。对于真正将该功能使用于项目的人,就会慢慢发现其中的优缺点,甚至有些时候不能忍受其中的问题。在这里介绍一种微软用于替代System.Net.Mail的邮件服务组件MailKit和MimeKit,官网地址:http://www.mimekit.net/。GitHub地址:https://github.com/jstedfast/MimeKit。下面就具体的介绍一下。   一.MailKit和MimeKit基础概述: MailKit组件的支持的客户端类型比较多,例如SMTP客户端、POP3客户端、IMAP4客户端。该组件是一个跨平台的Email组件,该组件支持.NET 4.0,.NET 4.5,Xamarin.Android,Xamarin.iOS,Windows Phone 8.1等等平台。 MimeKit提供了一个MIME解析器,组件具备的解析特性灵活、性能高、很好的处理各种各样的破碎的MIME格式化。 MimeKit的性能实际上 与GMime相当。 该组件在安全性的还是比较高的,处理安全的方式较多,SASL认证、支持S / MIME v3.2

如何在 ASP.NET Core 中发送邮件

孤人 提交于 2020-03-03 08:04:40
前言 我们知道目前 .NET Core 还不支持 SMTP 协议,当我么在使用到发送邮件功能的时候,需要借助于一些第三方组件来达到目的,今天给大家介绍两款开源的邮件发送组件,它们分别是 MailKit 和 FluentEmail , 下面我对它们分别进行介绍。 MailKit 在 ASP.NET Core 中,可以使用 MailKit 来发送邮件,它支持跨平台,并且支持 IMAP, POP3, SMTP 等协议。 你可以使用下面的方式安装: Install-Package MailKit 下面是一个简单的发送邮件的例子: var message = new MimeMessage (); message.From.Add (new MailboxAddress ("Joey Tribbiani", "joey@friends.com")); message.To.Add (new MailboxAddress ("Mrs. Chanandler Bong", "chandler@friends.com")); message.Subject = "星期天去哪里玩?"; message.Body = new TextPart ("plain") { Text = "我想去故宫玩,如何" }; using (var client = new SmtpClient ()) { //

prometheus-operator告警模块alertmanager注意事项(QQ邮箱发送告警)--大大坑

≯℡__Kan透↙ 提交于 2020-03-03 08:03:47
在/stable/prometheus-operator/values.yaml配置告警邮件 config: global: resolve_timeout: 5m smtp_smarthost: 'smtp.qq.com:465' smtp_from: 'xx@qq.com' smtp_auth_username: 'xx@qq.com' smtp_auth_password: 'xreqcqffrxtnieff' smtp_hello: '163.com' smtp_require_tls: false route: group_by: ['job','severity'] group_wait: 30s group_interval: 1m repeat_interval: 1h receiver: default routes: - receiver: webhook match: alertname: TargetDown receivers: - name: default email_configs: - to: 'xx@pcidata.cn' send_resolved: true - name: webhook email_configs: - to: 'xx@pcidata.cn' send_resolved: true  注意这里有个天大的坑!!!!! 1

lecture 4

天大地大妈咪最大 提交于 2020-03-02 18:25:26
1. PLT指用户多久可以看到页面的时间,减少PLT可以通过减小内容大小,改变HTTP以更好的利用宽带,改变HTTP避免相同内容的重复转发,使内容与client更近 2. RTT指一个小的packet从client到server再回来的时间 HTTP响应时间包括:一个RTT启动TCP连接(因为non-persistent HTTP意味着TCP通常在连接后中断,所以需要启动);一个RTT用于HTTP请求并返回HTTP响应的前几个字节;传输文件的时间 TCP指传输控制协议(Transmission Control Protocol),最开始时总会很慢;为了解决这个问题可以用use multiple connections in parallel(平行),但是管理太过费劲 persistent TCP,即TCP不关闭。pipelining为如有20个data需要传输,即在最开始同时发送请求,只花费一个RTT,不需要每一项后都花费RTT 3. caching proxy servr即代理服务器,具有缓冲的功能,不断将新取得的数据包存到它本机的存储器上,如果浏览器所请求的数据在它本机的存储器上已经存在而且是最新的,那么它就不重新从Web服务器取数据,而直接将存储器上的数据传送给用户的浏览器,这样就能显著提高浏览速度和效率 LAN utilization = avg data rate to

Python爬虫第八课:让爬虫定时汇报

本秂侑毒 提交于 2020-03-02 17:30:25
我们来学习两个新的功能来增强爬虫程序的实用性: 首先是程序可以根据我们设定的时间自动爬取数据,即定时爬取; 然后程序可以把爬取到的数据结果以邮件的形式自动发送到我们的邮箱,也就是自动发送。 来做一个案例:每日更新天气预报情况,并发送邮件提醒 。由三个部分构成:爬取天气数据+发送邮件+定时 一、爬取天气数据 天气网站地址为:http://www.weather.com.cn/weather/101280101.shtml import requests from bs4 import BeautifulSoup # 请求头 headers = { 'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36' } # url url = 'http://www.weather.com.cn/weather/101280101.shtml' # 获取数据 res_weather = requests . get ( url , headers = headers ) print ( res_weather . status_code ) print ( res_weather