让ecshop商城支持Gmail发信

2010-08-28 10:54:03来源:西部e网作者:

看到ecshop官方论坛里有很多关于此问题的提问,刚好有空,测试了一下邮箱服务器设置,163邮箱可以正常发送,gmail不能正常发送,自己修改了一下代码,就可顺利发送邮件,解决如下:

   1. 检查php是否支持openssh
      首先查看phpinfo,查看看PHP是否支持OpenSSL,看到下面的字样,就标示支持OpenSSL。一般现在的PHP都会默认支持的。
      OpenSSL support enabled
      OpenSSL Version OpenSSL 0.9.8b 04 May 2006

   2. 修改Discuz!代码
      vi includes/cls_smtp.php大概在93行处,
      把
      $this->connection = @fsockopen($this->host, $this->port, $errno, $errstr, $this->timeout);

      修改
      $this->connection = @fsockopen('ssl://'.$this->host, $this->port, $errno, $errstr, $this->timeout);

   3. 修改Gmail设置
      1.登录到您的 Gmail 帐户。
      2.点击任一 Gmail 页顶部的设置。
      3.点击橙色框邮件设置中的转发和 POP。
      4.选择针对所有邮件启用 POP 或者针对从现在起开始接收的邮件启用 POP。
      5.使用 POP 访问 Gmail 邮件后,选择您要对邮件采用的处理方式。

   4. 配置ecshop邮件设置
      登录ecshop后台,在左边导航栏,单击【系统设置】-》邮件服务器设置,在邮件服务选择采用其他的SMTP服务,其他的参考下图设置
\
      ecshop邮箱服务器设置

      然后按发送测试邮件,看到如下图代表发送成功
\
      现在就可以到邮箱就收看测试邮件了,

   5. 最后验证发送到yahoo,hotmail,163,qq邮箱都能快速收到

参考文件:

  1. Discuz!论坛支持Gmail发信
  2. 终于能够通过phpmailer使用gmail账号发送邮件了

原文地址:http://www.lihaixin.com/2008/10/ecshop-support-gmail-409.html

关键词:ecshopphp