邮件客户端

为邮件创建完美的HTML正文

我的未来我决定 提交于 2019-12-08 00:56:53
由于大多数的邮件客户端无法像其他浏览器一样提供对Web标准的支持,那么为邮件编写HTML格式的正文就不同于为我们常见的网页了。更糟糕的是,目前没有关于邮件HTML正文的技术标准规范。接下来将针对目前主流邮件客户端所支持的HTML源码编写技术做一些简单的介绍。 出于安全考虑,不支持任何JavaScript脚本以及外部的CSS样式 使用 table 标签进行整体布局 为了避免页面布局出现预想不到的结果,可以使用表格对邮件正文的HTML内容进行排版布局,主要是因为,现行的邮件客户端不支持position,float,clear等CSS属性,当你邮件正文中包含了这些内容时,邮件服务处理方出于安全考虑会过滤掉这些内容。如下: 避免使用position,float,clear等CSS属性 使用内联CSS样式 使用简单通用的CSS样式,并且以内联的方式嵌入对应的元素标签中。主要原因在于现行的邮件客户端都不支持嵌入或引入外部的CSS样式,而且多数发油价客户端仅仅支持一些基础的格式化样式,例如:圆角以及阴影就无法得以很好的支持。 尽量避免CSS属性值的简写形式 块级元素的使用 超链接样式的使用 由于不支持头部style以及外部CSS样式,对于超链接而言无法很好的实现用户自定义的mouse-over,hover等特效。 给图片设置alt属性值

HTML邮件制作规范

柔情痞子 提交于 2019-12-08 00:56:21
以下内容有些是别人总结的,有些是自己在工作中总结的。 模板最佳尺寸:显示宽度 550px-750px ,模板高度控制在一屏以内。 1、 用 table css 方式构建模板   Div css布局不完全被邮件客户端支持,所以无法使用div css布局。 2、 可以使用 editplues ,或者 UltraEdit 等工具制作 html ,但务必使用可视化工具检查嵌套情况推荐 Dreamweaver 3、 插入的图片要定义宽度,高度,针对( editplues , UltraEdit 等工具更要注意这一点) 4、 严禁使用背景图片   在outlook2007中,背景图片将无法显示,其他邮件客户端可正确显示背景图片。   Gmail也不支持css里面的背景图, 5、 严禁使用map标记形式   造成后期可视化统计困难 6、 不使用 word 转换的 html 文件作为模板 7、 不要用外部链接的 css 文件 <link rel="stylesheet" rev="stylesheet" type="text/css" href=" /css/new/common.css " media="all" /> 这样是抓取不到css的,要写在html,head里面 8、网站或者论坛客户自己有服务器的涉及上传模板文件的按照这个格式    http://www.abc.com/file

在web中实现邮件发送功能

限于喜欢 提交于 2019-12-08 00:53:54
在web站点中也可以集成邮件客户端软件的功能,以便web站点的注册用户可以通过web页面来收发电子邮件,例如,sina和sohu等大型门户网站都会为会员提供了通过web页面来收发电子邮件的功能。对于一些中小型的web站点来说,虽然不需要为其会员提供web页面的电子邮件收发功能,但是,这些站点确很可能需要为自己提供向注册用户发送邮件的功能,例如,web站点自动给新注册的用户发送一封包含其注册信息的欢迎Email,给过生日的注册会员自动发送一封表示祝贺的Email,将网站的最新活动信息通过Email发送给所有的注册会员等。本节主要讲解如何实现在中小型的WEB站点中实现邮件发送功能,要在web站点中实现邮件发送功能的工作其实也很简单,只要将普通的邮件发送程序改写成一个web应用程序就可以了,只是web站点中的邮件发送程序通常会使用自己站点的SMTP服务器来对外发送邮件,web站点发送邮件的过程如下图所示: 从上图可以看出,浏览器通过访问web站点中的邮件发送程序来提交邮件发送请求,邮件发送程序将把邮件发送给自己网站的SMTP服务器,该SMTP服务器收到邮件后,将根据收件人的地址在将邮件的目的地,要么是投递到本地域管理的收件人邮箱中,要么是转交给管理收件人地址域的其他SMTP服务器。 一些web服务器程序专门提供了对邮件发送功能的一些支持,例如

python的smtplib

