让Hostmonster的网站程序也能发送邮件

用端口26发送邮件
服务器君一共花费了858.352 ms进行了5次数据库查询,努力地为您提供了这个页面。
试试阅读模式?希望听取您的建议

HostMonster网站程序一般无法发送邮件,因为端口25阻塞了。

许多ISP屏蔽了端口25的使用,而该端口是用来发送邮件的。他们这样做是为了减少垃圾邮件的发送量。所有通过Internet发送的 e-mail 都要通过端口25, 该通道用来进行e-mail 客户端和 e-mail服务器之间的通信。

虽然端口25屏蔽很可能成为一个工业标准,但是过滤器会给 e-mail服务器带来麻烦,导致正常的邮件被当成垃圾邮件处理。

端口25屏蔽可以帮助网络服务供应商们阻止垃圾信息在他们的网络上的传播,但是这样的话,会给那些有需求使用e-mail服务器发送邮件的人带来麻烦,这些服务器不仅仅是他们自己的ISP提供的。

屏蔽端口25的网络服务供应商要求使用他们的SMTP服务器,而不是远程SMTP服务器或自己电脑上运行的SMTP服务器。

还好的是,HostMonster开放了26端口给SMTP服务器。

我们先到 CPanel -> Email Accounts,创建一个邮件账户。

然后到 CPanel -> webmail -> Configure Mail Client,可以得到下面配置信息:

Manual Settings

Mail Server Username: nowamagic+nowamagic.net
Incoming Mail Server: mail.nowamagic.net
Incoming Mail Server: (SSL) host.hostmonster.com
Outgoing Mail Server: mail.nowamagic.net (server requires authentication) port 26
Outgoing Mail Server: (SSL) host.hostmonster.com  (server requires authentication) port 465
Supported Incoming Mail Protocols: POP3, POP3S (SSL/TLS), IMAP, IMAPS (SSL/TLS)
Supported Outgoing Mail Protocols: SMTP, SMTPS (SSL/TLS)

提示:smtp服务器是 mail.yourdomain.com,端口是26,帐号是你的邮箱的完整地址 xxxx@xxx.com,密码就是你的邮箱密码。按照提示设置好,就可以使用hostmonster主机提供的SMTP服务了。

示例程序如下,程序使用了PHPmailer库:

function mailto($nickname, $address)
{
	$this->load->helper('url');
	date_default_timezone_set('PRC'); 
	include_once("application/controllers/class.phpmailer.php");
	
	$mail = new PHPMailer(); // defaults to using php "mail()"
	
	$mail->IsSMTP(); // telling the class to use SMTP
	$mail->IsHTML(true);
	$mail->Host       = "mail.nowamagic.net"; // SMTP server
	$mail->SMTPDebug  = 1;                     // enables SMTP debug information (for testing)
											   // 1 = errors and messages
											   // 2 = messages only
	$mail->SMTPAuth   = true;                  // enable SMTP authentication
	$mail->Host       = "mail.nowamagic.net"; // sets the SMTP server
	$mail->Port       = 26;                    // set the SMTP port for the GMAIL server
	$mail->Username   = "nowamagic@nowamagic.net"; // SMTP account username
	$mail->Password   = "********";        // SMTP account password
	
	$mail->CharSet="utf-8"; 
	
	//$body = file_get_contents('application/views/nmra/register.html');
	//$body = preg_replace('/\\\\/','', $body); //Strip backslashes
	$body = '<body style="margin: 10px;">';
	$body .= '<div style="width: 640px; font-family: Arial, Helvetica, sans-serif; font-size: 14px; ">';
	//$body .= '<div align="center"><img src="images/phpmailer.gif" style="height: 90px; width: 340px"></div>';
	$body .= '<p>'.$nickname.',您好。</p>';
	$body .= '请点击以下链接验证您的邮箱,请注意域名为nowamagic.net:<a href="'.base_url().'accounts/activation/" target="_blank">'.base_url().'accounts/activation/</a>';
	$body .= '<p>顺祝工作学习愉快,生活舒心。</p>';
	$body .= '</div></body>';
	//echo $body;

	$mail->AddReplyTo("nowamagic@163.com","Gonn");
	$mail->SetFrom('nowamagic@163.com', 'Gonn');
	$mail->AddReplyTo("nowamagic@163.com","Gonn");
	$mail->AddAddress($address, $nickname);
	
	$subject = "收到来自简明现代魔法的邮件";
	$mail->Subject = "=?UTF-8?B?".base64_encode($subject)."?=";
	// optional, comment out and test
	$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; 
	$mail->MsgHTML($body);
	
	//$mail->AddAttachment("images/phpmailer.gif");      // attachment
	//$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment
	
	if(!$mail->Send()) {
		//echo "Mailer Error: " . $mail->ErrorInfo;
	} 
	else {
		//echo "Message sent!";
	}
}

OK,现在网站程序就能发邮件了。但是并非所有邮箱都能收到,这里测试的话,163,gmail等都能正常收到,而qq则收不到。如果你有更好的方法,请告知我,感谢。

本文地址:http://www.nowamagic.net/librarys/veda/detail/1946,欢迎访问原出处。

不打个分吗?

转载随意,但请带上本文地址:

http://www.nowamagic.net/librarys/veda/detail/1946

如果你认为这篇文章值得更多人阅读,欢迎使用下面的分享功能。
小提示:您可以按快捷键 Ctrl + D,或点此 加入收藏

大家都在看

阅读一百本计算机著作吧,少年

很多人觉得自己技术进步很慢,学习效率低,我觉得一个重要原因是看的书少了。多少是多呢?起码得看3、4、5、6米吧。给个具体的数量,那就100本书吧。很多人知识结构不好而且不系统,因为在特定领域有一个足够量的知识量+足够良好的知识结构,系统化以后就足以应对大量未曾遇到过的问题。

奉劝自学者:构建特定领域的知识结构体系的路径中再也没有比学习该专业的专业课程更好的了。如果我的知识结构体系足以囊括面试官的大部分甚至吞并他的知识结构体系的话,读到他言语中的一个词我们就已经知道他要表达什么,我们可以让他坐“上位”毕竟他是面试官,但是在知识结构体系以及心理上我们就居高临下。

所以,阅读一百本计算机著作吧,少年!

《Python在Unix和Linux系统管理中的应用》 Noab Gift (作者), Jeremy M.Jones (作者)

《Python在Unix和Linux系统管理中的应用(影印版)》作者们还构建了一个可以免费下载的Ubuntu虚拟机。该虚拟机包含了这《Python在Unix和Linux系统管理中的应用(影印版)》的源代码,还可以用来运行书中的实例,包括SNMP、IPython、SQLAlchemy和许多其他工具。《Python在Unix和Linux系统管理中的应用》展示了Python语言如何提供一种更加高效的方式来处理Unix和Linux服务器管理工作中的各种任务。《Python在Unix和Linux系统管理中的应用(影印版)》的每一章都会提出一个特定的管理问题,例如并发或数据备份,然后通过实际的例子提供基于Python的解决方案。

更多计算机宝库...