PHP的一个完整SMTP类(解决邮件服务器需要验证时的问题)

smtp.php
<?php
class smtp
{
/* Public Variables */
var $smtp_port;
var $time_out;
var $host_name;
var $log_file;
var $relay_host;
var $debug;
var $auth;
var $user;
var $pass;
/* Private Variables */
var $sock;
/* Constractor */
function smtp($relay_host = "", $smtp_port = 25,$auth = false,$user,$pass)
{
$this->debug = FALSE;
$this->smtp_port = $smtp_port;
$this->relay_host = $relay_host;
$this->time_out = 30; //is used in fsockopen()
#
$this->auth = $auth;//auth
$this->user = $user;
$this->pass = $pass;
#
$this->host_name = "localhost"; //is used in HELO command
$this->log_file = "";
 
$this->sock = FALSE;
}
/* Main Function */
function sendmail($to, $from, $subject = "", $body = "", $mailtype, $cc = "", $bcc = "", $additional_headers = "")
{
$mail_from = $this->get_address($this->strip_comment($from));
$body = ereg_replace("(^|(
))(.)", "1.3", $body);
$header .= "MIME-Version:1.0
";
if($mailtype=="HTML"){
$header .= "Content-Type:text/html
";
}
$header .= "To: ".$to."
";
if ($cc != "") {
$header .= "Cc: ".$cc."
";
}
$header .= "From: $from<".$from.">
";
$header .= "Subject: ".$subject."
";
$header .= $additional_headers;
$header .= "Date: ".date("r")."
";
$header .= "X-Mailer:By Redhat (PHP/".phpversion().")
";
list($msec, $sec) = explode(" ", microtime());
$header .= "Message-ID: <".date("YmdHis", $sec).".".($msec*1000000).".".$mail_from.">
";
$TO = explode(",", $this->strip_comment($to));
if ($cc != "") {
$TO = array_merge($TO, explode(",", $this->strip_comment($cc)));
}
if ($bcc != "") {
$TO = array_merge($TO, explode(",", $this->strip_comment($bcc)));
}
$sent = TRUE;
foreach ($TO as $rcpt_to) {

时间: 2024-09-20 01:14:44

PHP的一个完整SMTP类(解决邮件服务器需要验证时的问题)的相关文章

PHP的一个完整SMTP类(解决邮件服务器需要验证时的问题)_php基础

smtp.php <?phpclass smtp { /* Public Variables */ var $smtp_port; var $time_out; var $host_name; var $log_file; var $relay_host; var $debug; var $auth; var $user; var $pass; /* Private Variables */ var $sock; /* Constractor */ function smtp($relay_ho

一个完整和全面的云服务器安全方案是什么样子的?

对于很多企业用户来来说,由于云服务器替代传统服务器承载了与企业生存发展息息相关的互联网业务,使得用户对云安全的疑问很大程度上聚焦在云服务器的安全上. 云服务器安全吗?这个问题不仅仅限定在看不到摸不着的虚拟化层面,让用户感触更为深刻的是--突然发现,之前很多常见和常用的安全防护系统,特别是"硬件盒子",都从采购名单上消失了.云计算环境对于安全防护的改变可见一斑. 这样一来,云服务器的安全该如何实现呢?   云服务器安全面临的威胁 正像云计算对于互联网业务革命性的改变一样,对安全的改变也是

python使用smtplib库和smtp.qq.com邮件服务器发送邮件(转)

使用qq的邮件服务器需要注意的两个地方主要是: 1.协议问题 使用465端口 SSL 协议 2.口令问题 出现SMTPAuthenticationError 主要的原因就是口令和帐号信息不对,这里我们使用qq服务器发送 需要先到邮箱里设置独立密码(必须), 然后开启    SMTP/POP3服务.然后用qq手机安全中心扫一扫会给一个授权码, 在代码中要填写的密码是这个授权码, 而不是邮箱密码! 下面贴个代码: #coding:utf8 from smtplib import SMTP_SSL f

[JAVA100例]046、使用SMTP协议接收邮件

import java.io.*; import java.net.*; /** * <p>Title: SMTP协议接收邮件</p> * <p>Description: 通过Socket连接POP3服务器,使用SMTP协议接收邮件服务器中的邮件</p> * <p>Copyright: Copyright (c) 2003</p> * <p>Filename: </p> * @version 1.0 */ cl

豆瓣2.0还你一个完整的生活方式

摘要: 如果说豆瓣1.0是大豆瓣的精简版的话,豆瓣2.0应该可以还你一个完整的生活方式了,1.0时它更侧重于是一个书影音的分类检索库,新版最大变化正是回归PC端那个完整的兴趣图谱依靠大 如果说豆瓣1.0是大豆瓣的精简版的话,豆瓣2.0应该可以还你一个完整的生活方式了,1.0时它更侧重于是一个书影音的分类检索库,新版最大变化正是回归PC端那个完整的兴趣图谱--依靠大豆瓣形形色色的UGC内容(可能是用户生产,也可能只是用户分享的)满足用户的兴趣消费. 跟很多内容型App一样,用户可事先个性化定制自己

五招轻松应对邮件服务器攻击

对邮件服务器的攻击形式多种多样:有利用缓冲区溢出漏洞进行的攻击,还有拒绝服务攻击和目录收集攻击等等.加固邮件服务器.使用邮件过滤工具.采用被管理的服务.安装集成软件等措施都可以从不同的侧面终止邮件服务器所受到的攻击.本文对上述这些措施都有具体描述. 加固邮件服务器,首先在它前面安装邮件过滤网络工具,或者使用被管理的邮件过滤服务将有助于减轻来自垃圾邮件发送者和其它途径的攻击. 随着针对最终用户和他们的桌面系统的攻击日渐增多,直接攻击邮件服务器的情况有所减少(虽然这种减少是相对的).但是,服务器仍然

如何在Ubuntu环境下搭建邮件服务器(一)

在这个系列的文章中,我们将通过使用 Postfix.Dovecot 和 openssl 这三款工具来为你展示如何在 ubuntu 系统上搭建一个既可靠又易于配置的邮件服务器. 在这个容器和微服务技术日新月异的时代,值得庆幸的是有些事情并没有改变,例如搭建一个 Linux 下的邮件服务器,仍然需要许多步骤才能间隔各种服务器耦合在一起,而当你将这些配置好,放在一起,却又非常可靠稳定,不会像微服务那样一睁眼有了,一闭眼又没了. 在这个系列教程中我们将通过使用 Postfix.Dovecot 和 ope

windows2003邮件服务器的设置

昨天晚上跟朋友讨论2003自带mail服务器的smtp认证的问题,所以今天自己做了一个来验证了一下. 一.安装POP3和SMTP服务组件 Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添加. 1.安装POP3服务组件 以系统管理员身份登录Windows Server 2003 系统.依次进入"控制面板→添加或删除程序→添加/删除Windows组件",在弹出的"Windows组件向导"对话框中选中"电子

邮件服务器是什么

  邮件服务器构成了电子邮件系统的核心.每个收信人都有一个位于某个邮件服务器上的邮箱(mailbox).Bob的邮箱用于管理和维护已经发送给他的邮件消息.一个邮件消息的典型旅程是从发信人的用户代理开始,游经发信人的邮件服务器,中转到收信人的邮件服务器,然后投递到收信人的邮箱中.当Bob想查看自己的邮箱中的邮件消息时,存放该邮箱的邮件服务器将以他提供的用户名和口令认证他.Alice的邮件服务器还得处理Bob的邮件服务器出故障的情况.如果Alice的邮件服务器无法把邮件消息立即递送到Bob的邮件服务