<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>读思客 &#187; winmail</title>
	<atom:link href="http://www.dusike.com/tag/winmail/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dusike.com</link>
	<description>蔡文卫电子商务创业亲身经历与实践的总结分享，确保真实可用。</description>
	<lastBuildDate>Sat, 04 Sep 2010 17:58:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Windows上如现实现PHP邮件发送</title>
		<link>http://www.dusike.com/windows-phpmail/</link>
		<comments>http://www.dusike.com/windows-phpmail/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 15:19:40 +0000</pubDate>
		<dc:creator>LEO</dc:creator>
				<category><![CDATA[技术整理]]></category>
		<category><![CDATA[sendmail]]></category>
		<category><![CDATA[SOCKET]]></category>
		<category><![CDATA[winmail]]></category>
		<category><![CDATA[外域直接递送]]></category>

		<guid isPermaLink="false">http://www.dusike.com/?p=1273</guid>
		<description><![CDATA[这本来是一个很简单的问题，不值得专门写下来，可是最近亿枝客注册验证邮件总是发不出来，技术也一直没有搞定，我们就从网上找啊，找了半天，网上解决办法一大堆，就是解决不了问题，最后经过网上有些人提示，以及我们多次尝试，总算找到原因。
PHP在windows上实现邮件发送有三种方法，

通过 PHP 函数的 sendmail 发送(推荐此方式)
通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证)
通过 PHP 函数 SMTP 发送 Email(仅 Windows 主机下有效, 不支持 ESMTP 验证)

第一种最简单，我们也是用这种，只需要选择一下。但还是必须完成两个步骤：
1、在php.ini中找到相应位置，并进行相关设置
[mail function]
; For Win32 only.
SMTP = mail.yicike.com
smtp_port = 25
; For Win32 only.
sendmail_from = serv@yicike.com
2、这一步很重要，我们的问题就出在这里。到邮件服务器上进行设置，我们用的是winmail，设置界面如下：

其实就是将我们WEB服务器的IP设置为邮件服务器的信任主机。不过，我还设置了外域直接递送，如下：

第二种是利用SOCKET连接 SMTP 服务器发送(支持 ESMTP 验证) ，这个办法其实是很好，可能是因为PHP代码复杂的原因，大家都不推荐，参考DISCUZ设置如下：
设置 SMTP 服务器的地址：mail.yicike.com
设置 SMTP 服务器的端口：25
SMTP 服务器要求身份验证:   是/否
如果 SMTP 服务器要求身份验证才可以发信，请选择“是”
发信人邮件地址: ser@yicike.com
SMTP 身份验证用户名: ser@yicike.com
SMTP 身份验证密码: 123456
第三种，通过 PHP 函数 SMTP [...]]]></description>
			<content:encoded><![CDATA[<p>这本来是一个很简单的问题，不值得专门写下来，可是最近亿枝客注册验证邮件总是发不出来，技术也一直没有搞定，我们就从网上找啊，找了半天，网上解决办法一大堆，就是解决不了问题，最后经过网上有些人提示，以及我们多次尝试，总算找到原因。</p>
<p><strong>PHP在windows上实现邮件发送有三种方法，</strong></p>
<ul>
<li>通过 PHP 函数的 sendmail 发送(推荐此方式)</li>
<li>通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证)</li>
<li>通过 PHP 函数 SMTP 发送 Email(仅 Windows 主机下有效, 不支持 ESMTP 验证)</li>
</ul>
<p><strong>第一种最简单，我们也是用这种，只需要选择一下。但还是必须完成两个步骤：</strong></p>
<p>1、在php.ini中找到相应位置，并进行相关设置</p>
<p>[mail function]<br />
; For Win32 only.<br />
SMTP = mail.yicike.com<br />
smtp_port = 25</p>
<p>; For Win32 only.<br />
sendmail_from = serv<a href="mailto:serv@yicike.com">@yicike.com</a></p>
<p>2、这一步很重要，我们的问题就出在这里。到邮件服务器上进行设置，我们用的是winmail，设置界面如下：</p>
<p><a href="http://www.dusike.com/wp-content/uploads/2009/04/cbfcf548425d.jpg"><img style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" title="信任主机" src="http://www.dusike.com/wp-content/uploads/2009/04/thumb.jpg" border="0" alt="信任主机" width="244" height="121" /></a></p>
<p>其实就是将我们WEB服务器的IP设置为邮件服务器的信任主机。不过，我还设置了外域直接递送，如下：</p>
<p><a href="http://www.dusike.com/wp-content/uploads/2009/04/6a35f36604d3.jpg"><img style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" title="外域直接发送" src="http://www.dusike.com/wp-content/uploads/2009/04/thumb1.jpg" border="0" alt="外域直接发送" width="244" height="157" /></a></p>
<p><strong>第二种是利用SOCKET连接 SMTP 服务器发送(支持 ESMTP 验证) ，这个办法其实是很好，可能是因为PHP代码复杂的原因，大家都不推荐，参考DISCUZ设置如下：</strong></p>
<p>设置 SMTP 服务器的地址：mail.yicike.com</p>
<p>设置 SMTP 服务器的端口：25</p>
<p>SMTP 服务器要求身份验证:   是/否</p>
<p>如果 SMTP 服务器要求身份验证才可以发信，请选择“是”</p>
<p>发信人邮件地址: <a href="mailto:ser@yicike.com">ser@yicike.com</a></p>
<p>SMTP 身份验证用户名: <a href="mailto:ser@yicike.com">ser@yicike.com</a></p>
<p>SMTP 身份验证密码: 123456</p>
<p><strong>第三种，通过 PHP 函数 SMTP 发送 Email(仅 Windows 主机下有效, 不支持 ESMTP 验证)，参考DISCUZ界面设置</strong></p>
<p>SMTP 服务器:  mail.yicike.com</p>
<p>SMTP 端口: 25</p>
<p>这个方法我没有测试，估计与第一个的区别，在不需要进行PHP.INI的相关设置，直接把设置放到应用程序代码里，如果采用这种方式，建议进行第一种方法里提到的信任主机设置进行操作，否则我觉得不会成功的。
<div style="margin-top: 15px; font-style: italic">
<p><strong>原创文章，转载请注明：</strong> 转载自<a href="http://www.yicike.com/">亿赐客比较购物搜索网</a></p>
<p><strong>本文链接地址:</strong> <a href="http://www.dusike.com/windows-phpmail/">Windows上如现实现PHP邮件发送</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.dusike.com/windows-phpmail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