冷暖自知 提交于 2019-12-07 15:51:50
python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。 smtp协议的基本命令包括: HELO 向服务器标识用户身份 MAIL 初始化邮件传输 mail from: RCPT 标识单个的邮件接收人;常在MAIL命令后面,可有多个rcpt to: DATA 在单个或多个RCPT命令后,表示所有的邮件接收人已标识,并初始化数据传输,以.结束 VRFY 用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令 EXPN 验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用 HELP 查询服务器支持什么命令 NOOP 无操作,服务器应响应OK QUIT 结束会话 RSET 重置会话,当前传输被取消 MAIL FROM 指定发送者地址 RCPT TO 指明的接收者地址 一般smtp会话有两种方式,一种是邮件直接投递,就是说,比如你要发邮件給zzz@163.com,那就直接连接163.com的邮件服务器,把信投給zzz@163.com; 另 一种是验证过后的发信,它的过程是,比如你要发邮件給zzz@163.com,你不是直接投到163.com,而是通过自己在sina.com的另一个邮 箱来发。这样就要先连接sina.com的smtp服务器,然后认证,之后在把要发到163.com的信件投到sina.com上,sina.com会帮

使用 PHPMailer 发送邮件

主宰稳场 提交于 2019-12-07 11:31:20
PHPMailer 是一个强大的 PHP 编写的邮件发送类,使用它可以更加便捷的发送邮件,并且还能发送附件和 HTML 格式的邮件,同时还能使用 SMTP 服务器来发送邮件。 大家也许会问,PHP 不是已经内置了 mail() 函数了吗,为什么要用 PHPMailer 呢?mail() 函数功能并不完善,只能发送文本的 e-mail,并且 mail() 函数只能应用在 Linux 服务器(很多装在 Win 主机的 WP 博客用户注册收不到邮件也是这个原因),还有一个最大的问题就是使用 mail() 函数发送的邮件没有进行身份验证,很多邮件收不到使用 mail() 函数发送的邮件或者发送的邮件直接进入垃圾邮箱。 PHPMailer 主要功能 在邮件中包含多个 TO、CC、BCC 和 REPLY-TO。 平台应用广泛,支持的 SMTP 服务器包括 Sendmail、qmail、Postfix、Gmail、Imail、Exchange 等等。 支持嵌入图像,附件,HTML 邮件。 可靠的强大的调试功能。 支持 SMTP 认证。 自定义邮件头。 支持 8bit、base64、binary 和 quoted-printable 编码。 PHPMailer 的简单使用 这里使用最常用的 Gmail 来做介绍。请到这里查看其他 常用邮箱的 SMTP 地址和端口 。 require_once(

python 利用smtplib发邮件

北城以北 提交于 2019-12-07 02:19:09
#!/usr/bin/env python import smtplib TO = "to**@sina.com" FROM = "from**@qq.com" PSW = "**********" Serveraddr = "smtp.qq.com" msg = ["From: %s"% FROM, "To: %s"% TO, "Subject: just for test"] smtp = smtplib.SMTP() smtp.connect(Serveraddr, 25) smtp.login("from**", PSW) smtp.sendmail(FROM, TO, '\r\n'.join(msg)) print "Done" smtp.quit() 在基于互联网的应用中,程序经常需要自动地发送电子邮件。如:一个网站的注册系统会在用户注册时发送一封邮件来确认注册;当用户忘记登陆密码的时 候,通过邮件来取回密码。smtplib模块是python中smtp(简单邮件传输协议)的客户端实现。我们可以使用smtplib模块,轻松的发送电 子邮件。下面的例子用了不到十行代码来发送电子邮件: #coding=gbk import smtplib smtp = smtplib.SMTP() smtp.connect( "smtp.yeah.net" , "25" ) smtp

Postfix的使用与分析

我们两清 提交于 2019-12-06 09:14:31
Postfix简介: 在IBM的GPL协议下开发的MTA(邮件传输代理)软件,Postfix更快更容易管理,更安全,同时与sendmail保持兼容。 官网地址:http://www.postfix.org/ 邮件服务器发信原理图: postfix构建组成图: 要点: Postfix mail queue(Postfix队列): 1 maildrop queue maildrop queue 是通过Postfix sendmail 命令发送但是还未被Postfix pickup 服务加到postfix 主队列的邮件所处的队列 2 hold queue smtpd access 策略或者是cleanup的检查可以将部分邮件长时间的放置在hold queue队列 3 incoming queue 所有进入postfix队列的邮件都会由cleanup放置到incoming queue里。 4 active queue 准备发送的邮件队列 瓶颈:CPU、I/O 5 deferred queue 一些发送失败的邮件队列 Postfix收件流程图: Postfix基本配置: Postfix的配置项大概有100个,所以这还真是个问题 1、myorigin 参数指明发件人所处的域 2、mydestination 参数指明Postfix接收邮件中收件人所处的域 3、myhostname

zabbix设置邮件告警的两种方式(内部mail和脚本)

∥☆過路亽.° 提交于 2019-12-06 09:14:04
zabbix设置邮件告警的两种方式(内部mail和脚本) 2017年03月16日 18:03:51 阅读数:12121 说明: Zabbix监控服务端、客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常。 实现目的: 在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱。 具体操作: 以下操作在Zabbix监控服务端进行 备注:Zabbix监控服务端 操作系统:CentOS 主机名:zabbix.osyunwei.com 邮件报警有两种情况: 1、Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:root@localhost.localdomain),只能发送,不能接收外部邮件。 2、使用一个可以在互联网上正常收发邮件的邮箱账号(例如:xxx@163.com),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。 第一种:使用Zabbix服务端本地邮箱账号发送邮件 一、安装sendmail或者postfix yum install sendmail #安装 service sendmail start #启动 chkconfig sendmail on #设置开机启动 yum install postfix service

