Ruby Mail gem,如何编写邮件消息脚本

我在具有SE Linux许可和IPtables关闭的CENTOS 5 VM上安装了testmail.rb:

require 'rubygems'
require 'mail'

options = { :address              => "mail.domain.com",:port                 => 466,:domain               => 'otherdomain.com',:user_name            => 'somedude@domain.com',:password             => 'topsecret',:authentication       => 'plain',:enable_starttls_auto => true  }
 Mail.defaults do
  delivery_method :smtp,options
end

 mail = Mail.new do
      from 'somedude@otherdomain.com'
        to 'admin@domain.com'
   subject 'This is a test email'
      body File.read('body.txt')
 end

puts mail.to_s

运行脚本时的结果如下:

Date: Tue,30 Nov 2010 12:12:58 -0500
From: somedude@otherdomain.com
To: admin@domain.com
Message-ID: <4cf5309a2f074_284015c5c4de91b8270b2@apvdbs03.3rdomain.local.mail>
Subject: This is a test email
Mime-Version: 1.0
Content-Type: text/plain;
 charset=UTF-8
Content-Transfer-Encoding: 7bit

test!

“测试!”是body.txt的内容.

没有电子邮件到达发送到帐户.我们从发送到域管理员获得的smtp设置.我使用telnet成功地在未加密的端口(25)上向域发送电子邮件但是没有得到加密端口(466)的响应,可能是因为我的telnet会话未加密?

有什么方法可以看到脚本执行过程中发生的故障排除?

更新:
尝试重定向:> log.log 2>& 1,但没有提供任何其他信息.

解决方法

你错过了实际发送的行.尝试添加

mail.deliver!

到你的脚本结束.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...