试运行~~~~
针对“虚拟主机”配置您论坛的“邮件发送”(小品)
上一篇 /
下一篇 2006-04-21 16:45:11 / 天气: 晴朗
/ 心情: 高兴
/ 置顶(3)
/ 个人分类:Discuz!4.1插件
一直以来,论坛发送邮件都有问题,今天,在测试生日发送邮件的时候出现发不出的问题,经过借鉴高手的心得和自己的几次测试终于解决了!
QUOTE:
注意:下面这样的配置发送方法应该只适用于单发或者少量发送邮件,如果群发有可能会被邮件服务器认为是“垃圾邮件”而阻止、拒绝。
关于这个问题目前“hydeist”兄弟正在进行测试,梢后报结果给大家
下面的设置主要是针对“虚拟主机”的用户。
一般的虚拟主机都没有邮箱配置,即使是配置了所谓的企业邮箱也多数用不了!所以,比较简单的办法就是利用免费邮箱的“转发”功能作为中转,将论坛发送的邮件经过中转邮箱发送到目的地邮箱!
以前童虎有个关于这方面的说明,但可能还是有些人看不懂,所以,我才在童虎文章的基础上进一步详细说明!
现在,我用个实例来说明整个设置的详细经过!
第一步:申请一个免费邮箱作为“中转”邮箱
免费邮箱有好多,不过我个人认为网易的二种免费邮箱 163.com 或者 126.com 是比较适合做中转的!
QUOTE:
这里我申请的邮箱资料如下:
邮箱名: dz@163.COM
邮箱用户名: dz
邮箱密码: 123456
SMTP: SMTP.163.COM
第二步:配置 config.inc.php
这个步骤是个关键步骤,是设置你论坛发送的邮件是否可以发送到中转邮箱!所以,应该将:
QUOTE:
$adminemail = 'admin@your.com';
红色部分的内容填上你的中转“邮箱名”。那按上面我的邮箱的资料我应该填成这样:
$adminemail = 'dz@163.com';
很多人都是在配置这里的时候模糊了,所以不成功!
第三步:配置 mail_config.inc.php
这里分二步;
QUOTE:
1、配置邮件发送方式!
2、配置已经选择好的邮件发送方式的属性资料!
1、配置邮件发送方式!
mail_config.inc.php 内的邮件发送方式有三个可以选择的项目,分别是:
a、不发送。
b、通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证)
c、通过 PHP 函数 SMTP 发送 Email(仅 win32 下有效, 不支持 ESMTP)
在这里,我们选择“b”。那么填写就应该是下面这个样子:
$mailsend = 2;
2、配置已经选择好的邮件发送方式的属性资料!
既然选择了
$mailsend = 2;
那么我们就应该配置“2”的属性。默认是这个样子的:
} elseif($mailsend == 2) { // send via Discuz! ESMTP interface
// 通过 Discuz! SMTP 模块发信
$mailcfg['server'] = 'smtp.21cn.com'; // SMTP host address
// SMTP 服务器
$mailcfg['port'] = '25'; // SMTP 端口, 默认不需修改
// SMTP port, leave default for most occations
$mailcfg['auth'] = 1; // require authentification? 1=yes, 0=no
// 是否需要 AUTH LOGIN 验证, 1=是, 0=否
$mailcfg['from'] = 'Discuz <myaccount@21cn.com>'; // mail from (if authentification required, do use local email address of ESMTP server)
// 发信人地址 (如果需要验证,必须为本服务器地址)
$mailcfg['auth_username'] = 'myaccount'; // username for authentification
// 验证用户名
$mailcfg['auth_password'] = 'password'; // password for authentification
// 验证密码
这么多的选项里我们一般只需配置四个选项中的红色字部分即可,按上面的资料应该这样填写:
QUOTE:
这里填写你用于中转的邮箱的 SMTP
原始:$mailcfg['server'] = 'smtp.21cn.com';
填写后:$mailcfg['server'] = 'smtp.163.com';
如果你不知道你邮箱的 SMTP,你可以在你的邮箱的“帮助”里找到答案。
QUOTE:
这里填写你用于中转的“邮箱名”。
原始:$mailcfg['from'] = 'Discuz <myaccount@21cn.com>';
填写后:$mailcfg['from'] = ' 测试邮箱<dz@163.COM>';
这里需要说明下:单纯的“邮箱名”是没有“<>”的,但如果你需要在接收到邮件的时候,在发件人那栏出现你或者是论坛名称的话,就需要加上“<>”并且,将你或者是你论坛的名称写在前面。
QUOTE:
这里填写你用于中转的邮箱的“邮箱用户名”。
原始:$mailcfg['auth_username'] = 'myaccount';
填写后:$mailcfg['auth_username'] = 'dz';
QUOTE:
这里填写你用于中转的邮箱的“邮箱密码”。
原始:$mailcfg['auth_password'] = 'password';
填写后:$mailcfg['auth_password'] = '123456';
OK!到这里你就可以将这些已经填写好的文件传到服务器上去了!
接下来我们需要进行的就是测试了!怕大家已经删除了 utilities 文件,所以特发个上来。
将附件解开后得到的 testmail.php 文件进行配置,然后放到你论坛的目录。这个文件是测试邮件发送的文件。你也可以在官方下载的 Discuz!_4.1.0_SC_GBK/utilities 内找到这个文件。
按上面的资料配置如下:
QUOTE:
这里填写你的中转“邮箱名”
$from = 'dz@163.com';
QUOTE:
这里填写任意一个你可以收到邮件的“邮箱名”作为测试,看是否可以收到论坛发来的邮件。
$to1 = '这里填写任意的“目的地邮箱名”';
填写好以后上传服务器。!
OK!浏览器输入 http://你的域名/论坛目录/testmail.php 回车,去“目的地邮箱”看看是否已经收到??
如果收到主题名为“我”的邮件,那就恭喜你啦!
我的测试是用 163.com 作中转,用雅虎中国作“目的地邮箱”,收信的速度简直快到…………这里发 YAHOO 马上就收到!
最后祝诸位快乐无比!
[ 本帖最后由 M55 于 2006-4-21 16:00 编辑 ]
附件:
testmail.rar (2006-4-21 05:40, 811 bytes)
该附件被下载次数 13
相关阅读:
- 【公告】决定把X-Space作为自己的“家” (mxpx, 2006-4-18)
- 文件操作详谈 (mysnake886, 2006-4-21)
- PHP重定向 (mysnake886, 2006-4-21)
- 夜(个人感想) (mysnake886, 2006-4-21)
- 【经典】女人50万年的进化 (mxpx, 2006-4-21)
- 新地方,看一看 (mfd, 2006-4-21)
- 將評分及管理選項填寫評分理由部份顯示更清晰 (juse, 2006-4-21)
- test (gary, 2006-4-21)
- 图文日志BUG (138, 2006-4-21)
- 图文日志BUG (138, 2006-4-21)
导入论坛
收藏
分享给好友
管理
举报
TAG:
情感绿洲