端口与服务对照表

纵然是瞬间 提交于 2019-12-06 04:38:50
2 端口:管理实用程序 3 端口:压缩进程 5 端口:远程作业登录 7 端口:回显 9 端口:丢弃 11 端口:在线用户 13 端口:时间 17 端口:每日引用 18 端口:消息发送协议 19 端口:字符发生器 20 端口: FTP 文件传输协议(默认数据口) 21 端口: FTP 文件传输协议(控制) 22 端口: SSH 远程登录协议 23 端口: telnet (终端仿真协议),木马 Tiny Telnet Server 开放此端口 24 端口:预留给个人用邮件系统 25 端口: SMTP 服务器所开放的端口,用于发送邮件 27 端口: NSW 用户系统 FE 29 端口: MSG ICP 31 端口: MSG 验证,木马 Master Paradise 、 HackersParadise 开放此端口 33 端口:显示支持协议 35 端口:预留给个人打印机服务 37 端口:时间 38 端口:路由访问协议 39 端口:资源定位协议 41 端口:图形 42 端口:主机名服务 43 端口: who is 服务 44 端口: MPM (消息处理模块)标志协议 45 端口:消息处理模块 46 端口:消息处理模块(默认发送口) 47 端口: NI FTP 48 端口:数码音频后台服务 49 端口: TACACS 登录主机协议 50 端口:远程邮件检查协议 51 端口: IMP

Network:POP3和SMTP

混江龙づ霸主 提交于 2019-12-06 02:24:55
简单来说: SMTP是用来寄信的:端口25 POP3是用来收信的:端口110 1.SMTP Simple Mail Transfer Protocal,简单邮件传输协议。 SMTP的一个重要特点是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。工作在两种情况下:一是电子邮件从客户机传输到服务器;二是从某一个服务器传输到另一个服务器。 SMTP是个请求/响应协议,它监听25号端口,用于接收用户的邮件请求,并与远端邮件服务器建立SMTP连接。 SMTP工作机制 SMTP通常有两种工作模式:发送SMTP和接收SMTP。具体工作方式为:发送SMTP在接到用户的邮件请求后,判断此邮件是否为本地邮件: 是——>直接投送到用户的邮箱; 否——>向DNS查询远端邮件服务器的MX纪录,并建立与远端接收SMTP之间的一个双向传送通道,此后SMTP命令由发送SMTP发出,由接收SMTP接收,而应答则反方面传送。一旦传送通道建立,SMTP发送者发送MAIL命令指明邮件发送者。如果SMTP接收者可以接收邮件则返回OK应答。SMTP发送者再发出RCPT命令确认邮件是否接收到。如果SMTP接收者接收,则返回OK应答;如果不能接收到,则发出拒绝接收应答(但不中止整个邮件操作),双方将如此重复多次。当接收者收到全部邮件后会接收到特别的序列,如果接收者成功处理了邮件,则返回OK应答。 2