Ruby Pony yandex.ru和mail.ru详细信息

Ruby Pony yandex.ru和mail.ru详细信息,ruby,sinatra,pony,Ruby,Sinatra,Pony,我正在Sinatra中创建一个表单,该表单将使用Pony gem在提交时向电子邮件发送数据。这是我目前的代码: post '/pemco' do Pony.mail( :from => params[:name] + "<" + params[:email] + ">", :to => '___@yandex.ru', :subject => params[:name] + " has contacted you", :body => pa

我正在Sinatra中创建一个表单,该表单将使用Pony gem在提交时向电子邮件发送数据。这是我目前的代码:

post '/pemco' do 

Pony.mail(
  :from => params[:name] + "<" + params[:email] + ">",
  :to => '___@yandex.ru',
  :subject => params[:name] + " has contacted you",
  :body => params[:message],

  :via => :smtp,
  :via_options => { 
    :address              => 'smtp.yandex.ru', 
    :port                 => '465', 
    :enable_starttls_auto => true, 
    :user_name            => '___', 
    :password             => '___', 
    :authentication       => :plain
  })
redirect '/' 
end
post'/pemco'do
小马邮件(
:from=>params[:name]+“”,
:to=>'\uu@yandex.ru',
:subject=>params[:name]+“已与您联系”,
:body=>params[:message],
:via=>:smtp,
:via_options=>{
:address=>'smtp.yandex.ru',
:端口=>'465',
:enable_starttls_auto=>true,
:user_name=>,
:password=>,
:身份验证=>:普通
})
重定向“/”
结束
我按下submit,响应暂停一段时间,然后我得到Net::ReadTimeout
文件:protocol.rb位置:rbuf_填充线中的rescue:158
错误。我做错了什么?

此代码适用于yandex.ru(您需要转到此处并允许所有操作):


同样的代码适用于mail.ru(通常您不需要做任何其他事情)。

在与
smtp.yandex.ru
通信时,肯定存在代理问题。。。你有权访问这个SMTP机器来检查那里的日志吗?@CDub,它终于与另一个邮件代理一起工作了,我认为yandex有一些特定的问题。你能告诉我你所说的SMTP机器是什么意思吗?这样我就知道如何解决这个问题了?谢谢你的帮助。我不知道Yandex是什么。。。这是服务吗?如果是这样,我想看看他们的文档,看看小马是否设置正确/需要调整。我会在谷歌上搜索一下,但如果你有直接的文档,那可能会有帮助。@CDub,那些是俄罗斯的搜索引擎,我只是通过将“to:and from:字段”设置为同一地址并将其中一个(yandex)中的“port”改为“25”,使它们都能工作,即使在docs()中说它需要端口465!也为mail.yandex.com工作过
post '/sent' do
  Pony.mail(
    :to => "_yourEmail_@yandex.ru",
    :from => "_sameYourEmail_@yandex.ru",

    :via => :smtp,
    :via_options => { 
      :address              => 'smtp.yandex.ru', 
      :port                 => '25', 
      :enable_starttls_auto => true, 
      :user_name            => '_yourUsername_', 
      :password             => '_yourPassword_', 
      :authentication       => :plain
    })
end