linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > php >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·PHP生成静态页面的一些经验
·PHP无限分类与树型论坛的实现方
·php5学习笔记
·入门级PHP程序员面试题
·PHP 和 MySQL初学入门
·PHP入门速成
·vim的代码折叠
·文件下载统计php编程代码
·如何建立自己的新闻发布系统
·织梦CMS中文转换拼音函数研究
·Windows下Apache+Tomcat+MySQL
·PHP初学者头疼问题总结
·Cookie及其使用详细介绍
·生成sessionid和随机密码的例子
·使用无限生命期Session的方法
最新文章
·PHP入门速成
·用php实现广告轮播
·Zend Optimizer 问题浅析
·功能强大的CGI语言----PHP3
·用Session对Web页面进行保护
·PHP--进行模块化设计
·如何将PHP的结果输出到非PHP页
·如何开发一个虚拟域名系统
·PHP4调用自己编写的COM组件
·简单的页面缓冲技术(三)
·简单的页面缓冲技术(二)
·简单的页面缓冲技术(一)
·用Socket发送电子邮件(二)
·用Socket发送电子邮件(一)
·PHP/MySQL 购物车
Google
 
用Socket发送电子邮件(二)
[ 作者:  加入时间:2008-02-14 15:06:25  来自:Linux联盟收集整理 ]
SMTP的基础 NTELinux联盟
    基于TCP/IP的因特网协议一般的命令格式都是通过请求/ 应答方式实现的,采用的都是文本信息,所以处理起来要容易一些。SMTP是简单邮件传输协议的简称,它可以实现客户端向服务器发送邮件的功能。所以下面所讲的命令是指客户端向服务器发出请求指令,而响应则是指服务器返回给客户端的信息。 NTELinux联盟
   NTELinux联盟
    SMTP分为命令头和信息体两部分。命令头主要完成客户端与服务器的连接,验证等。整个过程由多条命令组成。每个命令发到服务器后,由服务器给出响应信息,一般为3 位数字的响应码和响应文本。不同的服务器返回的响应码是遵守协议的,但是响应正文本则不必。每个命令及响应的最后都有一个回车符,这样使用fputs()和fgets()就可以进行命令与响应的处理了。SMTP的命令及响应信息都是单行的。信息体则是邮件的正文部分,最后的结束行应以单独的"."作为结束行。 NTELinux联盟
   NTELinux联盟
    客户端一些常用的SMTP指令为: NTELinux联盟
   NTELinux联盟
  HELO hostname: 与服务器打招呼并告知客户端使用的机器名字,可以随便填写 NTELinux联盟
  MAIL FROM: sender_id : 告诉服务器发信人的地址 NTELinux联盟
  RCPT TO: receiver_id : 告诉服务器收信人的地址 NTELinux联盟
  DATA : 下面开始传输信件内容,且最后要以只含有.的特殊行结束 NTELinux联盟
  RESET: 取消刚才的指令,从新开始 NTELinux联盟
  VERIFY userid: 校验帐号是否存在(此指令为可选指令,服务器可能不支持) NTELinux联盟
  QUIT : 退出连接,结束 NTELinux联盟
    服务器返回的响应信息为(格式为:响应码+空格+解释): NTELinux联盟
   NTELinux联盟
  220 服务就绪(在socket连接成功时,会返回此信息) NTELinux联盟
  221 正在处理 NTELinux联盟
  250 请求邮件动作正确,完成(HELO,MAIL FROM,RCPT TO,QUIT指令执行成功会返回此信息) NTELinux联盟
  354 开始发送数据,结束以 .(DATA指令执行成功会返回此信息,客户端应发送信息) NTELinux联盟
  500 语法错误,命令不能识别 NTELinux联盟
  550 命令不能执行,邮箱无效 NTELinux联盟
  552 中断处理:用户超出文件空间   Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息