??xml version="1.0" encoding="utf-8" standalone="yes"?>
]]>
]]>
]]>
SMTP命o命o说明
HELLOQdomainQ<CRLFQ识别发送方到接收SMTP的一个HELLO命o
MAILFROM:Qreverse-pathQ<CRLFQ<reverse-pathQؓ发送者地址。此命o告诉接收方一个新邮g发送的开始,q对所有的状态和~冲行初始化。此命o开始一个邮件传输处理,最l完成将邮g数据传送到一个或多个邮箱中?br />
RCPTTO:Qforward-pathQ<CRLFQ<forward-pathQ标识各个邮件接收者的地址
DATAQCRLFQ?br />
接收SMTP把其后的行为看作邮件数据去处理Q以QCRLFQ?QCRLFQ标识数据的l尾?br />
RESTQCRLFQ退?复位当前的邮件传?br />
NOOPQCRLFQ要求接收SMTP仅做OK应答。(用于试Q?br />
QUITQCRLFQ要求接收SMTPq回一个OK应答q关闭传输?br />
VRFYQstringQ<CRLFQ验证指定的邮箱是否存在Q由于安全因素,服务器多止此命令?br />
EXPNQstringQ<CRLFQ验证给定的邮箱列表是否存在Q扩充邮列表,也常止使用?br />
HELPQCRLFQ查询服务器支持什么命?br />
注:QCRLFQؓ回R、换行,ASCII码分别ؓ13?0Q十q制Q?br />
SMTP协议的每一个命令都会返回一个应{码Q应{码的每一个数字都是有特定含义的,如第一位数字ؓ2时表C命令成功;?表失败;3表没有完成。一些较复杂的邮件程序利用该特点Q首先检查应{码的首数字QƈҎ其值来军_下一步的动作。下面将SMTP的应{码列表如下Q?br />
应答码说?br />
501参数格式错误
502命o不可实现
503错误的命令序?br />
504命o参数不可实现
211pȝ状态或pȝ帮助响应
214帮助信息
220QdomainQ服务就l?br />
221QdomainQ服务关?br />
421QdomainQ服务未qAQ关闭传输信?br />
250要求的邮件操作完?br />
251用户非本圎ͼ{发向Qforward-pathQ?br />
450要求的邮件操作未完成Q邮׃可用
550要求的邮件操作未完成Q邮׃可用
451攑ּ要求的操作;处理q程中出?br />
551用户非本圎ͼ请尝试<forward-pathQ?br />
452pȝ存储不Q要求的操作未执?br />
552q量的存储分配,要求的操作未执行
553邮箱名不可用Q要求的操作未执?br />
354开始邮件输入,?."l束
554操作p|
CZQ?br />
telnet 172.16.10.250 25 --------------------使用 telnet 命oq接服务?25 端口
Trying 172.16.10.250 ... ---------------------正在q接服务?25 端口
Connected to 172.16.10.250 . -------------q接服务?25 端口成功
helo askcuix ----------------------------------- 向服务器标识用户w䆾Q该命o包含一个参敎ͼ即你的邮名。在RFC821中,HELO是一个可选择性命令,如果服务器不要求该命令的话,你可以把它忽略掉?br />
250 askcuix
mail from: <askcuix@domain.com> --------用mail from命o告诉服务器你惛_一邮?该命令以发信人的邮g地址为参数?br />
250 ok -------------------------------------------命o执行成功
rcpt to: <test@domain.com> ----------------该命令以收信人地址为参敎ͼ告诉服务器你惛_邮g发到收信人地址处。如果你惛_邮g发给多个收g人的话。你需要多ơ用RCPTTO命oQ对每个命oQ服务器都会q回代码?50的回应?br />
250 ok -------------------------------------------命o执行成功
data --------------------------------------------- 数据传输初始化。用DATA命o告诉服务器以下的内容为邮件正文。在你从服务器收C码ؓ354的回应后Q你可以发送邮件正文了?br />
354 go ahead --------------------------------- 开始传输数据。邮件按行发送,每行邮g以一个无回R的换行符l束?br />
From: askcuix@domain.com
To: test@domain.com
Date: Mon, 25 May 2008 14:24:27 +0800
Subject: test mail
Hi, test
This is a test mail, you don't reply it.
.
----------------------------------------------------数据内容,包括BASE64加密后的邮g内容, ?CRLF.CRLF l束数据传输。服务器收到q个标志后,׃立即向你q回一个代码ؓ250的回应以及该邮g的唯一ID受?br />
250 ok message accepted for delivery ----命o执行成功
quit ---------------------------------------------- l束会话Q也可以l箋发下一邮件?br />
221 Ok,close
Connection closed by foreign host .-------- 断开q接
]]>
对于server集群Q若session{状态保存在各个节点上,那么各个节点的session复制会极大的影响性能Q若采用SNAQ保持每个节点的无状态性,不再使用session来保持全局的状态,而是session直接攑֜数据库中Q在数据库前再加一层分布式CacheQ推荐用memcachedQ,q样可极大的提高性能Q当改变session中的对象Ӟ同步到cache和数据库?br />