免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5661 | 回复: 4
打印 上一主题 下一主题

perl如何通过代理发邮件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-04-08 17:45 |只看该作者 |倒序浏览
目前想做一个短信监控功能,刚好139邮箱支持邮件达到通知,因此只要能用perl发邮件即可,在网上拷贝了一段代码,已经在本机测试能发邮件了,但是正式环境是通过代理上网的,通过代理我就不知道该如何处理,请各位大虾支招,谢谢!最好附上核心代码

论坛徽章:
0
2 [报告]
发表于 2011-04-08 19:46 |只看该作者
目前想做一个短信监控功能,刚好139邮箱支持邮件达到通知,因此只要能用perl发邮件即可,在网上拷贝了一段代 ...
fikong2005 发表于 2011-04-08 17:45



   要有一个SMTP Relay作为发信网关,然后就是Net::SMTP连网关发信了,无其他特殊。
用Postfix很容易就配置一个SMTP Relay。

注:真正的SMTP代理实现很复杂,不清楚有无开源软件,我知道的都是商业产品。
所以你只需配置一个普通的SMTP Relay就可以了。

论坛徽章:
0
3 [报告]
发表于 2011-04-08 22:41 |只看该作者
谢谢斑竹,根据你的提示,我先查查相关资料,不懂再请教您,谢谢!

论坛徽章:
0
4 [报告]
发表于 2011-04-18 22:04 |只看该作者
你得有一个可以发送邮件的服务器,比如 sendmail 或者通过 smtp代理来发送。

我有个小应用就是perl查询数据库发送邮件的,用的是 use Mail::Sender;  

发邮件部分:
$Mail::Sender::NO_X_MAILER = 1;
            open my $DEBUG , ">> /tmp/mail.log";
            my $sender = new Mail::Sender({smtp=>'localhost', from=>$em_conf{'from'}, charset=>'UTF-8'});
            ( ref ( $sender->MailMsg({
                    to=> $em_conf{'to'},
                    cc=> $em_conf{'cc'},
                    subject=>'有新消息',
                    msg=> $head,
                    debug=>$DEBUG }) )
               and print "send ok !\n" )
            or print $Mail::Sender::Error ;
            $sender->Close();

本地的 sendmail服务器,不用担心是不是在内网,我本机的也可以往外发邮件,不过大多数邮箱会把他扔到垃圾邮件里,不知道为什么,只能加入白名单才行。

论坛徽章:
0
5 [报告]
发表于 2014-03-03 15:04 |只看该作者
解决了吗?我也碰到类似问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP