欢迎来到天天文库
浏览记录
ID:24224856
大小:50.00 KB
页数:3页
时间:2018-11-13
《编写关于sendmail的cgi》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、编写关于SendMail的CGI>>教育资源库在UNIX主机上我们可以很轻易地通过编程来发送EMAIL,有时我们需要把从表单上得来数据整理后发送到一个信箱里,例如来访者的留言,在线申请。 在UNIX系统中通常会有一个sendmail程序用来发送EMAIL的,这是一个十分复杂的电子邮件系统,但我们在CGI编程中用它来发送EMAIL是十分简单的事,具体的操作是打开一个通道,把输出的信息作为sendmail这个程序输入代码如下:open(MAIL,"/usr/sbin/sendsendmailzjxyzXXXX.XXX");#注意其间的空格printMAI
2、L$msgcloseMAIL; 这样我们就可以把变量$msg中的内容通过服务器上的sendmail程序发送到地址为zjxyzXXXX.XXX的信箱中,要注意的是这只是一个简单的例子,还有一些细节的地方是需要讨论的。 在上述的程序中,邮件的接受者将会收到一封没有标题、没有回信地址的信件,要想发出去的信件像样一点,就必须在发送内容之前送出信头:请看以下例子:open(MAIL,"/usr/sbin/sendsendmailzjxyzXXXX.XXX");printMAIL"To:$toemailn";printMAIL"From:$fromemailn
3、";printMAIL"Reply-to:$fromemailn";printMAIL"Subject:$subjectn";printMAIL$msg;printMAIL"nn";closeMAIL; 我们看到的"To:"、"From:"、"Reply-to:"、"Subject:"就是用来标识信头的,它们邮件程序中不会被当作是信件的正文在处理,程序中的换行符号是必需的的。 在这里不得不提一下安全问题,有时我们发信的的地址是从表单上获得的,如果不严格检查从表单上获得的EMAIL地址的合法性,将会给恶意的攻击者带来攻击的机会,让你的CGI程序执行一
4、些破坏系统的操作,后果是非常严重的。简单举个例子说明:if($FORM{'mailto'}=~/(.*)(.*)/){。。。。。。。。。。。。。。。}>>>>这篇文章来自..,。
此文档下载收益归作者所有