Ruby Action mailbox 收件不成功的问题

Sylor-huang · 2021年04月18日 · 最后由 Sylor-huang 回复于 2021年04月18日 · 315 次阅读

大家好,我现在是在测试搭建一个邮件服务系统,目前只需要能收到邮件就行,但是我上线 production 后,使用 126 邮箱去给这个服务器发送邮件时,提示一直在发送中,服务器也没有收到任何的请求,我怀疑是 nginx 配置不对,但是又不知道怎么去配置,没有找到类似的资料,请大家指点我下,非常感谢~

  • 服务器和域名都是阿里云的,域名解析应该都是正常的:

  • 可以 ping 的通 mail 子域名

  • 网站是采用前后分离的,且服务器里使用的是 docker 部署的

docker 开启的 端口为 443 和 587

docker 里的 rails 服务启动后端口为 3005

  • ActionMailbox 的配置为:
class ApplicationMailbox < ActionMailbox::Base
  routing /@udask.cn/i => :articles
  routing :all => :articles
end
  • 自定义的 ArticlesMailbox

    class ArticlesMailbox < ApplicationMailbox
    def process
    InMailboxJob.perform_later(mail)
    rescue => e 
    puts e
    end
    end
    
  • nginx 配置

user udask;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
  worker_connections 1024;
}
mail {
  server_name mail.udask.cn;
  auth_http 127.0.0.1:3005;
  ssl on;
  ssl_certificate ...;
  ssl_certificate_key ...;
  ssl_session_timeout 5m;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
  ssl_prefer_server_ciphers on;
}
http {
  ....
}

请大家指点我下,非常感谢~

邮件服务器是啥?不是只有 web 服务就够了。

邮件服务器例如本地的 Postfix,第三方的 Mailgun。

@Rei 其实我就是想创建一个 web,然后在这上面可以批量创建邮箱,且这些邮箱能收到邮件。这个用 rails 的 action mailbox 应该是可以实现的吧?我现在只是在本地用 rspec 测试了下,是可以了,但是上线后,就接收不到了,没有找到类似的资料...如果您那有时间的话,可以麻烦你指点下的吗?非常感谢~~ Mailgun 我也去看下呢

action mailbox 前端还需要邮件服务器处理 smtp 协议。看 https://guides.rubyonrails.org/action_mailbox_basics.html#configuration

@Rei 嗯嗯,好的,应该是还需要使用第三方的服务的。非常感谢~

需要 登录 后方可回复, 如果你还没有账号请 注册新账号